Blockchain technology is a recent financial technology that has completely transformed business transactions. The records of the ledger databases it provides are immutable and cryptographically signed using a distributed consensus or validation protocol. This has made the blockchain popular for executing transactions in multi-party business environments. It guarantees the authenticity and non-tampering of transactions without the need for any centralised authority. This article focuses on the Amazon Web Services (AWS) blockchain templates and their applications.
One of the most explosive innovations involving blockchain is the cloud based blockchain platform. For greater access, flexibility, efficiency, and security, cloud computing is evolving to a decentralised infrastructure. Innovations like serverless technology are causing a paradigm shift in computing, freeing systems administrators for designing and configuring as well as managing the servers and resources required to run business applications.
Decentralised frameworks also allow business owners to utilise only the storage they need. With centralised cloud computing storage, this isn’t always the case. With the implementation of decentralisation in networks, it’s easier to ensure that only authorised users have access to stored data. Security through this type of network is more extensive because it’s divided between several different storage components. If there is a breach in a decentralised system, no single user can have access to all your data since it’s scattered across the world when it’s stored. A blockchain cloud storage solution takes a user’s data and breaks it into tiny chunks of data. It then takes these chunks of data, encrypts them to add an extra layer of security, and distributes them throughout the network.
This is done by using blockchain features such as transaction ledgers, cryptographic hash functions, and public/private key encryption. The data that is being stored throughout the blockchain ledger is split up and hashed a significant number of times. More importantly, the different chunks of hashed data are not stored on the same storage device. These are split randomly throughout the network. This ensures that even if one bad actor is able to decrypt a piece of data, the entire file cannot be accessed. The node would not be able to identify who the data belongs to, and hence the true user will remain anonymous.
As a final safety precaution, when a user goes to retrieve data, those copied shreds are compared to make sure they are all identical before the host gets paid for storage services. If something does get flagged, indicating that a node has been manipulated or the data has been altered, that user is immediately removed. There are many nodes required to make a quick transaction.
The numerous benefits of using blockchain in cloud computing are:
- Efficiency in ownership tracking
- Decentralisation with enhanced security
- Enhanced private key security and geo-independence
- Micro transactions and distributed supercomputers
Almost all cloud providers have launched blockchain cloud services to help organisations with blockchain projects. These include:
- Alibaba Cloud
- Google Cloud Platform
- IBM Cloud
- Microsoft Azure
- Oracle Cloud
- Amazon Web Services
Alibaba Cloud BaaS (Blockchain as a Service) is an enterprise-level Platform as a Service (PaaS) powered by the Ant Financial Blockchain Team, enabling business enterprises to build a stable, secure blockchain environment and support its management, operations, maintenance and development in an easy manner. It is built on Alibaba Cloud Container Service for Kubernetes clusters, and provides security, maintenance and computing. It provisions blockchain services based on multiple architectures such as public cloud deployments and private cloud deployments.
Alibaba Cloud BaaS supports open source blockchain technologies like Hyperledger Fabric and Enterprise Ethereum-Quorum. It also supports proprietary financial-grade blockchain technology, Ant Blockchain. Its architecture is as follows.
- Infrastructure layer: Currently, BaaS supports public cloud and private cloud offerings of Alibaba Cloud. It will support hybrid cloud deployment in the near future.
- Cloud resource layer: It provides basic cloud resources for blockchain services and upper-layer applications, including ECS, VPC, NAS and SLB.
- Platform services layer: Built on Alibaba Cloud Container Service Kubernetes clusters, this blockchain platform supports multiple basic BaaS services. These services include resource creation, resource management, resource operation, and security management. The blockchain engines currently support Linux Foundation’s Hyperledger Fabric 1.4 LTS, Ant Financials’ Ant Blockchain, and J.P. Morgan’s Enterprise Ethereum – Quorum.
- Mid-layer application: This is a reference architecture that is used to connect BaaS with business applications. It is usually implemented in the form of a blockchain business solution or blockchain middleware.
The overall architecture also includes multiple services that may be applicable to BaaS, such as security management and operation management.
Google Cloud has collaborated with Digital Asset Holdings and BlockApps to support blockchain technology. It has also joined the private beta of Digital Asset’s developer program to provide technology partners, software vendors, and financial organisations access to the software development kit (SDK) for DAML. The DAML (Digital Asset Modelling Language) is a smart contract language for distributed ledger technology (DLT) to align processes across organisations. BlockApps Strato is based on the Ethereum protocol and provides enterprise-grade API integration capabilities and configurable consensus algorithms. It also enables enterprises to query and report on blockchain data using a traditional SQL database. Strato provides full integration with Google Cloud and rapid deployment for both cloud and hybrid infrastructure. This solution is developer-friendly, and enables developers to integrate it with existing enterprise systems.
IBM Blockchain Platform
The IBM Blockchain Platform for IBM Cloud is the next generation of IBM Blockchain Platform offerings, which gives users total control over their deployments, certificates, and private keys. It includes the new IBM Blockchain Platform console, which is a user interface that can simplify and accelerate the process of deploying components into a Kubernetes cluster on the IBM cloud, managed and controlled by the systems administrator.
Its key features are listed below.
- Build: It supports an integrated developer experience — deploys easy programming and DevOps as well as up-to-date Fabric key features.
- Operate: Total control on deployment — hosting or joining network, complete control on identities, unified operation, accessibility, easy interaction and log management, elimination of Docker, and Kubernetes service integration.
- Grow: Scalability, disaster recovery, and connectivity to other fabric networks.
Azure Blockchain service is a fully managed ledger service that gives users the ability to scale and operate blockchain networks in Azure. It provides: (a) Simple network deployment and operations; (b) Consortium management; (c) Smart contracts development with development tools.
It provides support for Ethereum Quorum ledger using the Istanbul Byzantine Fault Tolerance (IBFT) consensus mechanism. With these features, no administration is required, and users can concentrate on app development and business logic rather than allocating time and resources to managing virtual machines and infrastructure. It supports application development via open source tools and has an ample choice of platforms to deliver solutions.
Oracle Blockchain Platform gives users a pre-assembled platform for building and running smart contracts and maintaining a tamper-proof distributed ledger.
This platform is a network consisting of validating nodes (peers) that update the ledger and respond to queries by executing smart contract code — the business logic that runs on the blockchain. External applications invoke transactions or run queries through client SDKs or REST API calls, which prompts selected peers to run the smart contracts. Multiple peers endorse (digitally sign) the results, which are then verified and sent to the ordering service. After a consensus is reached on the transaction order, transaction results are grouped into cryptographically secured, tamper-proof data blocks and sent to peer nodes to be validated and appended to the ledger. Service administrators can use the Oracle Blockchain Platform Web console to configure the blockchain and monitor its operation. With this platform, developers can complete some simple instance creation steps. Then Oracle takes care of service management, patching, backup and restoring , and other service life cycle tasks.
Oracle Blockchain Platform is available on Oracle Cloud Infrastructure (OCI), and can access other required services like Oracle Cloud Infrastructure Compute, Oracle Cloud Object Storage, and Oracle Identity Cloud Service.
Oracle Cloud Infrastructure Compute: The Oracle Blockchain Platform uses an Oracle Cloud Infrastructure Compute VM to deploy and run the Oracle Blockchain Platform instance and all other required applications such as Oracle Cloud Infrastructure Object Storage, Oracle Identity Cloud Service, and Oracle Cloud Infrastructure Load Balancing.
Oracle Cloud Infrastructure Object Storage: The Oracle Blockchain Platform uses Oracle Cloud Infrastructure Object Storage to store product-related binary files and logs.
Oracle Identity Cloud Service: Oracle Identity Cloud Service Foundation is automatically provided when you subscribe to the Oracle Blockchain Platform through Oracle Universal Credits. Some additional features are available with basic and standard editions.
Amazon Web Services (AWS)
AWS based blockchain has multi-flavour instances, like Hyperledger Fabric and Ethereum.
AWS provides purpose-built tools to support distinct needs, whether you need a centralised ledger database that maintains an immutable and cryptographically verifiable record of transactions, or a multi-party, fully managed blockchain network that helps eliminate intermediaries. Developing blockchain and ledger applications is simpler, faster, and more efficient with AWS. Amazon Managed Blockchain eliminates the heavy lifting involved in the setup of blockchain networks by reducing 60 per cent of the time taken in hosting Hyperledger Fabric frameworks. Managed blockchain also makes it easy to operate networks as it supports AWS CLI, AWS CloudFormation, and Amazon Cloudwatch logs. Amazon QLDB is two to three times faster than traditional frameworks; it also provides SQL-like operators and a document data model for handling transactions.
AWS has over 70+ validated blockchain solutions from partners who provide support to all major blockchain protocols, including Hyperledger Sawtooth, Corda, DAML, Ethereum, Quorum, Blockstack, Blockapps Strato, RSK, Kadena ScalableBFT, and many more.
Amazon Managed Blockchain
Amazon Managed Blockchain is a fully managed service that makes it easy to create and manage scalable blockchain networks using the popular open source frameworks Hyperledger Fabric and Ethereum. This service makes it possible to build applications where multiple parties can execute transactions without the need for a trusted, central authority. Today, building a scalable blockchain network with existing technologies is complex to set up and hard to manage. To create a blockchain network, each network member needs to manually provision hardware, install software, create and manage certificates for access control, and configure networking components. Once the blockchain network is running, you need to continuously monitor the infrastructure and adapt to changes, such as an increase in transaction requests or new members joining or leaving the network.
Amazon Managed Blockchain is a fully managed service that allows you to set up and manage a scalable blockchain network with just a few clicks. It eliminates the overhead required to create the network, and automatically scales to meet the demands of thousands of applications running millions of transactions. Once your network is up and running, Managed Blockchain makes it easy to manage and maintain your blockchain network. It manages your certificates and lets you easily invite new members to join the network.
Its features are:
- Fully managed, and provides the users to create the network in a few clicks
- Strong choice of Hyperledger Fabric or Ethereum
- Fully scalable and secure
AWS blockchain templates
Most cloud platforms provide blockchain service from one of the popular existing blockchain frameworks and do not define new blockchain services on their own. As an example, AWS provides blockchain service in two flavours — Hyperledger Fabric or Ethereum.
When using a blockchain platform service in the cloud, the setup, configuration and management of services should not turn into manual activities, and hence a ready-to-use blockchain service is always preferred. Most cloud platform-based blockchain services address this issue by providing pre-defined services.
AWS has pre-defined blockchain templates in the form of CloudFormation templates for building Hyperledger Fabric or Ethereum platforms in an EC2 instance or as a container in an ECS service, along with the required security features like VPC, IAM, and load balancer to get a complete blockchain platform service in a single-click activity. This ‘single pane of glass’ setup of AWS blockchain template, as shown in Figure 1, can integrate with AWS native monitoring services as well.
If you are proficient in AWS and new to blockchain or if you are an expert in blockchain and new to cloud platforms, the AWS blockchain template will help you to design and develop blockchain integrated cloud applications easily by combining the power of blockchain security features in Hyperledger Fabric or Ethereum with the power of the cloud in terms of scalability, agility, and reliability of platform services.
Since blockchain templates are inherited from CloudFormation templates, if you want to create a SaaS blockchain service like Corda later, you can create the services as a container in ECS or an EC2 instance deployed service. You can prepare a CloudFormation template (in this case blockchain template) and make it available in a private marketplace so that it can be made reusable in future deployments as well.
Please note that the AWS blockchain template is available only in a few regions in the US, like Oregon, North Virginia, and Ohio. So when you are trying to use these services, please make sure that you choose the respective region for an application architecture to make use of them. If you are running a template in another region, it will launch the associated resource in the North Virginia region only.
Benefits of the AWS blockchain
For industrial solutions and real-time use-case development, blockchain templates are handy for the following reasons.
Faster deployment: Since blockchain services can be deployed using pre-defined templates, faster development and deployment are quite easy with the blockchain template, making it a faster ‘time to market’ enabled service.
Choice of platform services: Since the AWS blockchain template provides different flavours of blockchain services like Hyperledger Fabric and Ethereum, you can get an ‘out of the box’ choice of different blockchain frameworks quite easily.
Cost-efficient: Due to the flexibility of the ‘pay as you go’ service, the AWS blockchain is highly cost-efficient.
Associated management tools and services: By utilising the power of cloud services, you can use monitoring and management services like AWS CodeDeploy and CloudWatch for a decentralised blockchain application, giving the flexibility to integrate into native services of the blockchain platform integration.
Popular use cases
There are various use cases that have been made possible with AWS blockchain templates, across different industries, as explained below.
Supply chain: In the manufacturing or retail industry, supply chain management involves a series of activities, including stock monitoring, asset management, order processing, invoice services, and payment services, to name a few. In this series of chain activities, a lot of workflow and approval is required, which generally causes a delay due to various user roles involved (e.g., service provider, approver, and delegator).
With a decentralised blockchain platform created using an AWS blockchain template, all these workflow activities can be made faster in the network, since multiple nodes are involved in open ledger processing.
Financial services: Decentralised payment processing has become very important with more and more digital payments being adopted post COVID-19. Since the transaction in the blockchain platform network is immutable and cannot be tampered with easily as the ledger copies are across all the nodes in the network, it is very safe to use the AWS blockchain template for financial service-related use cases.
IoT: Industrial Internet of Things (IIoT) services involve a lot of secured services, data analytics, and transaction processing. Hence a blockchain platform used in combination with IoT sensors to collect data feeds and use them for enrichment, processing, and storage using a blockchain transaction is quite a popular use case. It can be built using an AWS blockchain template and IoT services like IoT Core and IoT Greengrass.
Insurance: Distributed Ledger Technology (DLT) adds a powerful feature to insurance use cases like streamlining and reducing wait-time for insurance claim processing, payment management and KYC processing activities.
Healthcare: Blockchain services in healthcare like customer management, booking services (e.g., non-critical surgery, bed services, pick-up services for health check-up), and patient data handling in a decentralised fashion (using AWS blockchain templates) are getting popular. For example, if there is a patient being admitted to a hospital, one can pull complete details about him/her, including previous hospital history, ailments, and treatment history from other hospitals, by getting an identification number like Aadhaar from a decentralised patient database.