broken website links to files, well
beyond the context of blockchain
technology for the overall functionality
of the Internet. Here, BitTorrent peer-to-
peer file-sharing technology has been
merged with the tree and versioning
functionality of Git (initially applied to
software but “confirmable versioning”
as a concept being more widely
applicable to any digital asset). IPFS,
then, is a global, versioned, peer-to-peer
filesystem, a system for requesting and
serving a file from any of the multiple
places it might exist on the Web (versus
having to rely on a central repository)
per a hash (unique code) that confirms
the file’s integrity by checking that spam
and viruses are not in the file.60 IPFS is
congruent with the Bitcoin technical
architecture and ethos, rewarding file-
sharing nodes with Filecoin.
Third, in the area of archiving, a full
ecosystem would also necessarily
include longevity provisioning and end-
of-product-life planning for blockchains.
It cannot be assumed that blockchains
will exist over time, and their
preservation and accessibility is not
trivial. A blockchain archival system
like the Internet Archive and the
Wayback Machine to store blockchains
is needed. Not only must blockchain
ledger transactions be preserved, but we
also need a means of recovering and
controlling previously recorded
blockchain assets at later dates (that
might have been hashed with proprietary
algorithms) because it is likely that
certain blockchains will go out of
business. For example, it is great that
someone established proof-of-existence
of her will on the Bitcoin blockchain in
2014, but how can we know that the will
can be rehashed and authenticated in 60
years when it needs to be verified? If
blockchains are to become the lingua
franca archival mechanism for the whole
of a society’s documents, longevity,
preservation, and access mechanisms
need to be built into the value chain
explicitly. Further, the existence of these
kinds of tools—those that archive out-
of-use blockchains and consider the full
product lifecycle of the blockchain—
could help to spur mainstream adoption.
Ethereum: Turing-Complete
Virtual Machine
Blockchain technology is bringing
together concepts and operations from
several fields, including computing,
communications networks, cryptography,
and artificial intelligence. In Satoshi
Nakamoto’s original plan, there were
three steps, only two of which have been
implemented in Bitcoin 1.0. These are
the blockchain (the decentralized public
transaction ledger) and the Bitcoin
protocol (the transaction system to move
value between parties without third-
party interaction). This has been fine for
the Blockchain 1.0 implementation of
currency and payment transactions, but
for the more complicated tier of
Blockchain 2.0 applications such as the
recording and transfer of more complex
assets like smart property and smart
contracts, we need the third step—a
more robust scripting system—and
ultimately,
ability to run any coin, protocol, or
blockchain). Nakamoto envisioned not
just sending money from point A to point
B, but having programmable money and
a full feature set to enable it. One
blockchain infrastructure project aiming
to deliver a Turing-complete scripting
language and Turing-complete platform
is Ethereum.
Ethereum is a platform and a
programming language for building and
publishing distributed applications.
More fundamentally, Ethereum is a
foundational general-purpose
cryptocurrency platform that is a Turing-
complete virtual machine (meaning that
it can run any coin, script, or
cryptocurrency project). Rather than
being a blockchain, or a protocol
running over a blockchain, or a
metaprotocol running over a protocol
like other projects, Ethereum is a
fundamental underlying infrastructure
platform that can run all blockchains and
protocols, rather like a unified universal
development platform. Each full node in
the Ethereum network runs the Ethereum
Virtual Machine for seamless distributed
program (smart contract) execution.
Ethereum is the underlying blockchain-
agnostic, protocol-agnostic platform for
application development to write smart
contracts that can call multiple other
blockchains, protocols, and
cryptocurrencies. Ethereum has its own
distributed ecosystem, which is
envisioned to include file serving,
messaging, and reputation vouching. The
first component is Swarm (“Ethereum-
Swarm,” not to be confused with the
crowdfunding site Swarm) as a
decentralized file-serving method. A
second component is Whisper
(“Ethereum-Whisper,” also not to be
confused with other similarly named
projects), which is a peer-to-peer
protocol for secret messaging and digital
cryptography. A third component is a
reputation system, a way to establish
reputation and reduce risk between
agents in trustless networks, possibly
provided by TrustDavis, 61 or ideas
developed in a hackathon project,
Crypto Schwartz. 62
Counterparty Re-creates
Ethereum’s Smart Contract
Platform
In November 2014, Counterparty
announced that it had ported the open
source Ethereum programming language