Blockchain’s Data Architecture and its Integrity

Abstracted from Bitcoin: A Peer-to-Peer Electronic Cash System by Satoshi Nakamoto https://bitcoin.org/bitcoin.pdf

From the diagram above, each block of the data is consisted of previous hash, nonce and transactions. If you are not sure what is hash, you can read this article first. To simplify, hash value is an unique ID for the previous block. If we use this “unique ID” to verify the previous block, we will know whether the previous block has been modified or not.

What is the implication? This mechanism allows us to ensure that no one is allowed to change the previously created data. If you need to modify the data, you have to create another records to “modify” or “delete” it.

From the above example, Alice wrongly enter the journal entries for 123.4, but it should be 432.1. Alice has to create another records “delete” to reverse the previous entries.

It seems that it is the basic function for most of the accounting system, but we cannot know whether it is simply controlled in the application level, creating a possibility that the data could be changed in database level.

To ensure that no one can change the data from the start point to the end point, I introduce a simple and secure Blockchain Database API.