8
Min Read

How to Build Your Own Private Blockchain

Update
Since this post was written, Hyperledger FireFly has reached 1.0. Learn more here!

To develop a blockchain, you can write your own source code. This requires extensive technical knowledge and a significant amount of time. From genesis block to blockchain network, you’re undertaking a lot. But there are simpler ways to get started.

Developers want to launch a blockchain quickly so they can spend more time on user interfaces, stakeholder management, and perfecting a use case for their blockchain applications.

In this article we’re going to talk about how you can build your own blockchain. We’ll give you some tips to get your project off the ground faster using an enterprise blockchain platform. And we’ll talk a little bit about how to save on gas fees as you build, so an investment in bitcoin or ethereum isn’t a prerequisite for reaching production.

Launching Your Blockchain

You've heard about the power of blockchains, but you may think  building a blockchain is really hard. Actually, it can be done in a few steps if you partner with the right blockchain provider.

Let’s walk through the five steps you need to complete to get started, including:

  1. Selecting an appropriate use case
  2. Choosing your protocol
  3. Identifying the best consensus algorithm
  4. Setting up your network
  5. Launching your first smart contract

This may sound pretty simple—especially knowing the amount of time it takes to engineer a blockchain from scratch. But with a blockchain as a service platform all you have to do is make a handful of choices to get a blockchain live.

So let’s walk through each step.

1. Make Sure Blockchain Is Right for Your Use Case

Building on the blockchain isn’t easy. You want to be sure your use case requires blockchain—rather than a simple web application.

To decide if blockchain is right for your use case, ask yourself the following questions:

Are there multiple entities that need to collaborate to do business together?

Blockchain is a great solution when you need to unite parties to do business. Creating a business network, connecting directly with users or fans—any system that requires the sharing of information beyond the borders of a typical office may be right for blockchain.  Creating these multi-party systems makes it easier to collect, store, and safely transmit data.

Are there any areas of your business that rely on trust agents or a centralized authority to act as an intermediary?

Take insurance for example. Imagine you want to create a system that allows different insurance companies to securely share data but at the same time keep proprietary information confidential.

A unique business network like this requires a central repository of information, systems to ensure proper identity management, and a shared ledger to record transactions between organizations.

Is there a lack of trust in your processes or transactions?

Again, thinking about the example above, imagine you want to build a business network that connects competitors. Blockchain allows you to build protections into your network to ensure data is transmitted securely and sensitive information is kept private.

Do you need a traceable, auditable, and verifiable tracking mechanism for your assets?

Supply chains make great blockchain use cases, as they present a system that requires real-time tracking, potential for automated processes and transactions, and verifiable assets and certifications.

Are there parts of your business operations that can be automated and placed in a smart contract to be executed without the need for a manual, human touch?

Want to manage royalty payments, track provenance and future transactions, or remove the paperwork from real estate transactions? Blockchain allows you to digitize legacy systems and facilitate business automatically.  

This image shows the key points to make sure blockchain is right for you.

Read about how blockchain fits in your industry

Blockchain projects deliver immediate business value by automating legacy systems for insurance companies, entertainment platforms, supply chains, and more. To learn how blockchain may improve the way you work, visit our solutions hub here.

2. Choose Your Protocol

When setting up your blockchain, you have to choose a protocol. Ethereum, Hyperledger Fabric, R3 Corda, and Polygon Edge are protocol choices.

Each of these protocol choices may also have different implementations to choose from.

There are various protocol options in the Ethereum family, including  Geth, Polygon Edge, Quorum, Hyperledger Besu. Each client contains different protocol functionality (e.g. private transaction support) and configurable consensus implementations, allowing for individual networks to be built in accordance with consortia-level performance and privacy requirements.

For Corda, you can choose between OS (open source) and Enterprise. Both versions support 100% of the Corda protocol, so there are no real functional differences between the two. The differences are non-functional, with the Enterprise version offering more deployment flexibility to meet the needs of enterprise security standards, notary clusters and support for Hardware Security Modules (HSM).

In the table below we’ll talk about why you might pick each of these protocols.

Ethereum

Most Ethereum smart contracts are written in a specialized smart contract programming language called Solidity. Then compiled into "bytecode" that is deployed onto the chain, alongside the transactions. Ethereum mainnet has low throughput and high transaction fees, but strong security and global reach. Permissioned Ethereum chains allow you to bypass gas fees and improve throughput.

Hyperledger Fabric

Fabric Chaincode is a program, written in Go or Node.js that implements a prescribed interface. Chaincode runs in a separate process from the peer and initializes and manages the ledger state through transactions submitted by applications. Hyperledger Fabric is intended as a foundation for developing applications with a modular architecture.

Corda

Corda CorDapps are written in a restricted subset of Java or Kotlin, defining the flow, data and business logic of the transaction. Then compiled into Jar files that are signed and distributed to the nodes. Corda's flexible smart contracts, flows, and ledger can be great for tracking and managing digital assets.

Kaleido console protocol selection
The Kaleido console makes it easy to launch an application on your protocol of choice.

3. Identify the Best Consensus Algorithm

The public Ethereum mainnet uses the Proof of Work (PoW) algorithm. Bitcoin also uses PoW. PoW algorithms are computational intensive, meaning they require a lot of energy to operate. They are also slower, as the number of transactions they can complete in a given time period is limited.

Ethereum is in the process of migrating to Proof of Stake (PoS). With proof-of-stake (POS), blocks are validated by individuals with the largest holdings, or stakes.

Private chains use permission-based algorithms that rely on voting rounds and digital signatures for state agreement and protection. These algorithms include clique Proof of Authority (PoA), Istanbul BFT (Byzantine Fault Tolerant), and Raft.

PoA or IBFT allow any node that is designated as a “signer” to participate in voting rounds and append a digital signature to a proposed block as proof of validation. Raft uses a single static leader node to deliver blocks to the rest of the network.

PoA or IBFT also employ round changes between blocks, allowing for equitable participation as a mining/proposing node and the democratic removal of unstable or malicious participants.

In a private chain, nodes that mine and propose blocks receive no ether incentive. Their only job is to package transactions in the pending transactions pool and generate a block for validation. In a public chain these gas fees are incentives used to pay the miner.

screenshot of Kaleido console to pick consensus algorithm
If you build a blockchain with Kaleido, selecting your provider and algorithm are a simple click.

For a complete breakdown on your options, read our blog post on consensus algorithms.

This images shows the different types of consensus algorithms.

4. Deploy Your Blockchain

After you’ve choses your protocol and consensus algorithm, you’re ready to start deploying your network. A good blockchain service provider will help you host your environment in one of three ways: cloud, on prem, or hybrid.

With a cloud solution, a third-party hosts your server and there is no need for on-premise hardware. You can then choose to build a public cloud or private cloud, depending on how you want to handle your data. A blockchain provider like Kaleido can integrate with AWS or Azure.

On prem solutions allow you to use hardware you own and hybrid solutions let you use your hardware plus the cloud.

There’s no perfect solution here. Different organizations prefer to handle data in different ways. If you know you’re going to need to scale in the near future, go with the cloud. If you already have a data infrastructure in place, maybe hybrid cloud is right for you.

Deploying your blockchain also requires you to set up members and organizations. Decentralized applications require some type of key management and peer to peer communication setup to confirm identities and facilitate business around the chain.

5. Launch Your First Smart Contract

Kaleido provides enterprise-grade smart contract management as a native component on the Kaleido platform, an industry-first capability that generates REST APIs for any smart contract, making it possible for developers to build on web3 with programming patterns they’re already familiar with.

One of the best ways to use your first smart contract is to deploy a token. Kaleido’s token factory allows you to quickly build and deploy your own token smart contract. All you have to do is set up your free account to get started.

This image shows how a smart contract works.

Conclusion

You can launch a blockchain in five simple steps. It sounds silly based on how much intelligence is required to stand up a network. But the truth is, with a blockchain solution like Kaleido, it probably will take you longer to read this article than it will to launch your first blockchain.

That’s because our platform is built by blockchain developers for blockchain developers. With more than 500 pre-built services and APIs, it’s designed to help you reach production faster and avoid all the early-stage hassles that doom most blockchain projects.

So, if you’re ready to create your own blockchain, click here to get started. And stand up your first blockchain in minutes—for free.

Get Started Today

Kaleido makes it simple to get started. Pick your protocol and get going with a free trial.

Start A Free Trial

Get Started Today

Kaleido makes it simple to get started. Pick your protocol and get going with a free trial.

Start A Free Trial
Interested in Blockchain?

Start learning blockchain and creating enterprise solutions today with a free Kaleido account!

Create Free Account
Don't forget to share this article!
Interested in Blockchain?

Start learning blockchain and creating enterprise solutions today with a free Kaleido account!

Create Free Account

Get Started Today

Kaleido makes it simple to get started. Pick your protocol and get going with a free trial.

Start A Free Trial

Get Started Today

Kaleido makes it simple to get started. Pick your protocol and get going with a free trial.

Start A Free Trial

Related Posts

Blockchain Wallets: A Beginner's Guide to Securing Digital Assets

Blockchain Wallets: A Guide to Securing Digital Assets

Ray Chen
Product Manager
Blockchain Meetup | Future of Blockchain

Thought Leaders Come Together in Raleigh to Discuss the Future of Web3

Marc Lewis
Managing Editor
On-chain or Off-chain Business Logic | A Blockchain Challenge

On-chain or Off-chain Business Logic: A Blockchain Dilemma

Marc Lewis
Managing Editor