Ethereum as a
Blockchain Competitor to Hyperledger
Ethereum, a cryptocurrency based on blockchain, is making a
bid to become a competitor in the non-cryptocurrency uses of blockchain. In
recent months Ethereum has released the ERC721 protocol for non-fungible assets
for use with their blockchain. An example of the use of the ERC721 nonfungible
token standard with Ethereum is the internet based trading of Cryptotkitties.
Ethereum as a basic cryptocurrency requires that the
producer provide proof of work to create an Ether coin similar to Bitcoin. The
creation of an Ether coin generates a block. The entity keeping the block and
the creator establish a relation through the use of crypto-keys and wallets. A
wallet can be as simple as a piece of paper holding the keys or a fully secure
electronic wallet. If the key values are lost there is no way for the holder of
the Ether coins to get to their assets and they are forfeit.
Ethereum transactions have grown from just over a thousand
transactions per day in August of 2015 to close to one million with a peak of
1,349,890 on January 4, 2018. As of February 18, 2018, the total Ethereum
supply was 97,693,097.41 with a market capitalization of $92,305,323,083 USD.
The three supply types for Ethereum are Genesis, Block Rewards and Uncle
Rewards with Genesis holding the majority supply at 72,009,990 coins.
Cryptokitties as a
Non-Fungible Example
While Cryptokitties sounds frivolous and has no purpose
other than to demonstrate PT Barnum's famous axiom, it shows the potential for
this Hyperledger competitor. Cryptokitties are cartoon images of cats that have
specific digital genes. When two of the Cryptokitties are bred by their owners,
a proprietary algorithm is used to combine the digital genes and produce a new
offspring with characteristics blended from both parents. People buy and sell
these Cryptokitties using Ethereum cryptocurrency. Each Cryptokitty is
supportedby a blockchain. The initial trading of Cryptokitties generated
millions of dollars of activity and shut down the Ethereum network on their
first day of trading, proving sometimes a project's worse enemy is success. You
may laugh at this but a recent “rare” Cryptokitty sold for the equivalent of
$110,000.00 USD. From their launch in November of 2017 to December 17, a mere
27 days, 153,739 kitties were bought and sold at a value of 16.6 million USD.
Changes to Ethereum
Ethereum currently uses proof of work (POW) as a basis,
similar to Bitcoin. Ethereum wants to move to proof of stake (POS) to reduce
computing requirements. Each Ethereum contract uses two components, gas and Ether.
Gas is a subset of Ethereum and is used to pay for the transaction, the more
gas you give, the more computing resource can be applied to your contract. It
wasn’t clear what happens to the resource (measured in Wei) represented by gas,
it could be assumed that is collected by the Ethereum resource provider as
payment for use of the Ethereum network. Wei is the Ethereum currency and is
what is traded in a non-ERC721 token. The fungible type of token is based on
ERC20 fungible token standard and is how Ether is traded.
Getting Gas
In Ethereum, gas is a measure of computational effort. Each
operation is accorded a fixed amount of gas. A possible example would be doing
a simple addition would cost 3 gas, doing a hash, 30 and sending a transaction
21000. A single unit of gas is fixed in price at 10 Szabo which is 1/100,000 of
an ether (a single Ethereum coin.)
Ethereum Denominations
Ether is measured in Finney, Szabo and Wei. Finney was named
for Hal Finney, the first bitcoin user after Satoshi Nakamoto. The Szabo is
named for Nick Szabo who developed bit gold and the concept of smart contracts
and the Wei is named for Wei Dai who developed the concept of bit-money.
ERC20 and ERC721
ERC20
ERC stands for Ethereum Request for Comments and is the
protocol for creating Ethereum standards. ERC20 defines how Ethereum coins are
defined. Coins are not differentiated by serial number and can be broken down
in increments as small as 0.000001 Ether. There is no difference between any
Ethereum coin and another, a digitization of the concept of a real coin. By law
a paper currency must be serialized giving each bill a unique identification,
however coins do not have this restriction, so any coin is treated like any
other, this is the basis of the ERC20 fungible token.
ERC721
ERC721 is a way to create unique asset identifiers in
Ethereum allowing the Ethereum blockchain to be used to track unique assets as
well as standard Ethereum coins. An ERC721 defined asset cannot be portioned,
it is sold or bought in its entirety. For example, the concept of buying a
fractional Cryptokitty is impossible. This ERC721 can be used to generate a
unique identifier for any non-fungible asset such as art, land, diamonds or
other non-currency assets.
Cost of storage
A reoccurring issue in Ethereum is the cost of storage for
the blockchain entries. It is assumed that to store in the Ethereum blockchain
requires more gas per transaction. Since blockchains store data essentially
forever, the cost is paid upfront for permanent storage. An example would be if
the Interplanetary database (IPDB) is used to store blockchain values the cost
for permanent storage is estimated to be $100 USD per gigabyte according to
Jammila Omaar, and Internet Policy intern at IPDB foundation. Using storage
cost models that incorporate pricing models based on storage of multiple copies
and a backup with decreasing storage costs. One gig of storage can store many
transactions with an estimate of 1000 transactions per 16 MB of storage. This
type of cost is leading to the use of IPFS.
The internet protocol file system (IPFS), also known as the
interplanetary file system, is a way of tagging a picture, document or other
object and then using the tag in an Ethereum blockchain instead of storing the
entire object. IPFS is envisioned as a distributed file system that seeks to
connect all computing devices with the same system of files. IPFS is a
versioned file system that tracks versions over time. IPFS is similar to
bittorrent.
The computer object is scanned and a digital hash tag is
generated that is unique (at least as unique as hash can be) for the object.
The object is stored locally but referenced by that tag in the blockchain. The
IPFS entry is two components, a data blob of less than 256kB and an array of
links to other IPFS objects. The link has a name, the hash and the cumulative
size of the linked object. Each time the object is reloaded it is re-scanned
and the hash compared to the existing hash, if the hash is different the new
hash is chained to the old and the object is versioned. This a peer-to-peer
model where the hash is sent to the network and all participants are queried if
they own the object represented by the hash. This indicates that in order for
the ID to be useful the local storage must be accessible to all clients of the
blockchain. The IPFS standard is still evolving and the security issues are
rife. If someone attempts to scan the same object, or a copy, the same hash is
given them. This begs the question: do they then get access to your copy
utilizing your storage resources to access it?
Of course you don’t have to use IPFS and can store links to
data in a local database or filesystem in the blockchain if desired.
Future goals of Ethereum
Listening to the presentations at ETHDenver 2018 showed that
the goal of Ethereum is to replace fiat currencies with digital currency, the
premise being that fiat currencies have nothing to back them while digital
currencies do. None of the speakers seemed to give thought to the myriad of
digital disasters that could devastate a digital-only currency. Essentially
their goal is to replace currencies backed the good faith and credit of
countries with one backed by computer algorithms. Why this is a better basis
for currency was never made clear. Most of the primary presenters at the
conference seemed to be out of western Europe. With this move towards
non-fungible asset tracking in Ethereum it could be a credible contender
against Hyperledger in the non-fungible asset tracking arena.
One of the goals of the ETHDenver hackathon was of course
the hackathon itself. Nearly two dozen projects were pitched. Of the two dozen
or so projects most were fluff. Several involved supply chain, a couple were to
assist Colorado in tracking absentee voters and one was to help track sexual
predators within the volunteer networks such as Doctors without borders and
such. In listening to the people pitch their products I was left with questions
as to whether they, or I, misunderstood the concept of Ethereum and blockchain
as most of their applications could easily be done outside of Ethereum
altogether as a simple App on a Iphone or Android. Of course, since the average
age appeared to be mid to low twenties this could explain the leaning toward
app like constructs.
Competing with Ethereum based Blockchain
The major limiting factor of Ethereum is the dependence on
the concepts of tokens, gas and Ether itself. These concepts bind applications
into using Ether coins as a basis of performing any transactions within the
Ethereum environment as you must utilize gas to do any transaction in their
computing model. They also still use POW and POS to generate transaction models
which are computer and resource intensive. The major issues they discussed at EthDenver
related to scalability and security of their models.
I believe IBM must get Hyperledger into the hands of these
20-something blockchain developers. Perhaps a Hyperthon hackathon in Raleigh or
Atlanta where IBM or other sponsors offer prizes for the best Hyperledger based products with practical
applications. Show how the Hyperledger permissioned model, which doesn’t depend on POW or
POS, is a more scalable, flexible, as well as cost effective solution.
Ethereum Support
There are many startup companies based on Ethereum. Ehtereum
Foundation, Consensys, POANetwork, Blockgeeks, Maiden, Satis, Gitcoin, Dharma
Labs, Livepeer, Zeppelin Solutions, FBG Capital and BlockGeeks are just a few
represented at ETHDenver. All have websites where they share whitepapers and
Ethereum code examples.
Summary
The EthDenver was a fascinating look into the Ethereum
universe. With Ethereum branching out into non-fungible assets they could
become a competitor to Hyperledger if they can overcome scalability and
security issues.