A few months ago, I wrote a Blog Post on the Blockchain Essentials. In todays blog post, I will focus on the usage of the Blockchain, more specific I’ll treat Blockchain as an existing standard.
As a guideline, please assume that the two Essential Blockchain Capabilities are available as a standard in the Internet and you can use a wallet to access the capabilities.
A Standard
When talking about Blockchain with a friend who is working in the cable industry, he gave the right impulse. If Blockchain wants to scale, you need standards – he had similar experience with high-voltage cable before a standard was established – each company had to build each cable twice, as they needed one for testing the specifications. With the standard, the cable only needed to comply with the standard.
Take a shipping container as another example. The value lies not in what it is, but in how it is used. The container is at the core of a highly automated system for moving goods from anywhere, to anywhere.
Instead of discussing Blockchain capabilities let’s focus on using these capabilities.
Single Source Of Truth standard
All Blockchains provide immutability – everything that is written in the Blockchain stays there forever. This means that there is one shared state – seen by all parties who can access the Blockchain – which can be viewed as single source of truth.
Bank Account example
Take your bank account as a simple “Single Source Of Truth” scenario. Instead of using an IT system that manages your bank account, the bank account uses a Blockchain to manage all its interactions. The interactions are
- Bank Account gets created by the Owner
- Bank Account receives money from Sender’s Bank Account
- Bank Account sends money to Receiver’s Bank Account
Interactions in the Blockchain space means a Wallet interacts with the Blockchain which will lead to a Blockchain transaction.
The wallets which can interact with the Bank Account are
- Wallet of the Owner
- Wallet of the Receiver
- Wallet of the Sender
The following table shows the “History” of all interactions with the Bank Account. It assumes that BankAccount2 (owned by Sender) and BankAccount3 are already existing.
Wallet | Timestamp | Interaction | Data | Transaction ID |
Owner | 20.10.2022 14:32:01 | create | – | 1 |
Sender | 20.10.2022 14:33:02 | receive money | 100 from BankAccount2 | 2 |
Owner | 21.10.2022 08:23:22 | send money | 70 to BankAccount3 | 3 |
Sender | 22.10.2022 11:17:45 | receive money | 20 from BankAccount2 | 4 |
The interactions with the Single Source Of Truth are logged in the Blockchain and you can “replay” all interactions to get to the current state.
In the example above, the balance of the bank account is calculated by using all interactions starting from the creation of the bank account. The “receive money” adds money to the balance and the “send money” reduces the balance.
The current balance is: 100 (Transaction 2) -70 (Transaction 3) + 20 (Transaction 4) = 50.
ERP Process Example
Let’s take a simplified ERP process and apply the “Single Source Of Truth” standard.
Simple ERP Process
The process diagram above shows two companies who collaborate with each other. Each company executes some tasks of the process. In todays world, each company would run an ERP system where they store their parts of the process.
The companies assume that the truth about the process is stored in their IT system.
This may lead to multiple truths – like Company 2’s ERP system may show that the payment was done while Company 1’s ERP system shows that the payment was not done.
Here is the updated process diagram using the Blockchain Standard.
The Blockchain standard is visualized as a pool between the pools of Company 1 and Company 2. Each company uses their Blockchain Wallet to interact with the Blockchain based Single Source of Truth.
The wallet of Company 1 creates the Single Source of Truth for the invoice. The following table shows all interactions with the Single Source of Truth of the invoice.
Wallet | Timestamp | Interaction | Data | Transaction ID |
Company 1 | 20.08.2022 14:32:01 | create | – | 1 |
Company 2 | 20.08.2022 14:33:02 | receive invoice confirmation | – | 2 |
Company 2 | 21.08.2022 08:23:22 | receive payment | – | 3 |
Company 1 | 22.08.2022 11:17:45 | receive payment confirmation | – | 4 |
If Company 1 or Company 2 wants to know the status of the Invoice they will ask the Single Source of Truth or you could say “They ask the Invoice“. As the invoice is using Blockchain it cannot cheat.
Your Single Source of Truth Use Cases
Now it’s time for you to be creative. What are your use cases for the Single Source of Truth standard based on Blockchain? Where do you need the Single Source of Truth ? What are the business benefits that you would expect?
Please feel free to post any questions regarding this topic in the Blockchain community or approach us directly:
Frank Albrecht (Developer, SAP Innovation Center Network)