by Shikha Maheshwari | Published July 1, 2018
Blockchain technology presents abundant opportunities for innovation. It has the power to revolutionize businesses by fundamentally changing the way business transactions are done.
So what’s the best way for developers to begin developing code for blockchain networks? I recommend starting with a firm grasp of the Hyperledger Fabric project.
Hyperledger is an open source collaborative effort created to advance cross-industry blockchain technologies for business use. This global collaboration is hosted by The Linux Foundation.
Hyperledger incubates and supports a range of blockchain business technologies, frameworks, libraries, and applications. The Hyperledger project hosts several blockchain frameworks, including Hyperledger Fabric. This article gives you an overview of what Hyperledger Fabric is, how to use it to build solutions, and how a transaction gets executed in Hyperledger Fabric.
Hyperledger Fabric is an open source framework implementation for private and permissioned business networks, where the member identities and roles are known to the other members. It’s designed as a foundation for developing solutions with a modular architecture. It allows components, such as ledger database, consensus mechanism, and membership services, to be plug-and-play. It leverages container technology and delivers enterprise-ready network security, scalability, and confidentiality.
A Hyperledger Fabric network has these components:
Shared ledger. The ledger records the state and ownership of an asset. The ledger consists of two components:
Smart contract. Hyperledger Fabric smart contracts are called chaincode. Chaincode is software that defines assets and related transactions; in other words, it contains the business logic of the system. Chaincode is invoked when an application needs to interact with the ledger. Chaincode can be written in Golang or Node.js.
Ordering service. The ordering service packages transactions into blocks to be delivered to peers on a channel. It guarantees the transaction delivery in the network. It communicates with peers and endorsing peers. The supported configuration mechanisms for the Ordering service are Solo and Kafka.
In a blockchain solution, the Hyperledger Fabric network serves as a back end with an application front-end to communicate with the network. SDKs help you set up the communication between front and back end, such as the Node.js SDK and Java SDK. The SDK provides a way to execute user chaincode, perform transactions in the network, monitor events, etc.
To write a blockchain application, you need to:
The high-level request flow of a transaction in a Hyperledger Fabric network goes like this:
Hyperledger Fabric is a blockchain framework implementation. IBM Blockchain solutions and Blockchain Platform as a Service on IBM Cloud both leverage Hyperledger Fabric. Now that you understand what Hyperledger Fabric is and how it works, you’re ready to start developing blockchain applications — so dive in and start experimenting!
Kick-start your blockchain network now with the IBM Blockchain Platform 2.0.
Stay in the know with the monthly Blockchain newsletter for developers. Check out the recent issues and subscribe.
Check out the many blockchain code patterns on IBM Developer. They provide roadmaps for solving complex problems with blockchain technology, and include architecture diagrams, code repos, and additional reading.
Stop by the IBM Developer Blockchain hub. It’s your source for free tools and tutorials, along with code and community support, for developing and deploying blockchain solutions for business.
Everyone is placing bets on how the blockchain technology will revolutionize the way organizations and institutions transact business. Let's look…
Get started with this secure, distributed, open ledger technology by completing a pattern series that shows you how to build…
In this tutorial, we will go over a basic fabric development configuration with two organizations: one for the orderer and…
Back to top