Introduction to Blockchain and SAP Cloud Platform Blockchain Service
Understand the concept of blockchain and explore the services released by the SAP Cloud Platform blockchain service that allow users to develop blockchain scenarios.
Blockchain has gained traction and momentum with many companies, shifting the focus from theory to practice. The SAP Cloud Platform Blockchain service helps users to build a holistic solution on blockchain integrated with the SAP landscape.
By reading the article you will be able to:
- Understand Blockchain
- Know the criteria to build a Blockchain-based application
- Gain an update on the recent examples of the Blockchain platform
- Understand how to use SAP Cloud Platform Blockchain service
If you have spent some time reading the latest technology trends, attended Sapphire or visited SAP Roadmap on SAP Cloud Platform, then you have likely heard the term blockchain. The initial application to be developed on the concept of blockchain was Bitcoin for the financial industry.
The heart of blockchain’s potential lies in the unique properties of a distributed database and how it can improve transparency, security, and efficiency. In laymen’s terms, blockchain is a shared, programmable, cryptographically secure trusted ledger. No single user controls it and it can be inspected by anyone. Initially, organizations used the central data repository to support transaction processing and the control of the database resides with the owner. Outsiders were not allowed to update the records and manipulate the database. However, a decrease in cost and advances in software, communications, and encryption allow for a distributed database spanning organizations.
Blockchain can be applied to all business processes. However, some of the major drivers of blockchain in enterprise applications are as follows:
- Increasing transparency and trust in multi-party transactions
- Reducing fraud in multi-party transactions
- Reducing cost and increasing efficiency in multi-party transactions
- Facilitating secure, decentralized transactions among many parties in the Internet of Things
- More automation as actions are triggered automatically when conditions are met
Blockchain can be classified as follows.
- Public blockchain. Anyone in the world can read, send transactions, and participate in the consensus process. The drawbacks of a public blockchain are that a substantial amount of computational power is necessary to maintain a distributed ledger at a large scale. Also the openness of a public blockchain implies little to no privacy for transactions. Both of these points are important for an enterprise’s use of blockchain.
- Private blockchain. The write permission is kept centralized to one organization that all the members trust. Read permission may be public or restricted to some extent. I feel private blockchain are more suited for enterprises such as SAP because limited or restricted read permissions provide a greater level of privacy to the users and the transactions are quicker as they can be verified be a small number of users.
- Consortium blockchain. The consensus process is selected by preselected nodes. The right to read the blockchain may be public or restricted to participants. A consortium blockchain falls between both the public and the private blockchain.
Many companies are trying to build proofs of concept or projects on blockchain. However, they have to understand that some of the problems can be solved with relational databases and without blockchain (i.e., distributed databases). IT staff and business users should answer the following questions before saying yes to the blockchain scenario:
- Which of your transactions requires a specific sequence or timing of events?
- How many participants will be transacting on the network?
- Which of your records must be maintained without being changed, reordered, or deleted?
- Where must information be transparent and publicly accessible?
- Where can transaction transparency help build trust between participants?
- What is the size of data to be stored in the database for each transaction?
- If you have a database transaction that is modified by multiple parties and they don’t trust each other, then the database must contain embedded rules for the validation of the transaction. What will the rules be in this scenario?
- Who will be the validators of the transactions if some conflict arises (for example, double spend)?
- What is the complexity of the business logic to store the transaction data to increase trust among participants?
- Will introducing blockchain to these areas increase efficiencies or improve your ability to scale?
Let’s discuss these two business scenarios based on data volume in a supply chain to understand the above questions:
- Business scenarios requiring processing of only a moderate data volume such as in the supply chain. Tracking of luxury goods seem to be feasible for a blockchain-based approach.
- Business scenarios requiring processing of a huge data volume such as in supply chain tracking. Tracking of multiple goods does not seem feasible for a blockchain-based approach.
Blockchain Use Examples
Initially, in the utilities Industry only the producer was selling the electricity. Now with the shift in energy production and use of renewable energy sources for electricity generation such as solar power, both the producer and consumer can sell electricity. I discovered one of the examples for a utilities-based blockchain (the Brooklyn Microgrid Project) during a recent visit to New York. In New York, neighbors are selling solar energy to one another. They have divided the community into two parts (one producing the electricity and other consuming the electricity). Since blockchain is peer to peer, each participant trading electricity had to have a computer with a blockchain node for their homes with solar panels to be able to sell power to neighbors. The blockchain network manages and records the transactions with little human interaction. The nodes in the computers are needed to validate and share the information to minimize the possibility of downtime or interference with the data. The more data that needs to be bundled into blocks and passed along, the more computing power is required.
Much of the hype around blockchain has focused on making changes in the financial industry by dropping complexity and increasing efficiency and transparency. For example, the clearing and settlement of cash entities has been streamlined over the years and is an efficient process today, but it still can take five to six days for the payment transfer if everything goes well. With some exceptions, all the communication between banks and intermediaries is either through paper mail or email. It is difficult for the customer to track the money. SAP collaborated with Alberta Treasury Branches (ATB) Financial and created a blockchain prototype that reduced the processing time from days to 20 seconds. SAP extended the SAP Payment Engine and used SAP Cloud Platform to transfer money from one bank to another.
Similarly, blockchain can solve problems in multiple industries as shown in these examples:
- Aerospace and defense. Blockchain can be used for tracking and tracing aircraft parts that are procured from multiple manufacturers. Currently, gathering all the parts information is difficult. Blockchain can also be used to prevent the trade or sale of counterfeit goods by establishing an item’s provenance.
- Travel and transportation. Blockchain can be used for the tracking of containers that pass through multiple vendors after a shipment reaches the final destination.
- Blockchain can be used for storing vehicle information such as use, maintenance work, and replacement parts. Information is required by multiple parties such as manufacturers, insurers, service centers, and owners.
What is more likely to happen is that companies will follow a modal approach, using the legacy system, but adding blockchain for experimentation and updating of the centralized legacy systems. Blockchain offers digital leadership and business value to customers and internal stakeholders by building applications on SAP Cloud Platform. In short, blockchain won’t replace legacy technology overnight, but will co-exist with it for some time to come.
Now most platforms, including the SAP platform, have multiple services such as Internet of Things, Image Classification (a machine-learning service), and blockchain. SAP has recently released blockchain services under the Leonardo platform and is working to make them mature as per the business requirements of its customers. Blockchain services is now released for partners, customers and even SAP has started a Medallion program for Leonardo with multiple partners such as HCL, EY, Deloitte etc.
The SAP Cloud Platform Blockchain services are available as part of the Cloud Foundry and use Hyperledger Fabric for the development of business processes that require blockchain technology. Hyperledger Fabric is a project initially developed by IBM. Fabric is a plug-and-play implementation of blockchain technology designed by IBM as a foundation to develop high-scaling blockchain applications with a flexible degree of permissions. Fabric was designed to provide a framework with which enterprises can put together their own individual blockchain networks that can quickly scale to more than 1,000 transactions per second.
To access SAP Cloud Platform Blockchain services, log in to SAP Cloud Platform and click the Go to Cloud Foundry Trial button (Figure 1).
Figure 1 SAP Cloud Platform Cockpit Home screen
Click the trial link in the box shown in Figure 2 to access the Cloud Foundry dashboard (Figure 3).
Figure 2 The Global Account screen
Click the Spaces option in the left bar menu in Figure 3 to create the memory to access the blockchain services.
Figure 3 Create the memory
Click the New Space button in Figure 4 to create the space.
Figure 4 Click the New Space button
Enter the Space Name in Figure 5 and click the OK button.
Figure 5 Enter the name for the space
The space named blockchain has been created. Click the Blockchain button in Figure 6.
Figure 6 SAP Cloud Platform Spaces screen
Click the Service Marketplace button shown in Figure 7 to view the blockchain services.
Figure 7 View the blockchain services
Click the Blockchain service box in Figure 7 to view information about the blockchain service in the screen shown in Figure 8.
Figure 8 More detail on the blockchain services
To create a new instance of the blockchain service, click the Instances option in the left bar menu in Figure 8. The next screen that opens (Figure 9) has no instance created for the application, so click the New Instance button. The instance created is used for blockchain development.
Figure 9 Create an instance
The service plan is automatically selected in Figure 10. Click the Next button.
Figure 10 Confirm the service plan
Enter the Instance Name ledger in Figure 11 and click the Finish button to create the blockchain service instance.
Figure 11 Click the Finish button
Now you can view the blockchain service instance (Figure 12). The four actions that a user can take are represented by the icons under the Actions section. The four actions on the newly created instance are:
- View the dashboard
- Link the application
- Create the service key
- Destroy the instance
Figure 12 SAP Cloud Platform blockchain instance that includes four actions
Once the instance is created, you can either bind the service to an internal SAP Cloud Platform application or create a service key to access the service from an external system. The next step is to write code as per your business scenarios.
As a provider of enterprise platforms, traditional ledgers, and deep knowledge of multiple industries, SAP is being asked for help in connecting the dots between the prototype system and enterprise systems so that the blockchain concept can be turned into business results. Now with the release of SAP Cloud Platform Blockchain service, businesses are enabled to rapidly develop new applications or extend existing ones built on SAP ERP Central Component (ECC) or SAP S/4HANA.
I will be writing more article focusing on the architecture, integration, use case etc. for the Blockchain.
Thanks & Regards,