Introduction To Hyperledger Fabric and Composer

Tharindu Sandaruwan
4 min readDec 16, 2018

In this tutorial, I am going to give you a basic idea about Hyperledger fabric and composer.

Hyperledger is not a specific technology or tool it refers to as a project developed for blockchain and distributed technologies by The Linux Foundation.

Here I am giving the Hyperledger greenhouse provided by Linux Foundation. So You would be able to get an idea about what are the Hyperledger project frameworks and tools.

Hyperledger Greenhouse

Hyperledger Fabric allows components, such as consensus and membership services, to be plug-and-play. Hyperledger Fabric leverages container technology to host smart contracts called “chain code” that comprise the application logic of the system. Hyperledger Fabric was initially contributed by Digital Asset and IBM, as a result of the first hackathon.

Hyperledger is production ready BC Framework for Business Blockchain Application. It means it is not something like AWS database that we can get and use, It provides infrastructure and application building blocks and also practices and guidelines for creating blockchain application. It is not possible in Ethereum to have a transaction visible to someone, but not visible to others (a requirement that is very common in business). Fabric allows this and much more. Hyperledger fabric is based on distributed ledger Technology.

Now I am going to tell you about 4 characteristics that make Hyperledger Fabric suitable for creating a distributed ledger-based business application.

  1. Permissioned network: We can define membership and access rights within our business network.
  2. Confidential transactions: allows business to make transactions visible to selected parties with the correct encryption keys.
  3. No cryptocurrency: It does not need mining and expensive computations to assure transactions.
  4. Programmable: It allows us to embed logic in smart contracts to automate business processes across our network.

Hyperledger has three main concepts.

  1. Assets-Any objects that can be exchanged on the blockchain network.
  2. Chain code- Defines the structure and code the transaction which can be executed against the assets.
  3. Ledger- When executing the chain code it adds the transaction details to Ledger and also it keeps the track about the state of the assets.

Hyperledger blockchain network contains members(Organizations that are in a network) for process automates and each of these members is assigned the certificate. These members will use MSP for creating and assigning participants and infrastructure components within their organizations.

Structure of network

All nodes are Not equal oncHyperledger fabric. There are clients, Peers, and Orders. Members participate on multiple Hyperledger Fabric network by way of, Each channel manage its own independent Ledger.

Now I am going to tell you about what is Fabric composer and why you should use composer.

It is an Open Development Toolset which is for Teams to create and manage business network applications. The primary goal of this is to accelerate and make the process easy development of Blockchain applications on Hyperledger. It reduced time to value, hides the complexity of the underlying infrastructure and it has a business modeling capability with a business modeling language. It has a way of coding transactions using javascript which is familiar by a lot of developers so it makes easier to develop and mange smart contracts.

Composer Toolkit consists of several tools.

  1. Tools forDev/Architects: Create the business network applications that can get deployed on a network.
  2. Tools forOperations: who needs visibility into the network.
  3. Tools for Administrators: mange the policies on the networks.
  4. Tools for business Analyst: collaborate to the developer to make the business network.

Business analyst model the business model using modeling language that takes by the developer and writes transaction specifications using javascript and creates the final application and then administrator uses composer tools to deploy the application into the execution runtimes which is based on Fabric 1.X. Then the operator manages the good health of the network. This is one of the execution environment. There are two other execution environments. One playground which is available as a web application and primarily used by domain experts and developers. It allows us to create and test business networks. The third type of execution runtime environment is referred to as embedded environments. The idea behind this is to allow developers to code the business application and deployed to Node based embedded simulator and test the application.

Thank you for reading my story. With next stories, I will tell you what are the pre-requisites to setup the Hyperledger fabric on your computer and how to do that on a windows machine.

--

--

Tharindu Sandaruwan

Block-chain Enthusiast,React and React-native Developer,Angular developer