Money may make the world go round, but documentation also sits at the heart of commerce. While traditional record-keeping approaches require a centralized authority to verify and secure each transaction, blockchain technology offers a shared, distributed, immutable and independently auditable ledger. The effort to build a peer-to-peer blockchain network, however, is substantial, which leads cloud users to consider blockchain as a service, such as Amazon Managed Blockchain.
For blockchain to work, transactions are recorded on nodes of a network. An organization must configure hardware and networks, install blockchain framework software, manage certificates and authentication, and constantly adjust the deployment as nodes join or leave the network. On the other hand, managed blockchain services from public cloud providers handle all of the infrastructure and management tasks needed to create and run applications over a blockchain network.
Amazon Managed Blockchain is a scalable option, wherein the vendor controls authentication and certificates and can support the traffic needs of many applications processing millions of transactions. However, Amazon blockchain as a service is not as mature or widely available as flagship AWS offerings. At time of publication, AWS supports Hyperledger Fabric version 1.2 for the service and plans to add support for the Ethereum framework. Amazon Managed Blockchain is available only in Northern Virginia U.S. Region. The Starter edition should fit the needs of test and evaluation along with deployment in small production environments. Use the Standard edition for large or high-volume production network environments.
If blockchain technology is the right answer for transactional workloads at your company, evaluate how Amazon Managed Blockchain works, its underlying frameworks, and what’s included in the two editions.
How Amazon Managed Blockchain works
In Amazon blockchain as a service, administrators can name and describe the blockchain network, and then select the voting policy that guides how member nodes make decisions about transactions. The initial blockchain network is completed by creating the first node member, and the network remains operational until the last of all node members is removed.
To scale, the managed blockchain service invites other AWS accounts to join the network, and creates and configures network connections to peer nodes to store copies of the distributed ledger. The administrator can also remove network members.
A blockchain network can run decentralized applications, where the applications handle specific transactional tasks between members of the blockchain network and are deployed to the network through peer nodes.
Although users can set up managed blockchain networks manually, AWS provides CloudFormation templates to simplify the creation of hosts that interact with Amazon Managed Blockchain services. When a template runs, CloudFormation provisions a corresponding EC2 instance and installs client software to interface with Amazon Managed Blockchain services. Templates, available through GitHub, allow users to select instance types, set up instances for managed blockchain resources, and configure Transport Layer Security encryption.
Amazon Managed Blockchain services are accessible via the AWS Management Console, the AWS CLI or the Managed Blockchain SDK for application integration.
Blockchain frameworks and templates
A blockchain network requires a software framework to give services and applications access. Amazon blockchain-as-a-service adopters will have the choice of Hyperledger Fabric and Ethereum.
Hyperledger Fabric is an open source blockchain framework from The Linux Foundation. It suits applications with strict security and permissions across known and infrequently changing network members. Hyperledger Fabric makes sense for private blockchain networks.
Amazon Managed Blockchain Starter Edition supports up to three Hyperledger Fabric channels per network with five members per network and two peer nodes per member, using bc.t3.small and bc.t3.medium instances. The Standard Edition supports up to eight Hyperledger Fabric channels per network with up to 14 members per network and three peer nodes per member, using bc.t3, bc.m5, and bc.c5 instance types.
The blockchain ledger is distributed, immutable and independently verifiable. Hyperledger uses Apache Kafka, a distributed and real-time platform for streaming data, as the default ledger. Amazon Managed Blockchain users can replicate blockchain network activity data to another ledger with Amazon Quantum Ledger Database (QLDB) for off-chain storage and analytics. QLDB is an integration point, but not a subset of the blockchain service. It offers an immutable change log and complete transaction history across the blockchain network.
Ethereum, a future option for Amazon Managed Blockchain, is an open source framework from the Ethereum Foundation. It targets highly distributed blockchain networks where the environment is trustless and data transparency is vital. One example use case is for public records.
Managed blockchain cost
Pricing involves several components and is pay-as-you-go, billed per second. To estimate costs, enterprises must factor in:
- Starter or Standard membership in the blockchain network;
- Starter or Standard blockchain peer node instances;
- peer node storage;
- the amount of data written to the blockchain network; and
- the movement of any data to or from the Amazon Managed Blockchain service.
Consequently, the cost of operating a blockchain network on AWS varies dramatically from one project to another.