Outline of a White Paper

This is my first attempt to write a white paper for a hypothetical blockchain project. Actually, it is only an outline of a white paper. This blockchain project is about building a blockchain school system. 

I guess we need to conduct a feasibility study before we start planning any blockchain project. Here, I used a methodology called the CATWOE analysis. It can be applied to any new projects.

CATWOE Analysis of  Building a Blockchain School

Abstract

CATWOE is an acronym that stands for Customers – Actors – Transformation process – Worldview – Owners – Environmental constraints. It’s a simple analytical approach to find solutions to problems. The CATWOE Analysis makes it possible to identify problem areas, look at what an organization wants to achieve, and which solutions can influence the stakeholders. The analysis uses thought methodology from multiple perspectives. It is especially useful for an organization that wants to implement a new project that involves a drastic transformation process. The implementation of the blockchain technologies in a school curriculum qualifies for such transformation. Therefore, there is a need to understand the problems and try to find solutions before we proceed with the project implementation

C – Clients

They are the users and stakeholders of a system. In this case, they are the students, teachers, parents, the management staff etc. They will benefit if the change is positive and the problems are solved. However, they may stand to lose or suffer if the change is negative and new problems are created. Therefore, we need to find out whether the blockchain technologies can solve current problems and bring positive changes in the school system.

A-Actors

They are usually the employees within an organization, in this case, teachers and support staff. They are responsible for carrying out work and involved with the implementation of the blockchain system. Therefore, we need to conduct an inventory analysis to know their qualities, capabilities and interests to get a clear picture of their impact on the process or system. We may need to hire new employees or retrain the current ones to ensure competency with respect to blockchain implementation.

T – Transformation Process

Transformation is the change that a system or process leads to. It’s the process in which input (including raw materials, man-hours, knowledge) is transformed by an organization into output (such as a final product or solution to a problem).

To implement the blockchain system, we need to know in advance what kinds of input requires and forecast what the end result (output) will be. Besides that,  we have to carefully consider the intermediate steps. In this case, the input is the blockchain technologies and the output could be a system that churns out an intelligent pool of young entrepreneurs that thrive on co-creating and co-sharing.

W – Worldview

Stakeholders often have different ideas and approaches to the same issue, with other conflicting interests. The goal of the CATWOE analysis is to make their different viewpoint explicit and try to achieve a methodology stand. In this project, we need to achieve consensus among the stakeholders that involve the students themselves, we don’t want to force the ideas on them. Besides that, some teachers might have fear in carrying out the transformation as they have to learn new technologies. Parents would be very concern with the implementation of the blockchain technologies because it will bring profound impacts on their children, either positively or negatively.

In addition, the government might want to regulate the project to ensure it complies with the national education policies and philosophies. On the other hand, business leaders may want to look for financial gains by sponsoring the project or they may refuse to support the project at all. Therefore, there is an urgent need to conduct surveys and research to figure out how to secure agreement from most stakeholders to implement the project.

O – Owners

This usually refers to the owner, entrepreneur or investor of an organisation, who wants to make changes and who decides whether a project should start or stop. As decision makers, they have the highest authorities.  Commitment and support from the aforementioned parties are important to ensure successful implementation of the blockchain project and also long term sustainability of the project.

E – Environmental Constraints

This is the actual environmental elements that may influence the organisation and can limit or restrict the implementation of the blockchain technologies in the school system. Examples include political influence, ethical boundaries, regulations from the government, financial constraints and social factors. There is need to work closely to overcome the constraints via negotiations and other means with the regulators and other parties

The Outline of the White Paper

Abstract

The current school system is too structured, rigid, and inhibits creativity. The current school curriculum inadequately prepares the students to survive the fast changing world of the 21st century. While schools need to comply with the national education policy to teach designated subjects, schools should include other programs that could help to resolve the aforementioned issue. Therefore, our school proposes building an ecosystem using blockchain technology where students can freely create and share their contents. We believe that the blockchain ecosystem will nurture young children in developing creative minds and entrepreneurial skills.

1. Problems

  • The Current school system is too structured and too rigid, inhibiting creativity
  • The Curriculum methodology centered on academics and examinations
  • Teacher-centered, lack of peer learning
  • The Administration is centralized and autocratic
  • Does not prepare children for the future
  • Lack of participation from stakeholders

2 The proposed solution

  • Create a self-perpetuating and self-sustaining ecosystem where students can create and share content. It can also include tangible things like arts and craft, scientific inventions, or intangible things like music, song, new ideas, games, and so on. The list is infinite.
  • Create an autonomous economic system where students can self-fund their projects.
  • The latest technology that can power this system is blockchain, a subset of decentralized ledger technologies.
  • The ecosystem should be enlarged to include the actors of the system – the teachers, coaches, supporting staff and the administrators.
  • The ecosystem must also be connected to stakeholders, including the business owners (who can provide financial support and sponsorship), the government (who may want to regulate the activities in the system), parents (who are concerned with their children development), etc.
  • The ecosystem can be extended to include students around the globe in the future.

3.   The Architecture

  • Create a permissioned private blockchain for the students. The students can interact freely in their own decentralized and distributed ecosystem.
  • Content or assets can be created and tokenized and shared among the students. They can trade their assets using the tokens, creating a token economic system.
  • Develop an API so that the stakeholders can interact with the blockchain. Administrators and teachers should be allowed to monitor and delete certain contents that are inappropriate like pornographic materials etc via the API. On the other hand, parents can monitor their children progress but may not be allowed to delete the contents or add comments. In addition, business owners and investors can monitor the progress of the project and provide support and advice if necessary (for example if the system crashed or stalled). In addition, regulators might want to monitor the blockchain for compliance.
  • Proposed to implement existing platforms like Hyperledger Fabric, Hyperledger Sawtooth, Ethereum platform, NEM or others. Besides that, we can also build our own private blockchain. The conceptual framework is illustrated in the figure below:

4. The Legal Framework

Obviously transforming a school into a blockchain school needs to obtain approval from the Ministry of Education. It has to comply with national education policies. Therefore, we need to design the blockchain platform as a new approach in teaching and learning, keeping content within the requirements of the curriculum imposed by the MOE.

**You may use my ideas to write a paper if you are embarking on a similar project, but prior consent from me is necessary.

When to use blockchain?

Factors to Consider before Adopting Blockchain

Blockchain is the coolest and most innovative technology at the moment. Many people believe It has the potential to disrupt many technologies. However, the blockchain technology is still far from mature. It is still facing numerous issues, scalability is one of them. Therefore, it is advisable to conduct a thorough study before adopting the blockchain technology.

Adopting the blockchain technology is akin to business process re-engineering which might incur heavy costs. Besides that, an organization might face certain new risks. Therefore, businesses and other organizations must evaluate many factors before adopting the blockchain technology. They need to carry out an inventory  analysis by asking the following questions like,

  • How many participants are in the system?
  • What is the geographical distribution of the participants?
  • What sort of performance requirements do they have?

On top of that, they need to specify the rules, risks, and responsibilities of each party in your blockchain ecosystem before transferring the present centralized database to a decentralized blockchain network.  According to some expert opinions, blockchain is best suited for business applications where one or more of the following conditions apply:

  • There is a need for a shared common database
  • The parties involved with the process have conflicting incentives in a trustless environment.
  • There are multiple parties involved in the environment.
  • There are uniform rules governing participants in the system
  • Decision making of the parties is transparent, rather than confidential
  • There is a need for an objective, immutable history or log of facts for parties’ reference
  • Transaction frequency does not exceed 10,000 transactions per second.

When Not to Use Blockchain

Although blockchain is a powerful tool,  it is not always the right tool. If a business is contemplating using blockchain technology, it needs to evaluate the issues fully.  The following conditions are not currently well suited to blockchain-based solutions:

  • The process involves confidential data
  • The process stores a lot of static data, or the data is quite large
  • Rules of transactions change frequently
  • The use of external services to gather/store data

Blockchain in a Nutshell

What is Blockchain?

A blockchain is a distributed digital ledger that can be used to record transactions and other data across a decentralized peer-to-peer network made up of a cluster of computing devices. We can also define a blockchain as a distributed encrypted database like a spreadsheet that is duplicated thousands of times across a network of computers. This network is designed to regularly update this spreadsheet. It is a subset of distributed ledger technologies.

The Blockchain Network

The blockchain network is a peer-to-peer decentralized Network.  The peers, also known as nodes, are connected to this network in a synchronous way. The node can be a desktop, a laptop, a mobile phone, mining rig, servers or any other electronic devices. These nodes form the foundation of the blockchain network. They provide computing resources such as disk storage space to keep the network alive and to maintain its integrity and security, and they do it voluntarily.

The main feature of the blockchain is decentralization. To understand what decentralization is, first we need to understand the traditional centralized operation mode. For example, if you go to the supermarket to buy something, you pay with a credit card when you check out. This process requires the approval of a third party, the bank. The transaction is completed after the bank approved it. However, if you use the blockchain platform to perform a transaction, you do not need a third party. The buyer and the seller can trade directly and seamlessly in a transparent and secure blockchain ecosystem.

Another feature of the blockchain is that all participants in the network do not need to establish any trust relationships to perform transactions. It relies on a cryptographic authentication technology, a decentralized network, and a consensus mechanism to ensure the security and integrity of funds and information. Therefore, the information of the blockchain is highly transparent and not easily falsified. Thus, the blockchain system is particularly suitable for a financial industry.

Decentralized Network Vs Centralized Network

Let’s examine the diagrams below to see the difference between a centralized network and a decentralized network. A centralized network has an authoritative central point of control. All the clients are connected to this single point and all their data are stored in the central server. The client has not much control over how the central authority will use his or her data.   

A good example is your bank account, the bank keeps your money and manages your account and they record all your transactions. They can also lend your money to other clients. Although this system has been quite reliable, it is prone to the vulnerability of a single point of failure. For example, if a bank’s central server is hacked by a hacker, all the accounts will be compromised.

On the other hand, in the peer-to-peer decentralized network, all the peers work together to upkeep the network via a consensus mechanism. The peers have 100% control of their data and how the data could be used. In addition, they don’t need a third party or a middle entity to perform transactions.

More importantly, it eliminates the vulnerability of a single point of failure. If a node is being hacked, only the data belong to that particular node would be compromised while all other nodes still keep a copy of the ledger. moreover, the cryptographic hashing algorithm makes it extremely difficult to hack the blockchain.

To ensure the nodes are motivated to maintain the network, blockchain incentivizes the nodes through a mechanism known as mining. By engaging in mining activities the successful miners will be rewarded with some cryptocurrencies such as Bitcoin, Ethereum or other coins. I shall explain mining in another article.

Centralized Network
Decentralized Network

The Composition of Blockchain

A blockchain comprises a chronological chain of blocks. The first block is known as the genesis block. A block refers to a set of transactions that are bundled together and appended to the blockchain.  The second block is appended to the genesis block, the third block is appended to the second block and so forth, as shown in the following diagram:

blockchain

Every node in the network stores a copy of the distributed ledgers, or the blockchain, as shown in the figure below.

The Blockchain Network

The Block Structure

A block consists mainly of the block header containing metadata and a list of transactions appended to the block header. The blockchain metadata are as shown in the following figure:

Moreover, there is other information in the block, such as rewards, transaction fees and so on. I will explain them one by one in future articles. If you want to find out the latest Bitcoin block information, you can browse the following link:

https://www.blockchain.com/explorer

The following figure shows the real data of Bitcoin block #546717:

Block #546717

Block Height

Block height represents the length of the blockchain, which is the total number of blocks so far. It also represents the position of the block in the blockchain. The height of block 546717 is 546717 (refer to the figure above).

Nonce

A nonce is a random number the miners used to solve a mathematical puzzle in the mining process, which is also know as proof of work.  The nonce in the bitcoin block is a 32-bit (4-byte) field whose value is adjusted by the miner to make the hash of the block smaller than or equal to the current target of the network. The concept of proof of work is explained in the following section.

What is Proof of work?

On the Bitcoin blockchain network, the miner nodes bundle unconfirmed and valid transactions into a block. Each block contains a given number of transactions. In the Bitcoin network, every miner must solve a cryptographic puzzle to propose the next block. This process is known as ‘proof of work’.  Proof-of-work is a mechanism that existed before the first blockchain was created. It prevents abuses by requiring a certain amount of computing work. That amount of work is key to prevent spamming and tampering. Spamming is no longer worth it if it requires a lot of computing power.

Difficulty

Difficulty is a value that measures the degree of difficulty to find a hash value for a given target, which represents the difficulty of mining. The value of difficulty will be changed once every 2016 blocks, the value will usually increase.

What is Timestamping?

According to Wikipedia, a timestamp is a sequence of characters or encoded information identifying when a certain event occurred, usually giving date and time of day. In the olden days,  the term derives from rubber stamps used in offices to stamp the current date, and sometimes time, in ink on paper documents, to record when the document was received, as shown in the diagram below:

Image adapted from Wikipedia

In this digital age, the term has been expanded to refer to the date and time information attached to digital data. For example, computer files contain timestamps that tell when the file was created and when was it last updated. Digital cameras add timestamps to the pictures by recording the date and time the pictures were taken.

The Unix timestamp is the number of seconds passed since midnight on January 1, 1970 (UTC / GMT), ignoring of leap seconds. When I wrote this article, the Unix timestamp is 1540130658.  You can check the current timestamp from the links below:

https://www.unixtimestamp.com/

Timestamping is an important feature of blockchain technology. Each block is timestamped, with each new block referring to the previous block using the cryptographic hash. Combined with cryptographic hashes, this timestamped chain of blocks provides an immutable record of all transactions in the blockchain, as shown in the figure below:

What is Hash?

A hash or hash value is the result of a hash function. A hash function takes an input of any length, perform some algorithmic transformation, and produces an alphanumeric value of a predetermined length. The input could be a spreadsheet file, a music file, video file, image file, financial statement, invoice, contract etc.

A hash value comprises  a 256 bits(64 characters) random letters and numbers , as follows: “4373c7fb1437035365d9228c77eca2cfd240523e274163e78c1eba11effd8b38”.

You can generate a hash online using the following link:

https://passwordsgenerator.net/sha256-hash-generator/

A hash has the following properties

  • A given input has a precisely predictable output of a specified length, usually, but not necessarily much shorter than the input.
  • Even if the input is only slightly changed, the output differs dramatically.
  • If the hash function is of the cryptographic variety, it is very difficult, if not practically impossible, to infer the original input, given only the output. The degree of difficulty/impossibility depends on the strength of the encryption used.

 Every transaction occurring on the blockchain network is encoded with a hashing algorithm to produce a hash that is impossible to decrypt. Hashes are used to represent the current state of the blockchain. It means all the transactions that have taken place so far have been hashed, and the resulting output hash represents the current state of the blockchain. The hash is used for all parties to agree that the state is the same.

Hash is for validation purpose. Data on the blockchain is “hashed” in each block. Each block is linked with the previous bock via the hash value. If someone tampers with a block, everyone will know the block is corrupted. Therefore. It preserves the integrity and immutability of the blockchain.

What is a Digital Signature?

According to Wikipedia, 

” A digital signature is a mathematical scheme for presenting the authenticity of digital messages or documents. A valid digital signature gives a recipient reason to believe that the message was created by a known sender (authentication), that the sender cannot deny having sent the message (non-repudiation), and that the message was not altered in transit (integrity).

A digital signature is generated using asymmetric  cryptography, which is more secure than handwritten signatures that can be easily forged. It is used as a way to prove that a message originates from a specific individual and not from someone else.

Asymmetric cryptography, also known as public key cryptography (PKI), uses public and private keys to encrypt and decrypt data.  In the asymmetric encryption system, a user generates the key pair, which comprises a public key and a private key using some known algorithm. The public key and private key are associated with each other via some mathematical relationship.

The public key is meant to be distributed publicly to serve as an address to receive messages (including cryptocurrencies) from other users, like your Bitcoin or Ethereum address. The private key is meant to be kept secret and is used by the sender to send digitally signed messages to other users. The signature is included in the message so that the recipient can verify using the sender’s public key. This way, the recipient can be sure that only the sender could have sent this message key pair, which is a public key and a private key using some known algorithm. For examle, every transaction on the blockchain is digitally signed by the sender using their private key. This signature ensures that only the owner of the account can move money out of the account.  

The steps can be explained below:

Signing the message with the private key

To create a digital signature, the user can use a signing software to create a one-way hash of the electronic data. The private key is then used to encrypt the hash. The encrypted hash, along with other information,  is the digital signature.

Verifying the message with the public key

To verify the message, the receiver uses the sender’s public key to decrypt the hash. If this decrypted hash matches a second computed hash of the same data, it proves that the data has not changed since it was signed. If the two hashes do not match, the data has either been tampered with in some way or the signature was created with a private key that does not correspond to the public key presented by the sender.

To sum it all together, blockchain could not exist without hashing and digital signatures. Hashing provides a way for everyone on the blockchain to agree on the current world state, while digital signatures provide a way to ensure that all transactions are only made by the rightful owners. We rely on these two properties to ensure that the blockchain has not been corrupted or compromised.

A Short History of Blockchain

Blockchain has been the most hyped technology in the last few years. A recent World Economic Forum report predicts that by 2025, 10% of GDP will be generated by blockchain. Though blockchain technology is being overhyped somewhat, it has the potential to disrupt many existing industries.

Some startups, MNCs, governments, non-profit organizations, and even individuals have already developed and implemented blockchain-based applications. Therefore, everyone should take notice of this trend. However, there’s still a lack of understanding about what it is.

To begin with, the first blockchain was invented by  Satoshi Nakamoto in 2008 to serve as the public transaction ledger of the cryptocurrency bitcoin.  That year, he (or she) posted a paper called Bitcoin – A Peer to Peer Electronic Cash System to a mailing list discussion on cryptography. However, Satoshi Nakamoto real identity remains a mystery to this day.  In fact, Satoshi Nakamoto may not be a particular person, but a group of people.

On the other hand, some people argued that Satoshi Nakamoto might not be the first person that created the blockchain technology. The idea behind blockchain technology could be traced back to 1991 when Stuart Haber and W. Scott Stornetta (Scott-Briggs, 2018) conceived the idea on a cryptographically secured chain of blocks. In 1992, they incorporated Merkle trees into the design allowing several documents to be collected into a block.

In addition, there were also previous attempts at creating online currencies with ledgers secured by encryption, among them were B-Money and Bit Gold. B-money was an early proposal created by Wei Dai for an “anonymous, distributed electronic cash system ”.  His essay was published on the cypherpunks mailing-list in November 1998.  Even Satoshi Nakamoto referenced B-Money when he invented bitcoin. Another precursor of bitcoin is bit gold, invented by Nick Szabo in 1998.  Bit Gold is a decentralized digital currency but was never implemented.

However, the blockchain technology did not gain traction until the emergence of bitcoin. Since its debut in 2008, the bitcoin price has skyrocketed. Many people are actively involved in mining activities to get rich quick. From 2011 onwards, many alternative cryptocurrencies have emerged, among them were Ethereum, Namecoin and Litecoin and more. Currently, there are over 1,000 cryptocurrencies in circulation with new ones frequently appearing.

None of the cryptocurrencies came close to challenging Bitcoin until the invention of Ethereum by Vitalik Buterin in 2013. The Ethereum platform introduced the concept of smart contracts and cryptocurrency Ether. It is also a platform for ICO and crypto crowdfunding.