What is Blockchain?

March 18th, 2016 | W. Ian O'Byrne
Image Credit

One of the buzzwords that has come up a lot over the last year is Blockchain. In this post I’ll provide an easy to follow guide to help you understand blockchain, and think about possible uses in the futures of education, credentialing, and assessments. This primer is meant to be an easy starter for people just starting to wrap their heads around blockchain. In future pieces I may dig in a bit deeper…as I wrap my head around it. 🙂

Blockchain is a distributed database that first came to prominence as the backbone of Bitcoin. Blockchain is a public ledger of transactions that is composed of two parts: Peer-to-peer network, and a decentralized, distributed database.

Peer-to-peer (P2P) network

A P2P network is an architecture of computers or networks that shares tasks, work, or files between peers. Peers are partners in the network with equal privileges and powers in the environment. In a P2P network, each computer or user is called a “node” and collectively they comprise a P2P network of nodes.

An easy way to think about P2P networking and nodes is through early file sharing services like Napster. Users could log in to Napster and share audio files stored on their computers. In turn, they would have access to audio files available on other nodes in the P2P network. If/when there are duplicate copies of audio files available, the P2P network would split up and share these files across the nodes. If you wanted to download a specific audio file, the P2P network would look across the nodes, and pull in parts of that audio file from the various nodes that had it..and compile one copy of the audio file for you.

The P2P network in Blockchain consists of a series of computers and servers that each act as a node in the network. The blue dots below represent nodes in the P2P network.

When a new message enters the network, the information in that message is propagated between all of the nodes of the P2P network. They all eventually get the same information. The information is usually encrypted and private. There is no way to know identities of who added or removed information to the network. In the graphic below, the red lines represent new information entering, and spreading throughout the network.

When new information enters the network, this information is then propagated, or distributed across the nodes in the network. The figure below represents this by showing new information in yellow spreading across the nodes in the network.

The entire network is decentralized, which means that there is no one point of failure in the system. If a node leaves the network, the other nodes already have exact copies of all of the information shared. If a new node enters the network, the initial nodes immediately create copies of their information on the new member of the network. The figure below details the network propagating information to the new node.

Decentralized, distributed database

The second element of the blockchain is the database of transactions. This database is the “information”was we discussed sharing in the images above detailing the P2P network. The first element in the database is called the genesis block. The genesis block is hardcoded into the software and exists as an empty state, that is to say that it has no real value other than indicating the beginning. The genesis block may contain information about the rules or guidelines for the remaining database.

The genesis block is block zero, or the first block. After that, the database is formed by a series of blocks that link together to form a chain. This is where we get the naming of the blockchain technology. The blocks in the chain each contain information or transactions. As you add transactions, this information is stacked in the block according to the time it was presented. The transactions contain anonymized information about who added or removed value in the transaction, as well as date and time. This combination of information and time creates a ledger documenting value or other resources in the database.

After the transactions have been stacked in the block, a signature or “hash” is added to the bottom of the block. The hash links to the previous block in the chain. These hashes form the links between the chains. The hashes link all of the way back to the genesis block. The hash includes the number of the block, and the number of the next block in the chain. The hash also includes the date and time it was signed, as well as how many transactions are included in the block. The signature, or hash, shows up as a cryptographic, or encrypted hexadecimal key.

At this point, new blocks and transactions are added to the chain. Each block contains a series of transactions or comments. These transactions are followed by a hash in the block. As a reminder, each hash serves as a link to the other blocks in the chain, and indicates their order.

Wrapping up

Blockchain is a distributed database that maintains an expanding ledger of data and records. This ledger is encrypted and protects against tampering, revision, and deletion. The time-stamped blocks that make up the blockchain contain hashes that link and indicate important information in the database. The mixture of transactions, blocks, and decentralization of data in the ledger provides tremendous opportunities for many fields.

For a concise video overview of the potential of blockchain and the connections between these elements, please review the following video.

As we continue to investigate the intersection between blockchain technologies and education, there will many possibilities that present themselves. I think it’s important that we fully understand the technology that forms the backbone of this new ledger.


Like what you see here? Sign up for my newsletter to stay on top of weekly events in literacy, technology, & education.

Originally published at W. Ian O’Byrne.

Avoiding pointless (Open Badges-related) blockchain projects

March 3rd, 2016 | Doug Belshaw
Image CC BY-NC-ND Clayton Shonkwiler

A post entitled Avoiding the pointless blockchain project was brought to my attention recently. It provides a useful jumping-off point for the BadgeChain project in terms of thinking through Open Badges using a blockchain.

The author of the post, Gideon Greenspan, states that all of the following should be true for projects built upon a blockchain:

  1. The database — the project is one that requires some form of shared database
  2. Multiple writers — more than one person or organisation needs the ability to write to that database
  3. Absence of trust — the people or organisations writing to the database don’t necessarily trust one another
  4. Disintermediation — every person or organisation that has ‘write’ access has the need to verify transactions (rather than go through a trusted intermediary)
  5. Transaction interaction — there are benefits to the project in being able to see transactions that are in some way ‘linked’
  6. Set the rules — there are constraints on the type of transactions for which the project blockchain can be used
  7. Pick your validators — you know what model you’re going to employ to resolve conflicts — e.g. “(a) one or more nodes controlled by a single organization, (b) a core group of organizations that maintain the chain, or (c) every node on the network.”
  8. Back your assets — there is agreement on the types of assets being moved around, and what exchange value they have in the ‘real world’

As Greenspan states in his conclusion:

[I]f your project does not fulfill every single one of these conditions, you should not be using a blockchain. In the absence of any of the first five, you should consider one of: (a) regular file storage, (b) a centralized database, (c) master–slave database replication, or (d) multiple databases to which users can subscribe.

And if you do fulfill the first five, there’s still work to do. You need to be able to express the rules of your application in terms of the transactions which a database allows. You need to be confident about who you can trust as validators and how you’ll define distributed consensus. And finally, if you’re looking at creating a shared ledger, you need to know who will be backing the assets which that ledger represents.

Let’s come back to Open Badges and how they might work using a blockchain using Greenspan’s helpful list.

  1. The current way Open Badges work does not require a shared database. In fact, this is pretty much by design so that they can be stored anywhere. However, as I wrote in a recent article for DML Central, there are at least two use cases for using a blockchain with badges. The most obvious of these is for extremely high-stakes credentials such as university degrees and credentials that, for example, get you access into a country.
  2. Instead of every university or issuing body having its own blockchain, there are advantages of them pulling together in creating a single, open blockchain for Open Badges that could be written to by anyone who meets certain criteria. These could be negotiated and laid out by the Badge Alliance.
  3. There is no reason for issuing organisations to trust one another simply based on the fact that they are all issuing Open Badges. So this condition looks like it is met.
  4. The whole point of Open Badges is that they are distributed and remove gatekeepers. So it makes no points to re-introduct gatekeeprs. Distintermediation seems baked into the Open Badges Infrastructure (OBI).
  5. Badges represent credentials that often relate to knowledge, skills, and behaviour. Showing progression through such credentials is useful, and therefore the ‘transaction interaction’ referenced is a desirable feature of the system.
  6. Although blockchains can be used to represent a whole swathe of data types, an Open Badges blockchain would likely limit transactions to those containing information relevant to the Open Badges specification.
  7. The options for validation would need to be discussed with the founding members of the blockchain project. However, of Greenspan’s options, it’s likely that the validators would be option (c) — i.e. all the nodes on the network.
  8. Talking about exchange value when it comes to Open Badges is an interesting problem to solve. There’s been a lot of talk about ‘levelling’ badges, so people are aware of equivalencies. However, for every pragmatic person wanting this, there’s an idealist (like me) not wanting to lock things down. This is a problem that can be solved, and probably most easily done if a project such as the proposed blockchain project gets the founding members to agree on a taxonomy.

There’s certainly more work to be done here, but I think that we’re on the right track with BadgeChain. The eight points set out by Greenspan seem to be met by the project as it relates to Open Badges.

If you’re a funder interested in the potential of Open Badges using blockchain technology, please get in touch with us!


Originally published at discours.es on March 3, 2016.