[CS198.2x Week 3] Enterprise Blockchain Platforms

In the early days of blockchain development,
the most common projects forked the original Bitcoin codebase to modify small but significant
portions of the codebase. Litecoin and Dogecoin using Scrypt, the memory-hard
hash function, is an example of this. This process required modifying the Bitcoin
source code directly as well as developing a new community and a new set of miners–essentially
starting from scratch on all levels. With the popularization of Ethereum, smart
contracts enabled users, from developers to companies to blockchain activists, to encode
business logic directly into an existing platform rather than making their own from scratch. However, this also means that each application
is competing for resources with all other applications on the same network. And this was demonstrated by Cryptokitties
throttling the Ethereum Network. This is equivalent to one website clogging
the entire Internet. While both these approaches were good starting
points, they always brought with them high overhead and low optimization. What if we want to make a blockchain or distributed
ledger network with lower requirements for trustlessness to decrease overhead? With the increased trust assumptions in permissioned
ledgers, there’s no longer a strong enough need for high computational expenditure to
reduce the chances of attack. Enterprise blockchain platforms exist precisely
to enable businesses to implement their own blockchain use case ideas without starting
from scratch. In this section, we’ll be taking a look
at some enterprise blockchain platforms. We’ll take a look at what blockchain platforms
are out there in the industry today, that companies have started to develop on top of,
rather than building their own blockchains – leveraging modularity in design. Keep in mind that none of the examples within
this lecture are supporting or opposing any particular initiatives. We’re simply sampling a variety of projects
across multiple different facets of the enterprise blockchain space. As the use of blockchain becomes more and
more prevalent, the issue of scalability also grows. The idea of the Scalability Trilemma is that
from security, decentralization, and and scalability all blockchains can only have two out of these
three properties. Initially, most blockchain technologies such
as Bitcoin and Ethereum were built with the two main focuses on security and decentralization. However, as the number of users and transactions
grew, the network slowed down more, and bottlenecks with performance become apparent. Due to this, many newer blockchains are taking
scalability into consideration into their designs, as well as previous ones attempting
to mitigate these issues by incorporating new ideas into existing systems. For example, Ethereum has researched into
sharding and plasma for potential solutions to its scaling problem. And also, Bitcoin has its Lightning network. Instead of attempting to solve scalability
while keeping both security and decentralization, some blockchains sacrifice the decentralized
property in order to allow for scalability. In blockchains such as enterprise blockchains,
they have less of a need for decentralization, as their uses cases are usually limited to
very specific users. Thus, these blockchains still follow the scalability
trilemma and exchange decentralization for scalability and security. Ethereum is the industry standard blockchain
platform for public projects at this point. Ethereum is, as stated on the website, a decentralized
platform that runs smart contracts, which are apps that run exactly as programmed – no
matter what. These smart contracts are what made Ethereum
so popular in the first place – while Bitcoin remains the most apparent use of blockchain
technology, Ethereum generalized the advantages of blockchain. Ethereum’s smart contracts are written in
Solidity, which is a Turing-complete language. This basically means you can theoretically
write any program using it, and, therefore, you can theoretically run any program on the
Ethereum network. This key innovation set the stage for many
of the other platforms that we’ll talk about later in this section. The Enterprise Ethereum Alliance was created
precisely to meet the needs of enterprise projects. Consisting of several traditionally large
names such as Intel, JP Morgan, and Microsoft, along with blockchain organizations such as
Tendermint, Chronicled, and IC3. Their aim is to produce blockchain standards
for businesses of all kinds to use. ConsenSys is a startup founded by one of the
Ethereum cofounders Joe Lubin, meant to develop and foster growth in the Ethereum ecosystem,
helping popular initiatives such as MetaMask and Truffle. Hyperledger, a project of the Linux Foundation,
was one of the earliest responses to the need for easily accessible permissioned or private
blockchain platforms. And is led by Executive Director Brian Behlendorf. Hyperledger focuses on a wide breadth of industries,
including finance, healthcare, and supply chain, some of the most popular use cases. Its goal is to allow any business or consortium
to design their custom blockchain from scratch with as little friction as possible. Hyperledger is made of quite a few different
projects. Hyperledger Fabric is the most popular to
date, initiated by IBM, written in the Go programming language. It allows for smart contracts to be written
on top of the platform, along with confidential transactions to be made between select participants. It is also uses PFBT to come to consensus,
specifically Kafka. Hyperledger Sawtooth is another version of
Hyperledger, originally coming from Intel, using Proof of Elapsed Time as the consensus
mechanism. Using a Nakatomo Consensus style mechanism
was to allow businesses to develop permissionless blockchain networks, whereas Fabric can only
handle permissioned. However, this leads to compromising on privacy. Similar to the Enterprise Ethereum Alliance,
many companies have pledged their support towards Hyperledger, making for over 250 participants
within the consortium. If you’re interested in learning more about
Hyperledger, feel free to check out their edX course. Corda focuses on enabling banks to record,
manage, synchronize, and support financial transactions and agreements through distributed
ledger technology. Though the technology does not use blockchains,
the superset “distributed ledger technology” refers to decentralized record management. This was a project first led by R3, a banking
consortium which attempted to unify major banking institutions around the world. This system, like Hyperledger Fabric, has
no native currency. Additionally, their system requires the participation
of notaries to come to consensus, serving as authority services signing off on previously
seen transactions to provide uniqueness consensus. Corda also has validity consensus guarantees. Upon being asked to notarise a transaction,
a notary will either: (1) Sign the transaction if it has not already signed other transactions
consuming any of the proposed transaction input states, or (2) Reject the transaction
and flag that a double-spend attempt has occurred otherwise. Chain is another blockchain platform also
aimed at financial services. It uses a federated consensus mechanism with
M-of-N signatures required in each quorum for the block to be considered valid for the
individual nodes within the quorum. Chain recognizes that is not currently currently
byzantine fault tolerant, referencing PFBT and Tendermint as “showing promise in this
area,” looking to potentially move in that direction in the future. Chain also produced a cloud-based ledger service
known as Sequence to provide Ledger-as-a-Service products to businesses, handling the infrastructure
on behalf of businesses. Private keys are kept in the hands of the
entities using the network, while Sequence hosts the blockchain on behalf of the users,
meaning that Sequence cannot produce transactions on any other users’ behalf. Ripple is another enterprise blockchain platform
focusing on creating a global network of financial services. To enable such payments, it uses an internal
cryptocurrency called XRP. It runs a federated consensus mechanism, which
we mentioned briefly in week 1. Within the network, there are various types
of participants, which Ripple classifies as: network users and network members. Network members include banks and payment
providers, and provide the core services of the Ripple network such as processing payments
and providing liquidity. The Ripple network enables them to have a
wider reach – to expand payout reach and increase payment volumes. Network users on the other hand include corporates,
small medium-sized enterprises, small banks, and payment providers. Network users use the services enabled by
the Ripple network. For example, platform businesses might look
to send disbursements of high volume and low value to suppliers, merchants, and employees. Banks and payment providers might look to
send payments – rather than process them – and to overcome traditional inefficiencies
of correspondent banking. Ripple network supports processing of real
time payments, sourcing of on demand liquidity, and sending global payments. These are called xCurrent, xRapid, and xVia,
respectively. Rootstock, a Bitcoin sidechain, aims integrate
smart contracts with the Bitcoin blockchain. It has a two way peg, which will be explained
deeper in the next lecture. Essentially, a two way peg is a method by
which data can be transferred between a main chain and a side chain. Rootstock developed out of QixCoin, the first
cryptocurrency blockchain with a Turing-complete language, meant to enable peer to peer games. The QixCoin staff saw Bitcoin as a way to
add security to their platform through merge mining, which reuses the mining power of a
main chain on a side chain. Rootstock aims not only to allow users to
write smart contracts interacting with the Bitcoin network but also to increase scalability,
using blockchain sharding techniques and creating blocks every ten seconds instead of every
ten minutes. Quorum is a lightweight fork of Ethereum,
built for enterprise, with a particular focus on governance, confidentiality, and security
for streamlining global payments. With Quorum, nodes and activity on the network
can be tied to real world identities. It also enables confidentiality, allowing
for details of transactions to be private. Quorum can also be configured to have minimal
trust assumptions between participants. Quorum manages much of its secure message
transfers through a system called Constellation. This allows Quorum to have support for both
public and private transactions. Public transactions are conducted as they
would be on the Ethereum network, whereas private transactions can only be viewed by
participants who have been specified as recipients. Quorum enables configurable consensus mechanisms. QuorumChain is a simple majority voting protocol,
where a certain set of nodes are delegated voting rights. And all nodes with voting rights themselves
can also grant voting rights to others. Quorum also supports pluggable Istanbul BFT
and Raft-based consensus mechanisms. Cosmos is an initiative to connect blockchains
together. Its focus on blockchain interoperability. For example, if I currently want to exchange
Bitcoin for Ether, I’d have to go through an intermediary, like an exchange. Cosmos, however, will allow us to connect
multiple blockchains to the same “hub,” powered by the consensus mechanism called
Tendermint. Tendermint also provides users with a way
to build their own blockchain apps in any language they’d like, through what’s known
as the “application blockchain interface.” Furthermore, blockchains talk to each other
through the “Inter Blockchain Communication” protocol. Cosmos and Tendermint can also be used in
enterprise contexts. Cosmos may provide a way for private blockchains
to connect, even if using different types of protocols, such as a Hyperledger Fabric
blockchain and a Corda blockchain. Tendermint, being an efficient consensus mechanism
which starts with a semi-trusted set of validators, is a prime consensus mechanism for enterprise
blockchain networks as well. We’ll be focusing more on the specifics
of Cosmos and Tendermint come the Scalability lecture. As a short summary of all the enterprise blockchain
platforms we’ve seen in the past couple slides, let’s tie it back to a more fundamental
understanding of blockchain and enterprise use cases in general. We want to focus on the underlying technology
supporting these enterprise blockchain platforms, so it’s always a good idea to look at architecture. Particularly, does the platform architecture
work well with the use cases that the developers want to enable? For example, there’s an obvious difference
between the focus of some enterprise blockchains versus that of public blockchains. We can sum this up nicely by referring back
to the three key properties we mentioned earlier: scalability, decentralization, and security. Enterprise blockchains often times have an
inherent boost in their ability to scale, since they work with smaller networks with
trust guarantees. For the same reason, enterprise blockchains
are less decentralized than public blockchains – and this matches their use case. Because enterprise blockchains are mostly
permissioned, there are also less potential security issues too. Designing with these three properties – scalability,
decentralization, and security – in mind entails further consideration of network architecture
and choice of consensus mechanisms. In the next section, we’ll see the applications
of these, as well as generalizations of enterprise blockchain use cases – and also when not
to use blockchain.

Leave a Reply

Your email address will not be published. Required fields are marked *