Sie sind auf Seite 1von 41

A

Seminar Report
ON

BLOCKCHAIN

submitted

in partial fulfilment
for the award of the Degree of
Bachelor of Technology
in

Department of Information Technology

SESSION (2017-2018)
Department of Computer Science Engineering
Govt. Engineering College, Ajmer

Rajasthan Technical University, Kota

Submitted To: Submitted by:

Mr. A.R. Saini Simran Singh Bagga

(Department of CS/IT) University ID-14EEAIT056

1
Abstract

Blockchain is a decentralized transaction and data management technology developed first for
Bitcoin cryptocurrency. The interest in Blockchain technology has been increasing since the
idea was coined in 2008. The reason for the interest in Blockchain is its central attributes that
provide security, anonymity and data integrity without any third-party organization in control
of the transactions, and therefore it creates interesting research areas, especially from the
perspective of technical challenges and limitations. In this research, we have conducted a
systematic mapping study with the goal of collecting all relevant research on Blockchain
technology. Our objective is to understand the current research topics, challenges and future
directions regarding Blockchain technology from the technical perspective. We have extracted
41 primary papers from scientific databases. The results show that focus in over 80% of the
papers is on Bitcoin system and less than 20% deals with other Blockchain applications
including e.g. smart contracts and licensing. The majority of research is focusing on revealing
and improving limitations of Blockchain from privacy and security perspectives, but many of
the proposed solutions lack concrete evaluation on their effectiveness. Many other Blockchain
scalability related challenges including throughput and latency have been left unstudied. On
the basis of this study, recommendations on future research directions are provided for
researchers

2
MOTIVATIONS

In 2009, as the world was reeling from a meltdown in the financial sector and politicians were
musing about what could and should be done, a project called Bitcoin quietly dropped onto the
global stage. This technology, which defined an entirely new form of money, was a reaction to
the crisis at hand. With a cold sneer, it turned away from the humans that had caused the tumult
and embraced a new paradigm, in which both the ruleset of an economy and its execution are
provided by software rather than people. Bitcoin sought to do two things: make the rules
governing money entirely predictable and transparent and give people the ability to transfer it
over the Internet without the need for corporate surrogates.

Within this technology, however, lie the seeds of something much bigger. The nucleus of
Bitcoin’s architecture, a structure called a “blockchain,” is now the basis of proposed
applications in nearly every sector. Like Bitcoin, these applications are being designed to
remove rent-seeking corporations from digital processes while giving users more control over
their data.

Blockchains borrow from research into distributed systems, cryptography, computer security,
and game theory, to deliver a new type of shared database. A blockchain driven database is
replicated on multiple computers across many jurisdictions. Additions are made by these same
computers, which need share neither an affiliation nor any modicum of trust for the updates to
remain secure. These features are widely considered to be a breakthrough in computer science.

As the success of Bitcoin has demonstrated, blockchain technology is useful for projects that
require real-time collaboration between mutually-suspicious contributors over the Internet.
However, the technology is far from mature. Further development—especially in the areas of
usability, security, and privacy—are necessary. At the community level, more work needs to
be done to educate both the public and relevant regulators, whose stance regarding blockchain
applications is still malleable.

The work to solve these problems is underway and is already richly funded. However, most of
the money entering the blockchain ecosystem is being funnelled to individual projects, each of
which is trying to fix the systemic flaws of the technology in isolation. New blockchains are
created by the day. It is not at all evident whether they are learning from one another’s failures
and successes. Nor is it clear whether these parallel, often overlapping technologies are being
designed to interoperate with one another.

Blockchains are incredibly well equipped to coordinate the activities of mutually mistrusting
peers who want to collaborate in an environment with a predefined set of rules. But when the
rules themselves—thus the very design of a blockchain—come into question, competitors find
themselves once more in the awkward position of having to negotiate and collaborate while
somehow protecting their advantages.

3
Table of Contents:

Chapter 1. Introduction 5

Chapter 2. Background 6

Chapter3. Introduction Bitcoin’s Blockchain 8

Chapter4. DATA STORAGE: What is a blockchain? 9

Chapter5. DATA DISTRIBUTION: How is new data communicated? 10

Chapter6. Public Vs Private Blockchains 12

Chapter7. CONSENSUS: How do you resolve conflicts? 14

Chapter8. UPGRADES: How do you change the rules? 15

Chapter9. WRITE ACCESS: How do you control who can write data? 16

Chapter10. WRITE ACCESS: How do you control who can write data? 17

Chapter11. Features of a blockchain 20

Chapter12. Industry-specific applications 21

Chapter 13. Challenges to growth and mainstream adoption 24

Chapter14.Current and prior Efforts 27

Chapter15. Hard for Hackers? 28

Chapter16. INCENTIVES: How do you pay validators? 32

Chapter17.IEEE INITIATIVE PROPOSALS 34

Chapter18. EDUCATION 36

Chapter19. Considerations 37

Chapter20. Conclusion 40

Chapter21. References 41

4
1. Introduction

Currency transactions between persons or companies are often centralized and controlled by a
third-party organization. Making a digital payment or currency transfer requires a bank or
credit card provider as a middleman to complete the transaction. In addition, a transaction
causes a fee from a bank or a credit card company. The same process applies also in several
other domains, such as games, music, software etc. The transaction system is typically
centralized, and all data and information are controlled and managed by a third-party
organization, rather than the two principal entities involved in the transaction. Blockchain
technology has been developed to solve this issue. The goal of Blockchain technology is to
create a decentralized environment where no third party is in control of the transactions and
data.

Blockchain is a distributed database solution that maintains a continuously growing list of data
records that are confirmed by the nodes participating in it. The data is recorded in a public
ledger, including information of every transaction ever completed. Blockchain is a
decentralized solution which does not require any third-party organization in the middle. The
information about every transaction ever completed in Blockchain is shared and available to
all nodes. This attribute makes the system more transparent than centralized transactions
involving a third party. In addition, the nodes in Blockchain are all anonymous, which makes
it more secure for other nodes to confirm the transactions. Bitcoin was the first application that
introduced Blockchain technology. Bitcoin created a decentralized environment for
cryptocurrency, where the participants can buy and exchange goods with digital money.

However, even though Blockchain seems to be a suitable solution for conducting transactions
by using cryptocurrencies, it has still some technical challenges and limitations that need to be
studied and addressed. High integrity of transactions and security, as well as privacy of nodes
are needed to prevent attacks and attempts to disturb transactions in Blockchain. In addition,
confirming transactions in the Blockchain requires a computational power.

It is important to identify what topics have been already studied and addressed in Blockchain
and what are currently the biggest challenges and limitations that need further studies. To
address these questions, we decided to use a systematic mapping study process to identify
relevant papers related to Blockchain. In the systematic mapping study, we applied a well-
designed research protocol to search for material in scientific databases. The produced map of
current research on Blockchain will help other researchers and practitioners in identifying
possible research areas and questions for future research.

Although cryptocurrencies are also a business and management topic, we decided to narrow
down the research topic to the technical perspective of Blockchain. Our objective was to find
and map all papers with technical viewpoints on Blockchain. We were interested in finding
Blockchain research topics related to various technical areas, such as security, performance,
data integrity, privacy, and scalability.

5
2. Background

Blockchain, mostly known as the technology running the Bitcoin cryptocurrency, is a public
ledger system maintaining the integrity of transaction data. Blockchain technology was first
used when the Bitcoin cryptocurrency was introduced. To this day, Bitcoin is still the most
commonly used application using Blockchain technology. Bitcoin is a decentralized digital
currency payment system that consists of a public transaction ledger called Blockchain. The
essential feature of Bitcoin is the maintainability of the value of the currency without any
organization or governmental administration in control. The number of transfers and users in
the Bitcoin network is constantly increasing. In addition, the conversions with traditional
currencies, e.g. KRW, EUR and USD, occur constantly in currency exchange markets. Bitcoin
has therefore gained the attention of various communities and is currently the most successful
digital currency using Blockchain technology.

Bitcoin uses the public key infrastructure(PKI) mechanism. In PKI, the user has one pair of
public and private keys. The public key is used in the address of the user Bitcoin wallet, and
the private key is for the authentication of the user. The transaction of Bitcoin consists of the
public key of the sender, multiple public keys of the receiver, and the value transferred. In
about ten minutes, the transaction will be written in a block. This new block is then linked to a
previously written block. All blocks, including information about every transaction made, are
stored in the disk storage of the users, called nodes. All the nodes store information about all
recorded transactions of the Bitcoin network and check the correctness of each new transaction
made by using previous blocks. The nodes are rewarded by checking the correctness of
transactions. This method is called mining, and it is confirmed with Proof-of-Work, which is
one of the main concepts of Blockchain technology. When all transactions are successfully
confirmed, a consensus exists between all the nodes. The new blocks are linked to previous
blocks and all the blocks are aligned in one continuous chain. This chain of blocks is the public
ledger technique of Bitcoin, called Blockchain.

Blockchain is the decentralized managing technique of Bitcoin, designed for issuing and
transferring money for the users of the Bitcoin currency. This technique can support the public
ledger of all Bitcoin transactions that have ever been executed, without any control of a third-
party organization. The advantage of Blockchain is that the public ledger cannot be modified
or deleted after the data has been approved by all nodes. This is why Blockchain is well-known
of its data integrity and security characteristics. Blockchain technology can also be applied to
other types of uses. It can for example create an environment for digital contracts and peer-to-
peer data sharing in a cloud service.

Blockchain technology has also some technical challenges and limitations that have been
identified. Swan presents seven technical challenges and limitations for the adaptation of
Blockchain technology in the future:

6
Throughput: The potential throughput of issues in the Bitcoin network is currently maximized
to 7tps (transactions per second). Other transaction processing networks are VISA (2,000tps)
and Twitter (5,000tps). When the frequency of transactions in Blockchain increases to similar
levels, the throughput of the Blockchain network needs to be improved.
Latency: To create sufficient security for a Bitcoin transaction block, it takes currently roughly
10 minutes to complete one transaction. To achieve efficiency in security, more time has to be
spent on a block, because it has to outweigh the cost of double spending attacks. Double-
spending is the result of successful spending of money more than once. Bitcoin protects against
double spending by verifying each transaction added to the block chain, to ensure that the
inputs for the transaction have not been spent previously. This makes latency a big issue in
Blockchain currently. Making a block and confirming the transaction should happen in
seconds, while maintaining security. To complete a transaction e.g. in VISA takes only a few
seconds, which is a huge advantage compared to Blockchain.
Size and bandwidth: At the moment, the size of a Blockchain in the Bitcoin network is over
50,000MB (February 2016). When the throughput increases to the levels of VISA, Blockchain
could grow 214PB in each year. The Bitcoin community assumes that the size of one block is
1MB, and a block is created every ten minutes. Therefore, there is a limitation in the number
of transactions that can be handled (on average 500 transaction in one block).
Security: The current Blockchain has a possibility of a 51% attack. In a 51% attack a single
entity would have full control of the majority of the network’s mining hash-rate and would be
able to manipulate Blockchain. To overcome this issue, more research on security is necessary.
Wasted resources: Mining Bitcoin wastes huge amounts of energy ($15million/day). The waste
in Bitcoin is caused by the Proof-of-Work effort. There are some alternatives in industry fields,
such as proof-of-stake. With Proof-of-Work, the probability of mining a block depends on the
work done by the miner. However, in Proof-of-Stake, the resource that is compared is the
amount of Bitcoin a miner holds. For example, someone holding 1% of the Bitcoin can mine
1% of the “Proof-of-Stake blocks”. The issue with wasted resources needs to be solved to have
more efficient mining in Blockchain.
Usability: The Bitcoin API for developing services is difficult to use. There is a need to develop
a more developer-friendly API for Blockchain. This could resemble REST APIs.
Versioning, hard forks, multiple chains: A small chain that consists of a small number of nodes
has a higher possibility of a 51% attack. Another issue emerges when chains are split for
administrative or versioning purposes.
Overall, Blockchain as a technology has the potential to change the way how transactions are
conducted in everyday life. In addition, the applications of Blockchain are not limited to
cryptocurrencies, but the technology could be possibly applied in various environments where
some forms of transactions are done. The research on the possibilities of Blockchain in
applications is certainly an interesting area for future research, but at the moment Blockchain
suffers from technical limitations and challenges. Anonymity, data integrity and security
attributes set a lot of interesting challenges and questions that need to be solved and assessed
with high quality research.

7
3. INTRODUCING BITCOIN’S BLOCKCHAIN

8
4. DATA STORAGE: What is a blockchain?

A blockchain is just a file. A blockchain by itself is just a data structure. That is, how data
is logically put together and stored. Other data structures are databases (rows, columns,
tables), text files, comma separated values (csv), images, lists, and so on. You can think of
a blockchain competing most closely with a database.

Blocks in a chain = pages in a book


For analogy, a book is a chain of pages. Each page in a book contains:

• The text: for example, the story.

• Information about itself: at the top of the page there is usually the title of the book and
sometimes the chapter number or title; at the bottom is usually the page number which
tells you where you are in the book. This ‘data about data’ is called meta-data.

Similarly, in a blockchain block, each block has:

• The contents of the block, for example in bitcoin is it the bitcoin transactions, and the
miner incentive reward (currently 25 BTC).

• A ‘header’ which contains the data about the block. In bitcoin, the header includes
some technical information about the block, a reference to the previous block, and a
fingerprint (hash) of the data contained in this block, among other things. This hash is
important for ordering.

Block ordering in a blockchain

Page by page. With books, predictable page numbers make it easy to know the order of the
pages. If you ripped out all the pages and shuffled them, it would be easy to put them back
into the correct order where the story makes sense.

Block by block. With blockchains, each block references the previous block, not by ‘block
number’, but by the block’s fingerprint, which is cleverer than a page number because the
fingerprint itself is determined by the contents of the block.

9
The reference to previous blocks creates a chain of blocks – a blockchain

5. DATA DISTRIBUTION: How is new data communicated?

Peer to peer is one way of distributing data in a network. Another way is client-server. You
may have heard of peer-to-peer file sharing on the Bit Torrent network where files are shared
between users, without a central server controlling the data. This is why Bit Torrent has
remained resilient as a network.

Client-server

In the office environment, often data is held on servers, and wherever you log in, you can
access the data. The server holds 100% of the data, and the clients trust that the data is
definitive. Most of the internet is client-server where the website is held on the server, and
you are the client when you access it. This is very efficient, and a traditional model in
computing.

Peer-to-peer

In peer-to-peer models, it’s more like a gossip network where each peer has 100% of the
data (or as close to it as possible), and updates are shared around. Peer-to-peer is in some
ways less efficient than client-server, as data is replicated many times; once per machine,
and each change or addition to the data creates a lot of noisy gossip. However, each peer is
more independent, and can continue operating to some extent if it loses connectivity to the
rest of the network. Also, peer-to-peer networks are more robust, as there is no central
server that can be controlled, so closing down peer-to-peer networks is harder.

10
The problems with peer-to-peer

With peer-to-peer models, even if all peers are ‘trusted’, there can be a problem of
agreement or consensus – if each peer is updating at different speeds and have slightly
different states, how do you determine the “real” or “true” state of the data?

In an ‘untrusted’ peer-to-peer network where you can’t necessarily trust any of the peers,
how do you ensure that the system can’t easily be corrupted by bad peers?

11
6. Public Vs Private Blockchains

There is a big difference in what technologies you need, depending on whether you allow
anyone to write to your blockchain, or known, vetted participants. Bitcoin allows anyone
to write to its ledger.

Public blockchains. Private blockchains.

Ledgers can be ‘public’ in two senses: Conversely, a ‘private’ blockchain


network is where the participants are
1. Anyone, without permission known and trusted: for example, an
granted by another authority, can write industry group, or a group of companies
data owned by an umbrella company.

2. Anyone, without permission Many of the mechanisms aren’t needed –


granted by another authority, can read or rather they are replaced with legal
data contracts.

This changes the technical decisions as


Usually, when people talk about public to which bricks are used to build the
blockchains, they mean anyone-can-write. solution.
Because bitcoin is designed as a ‘anyone-can-write’ blockchain, where participants aren’t
vetted and can add to the ledger without needing approval, it needs ways of arbitrating
discrepancies (there is no ‘boss’ to decide), and defence mechanisms against attacks (anyone
can misbehave with relative impunity, if there is a financial incentive to do so). These create
cost and complexity to running this blockchain.

12
7. CONSENSUS: How do you resolve conflicts?

A common conflict is when multiple miners create blocks at roughly the same time.
Because blocks take time to be shared across the network, which one should count as the
legit block?

Example. Let’s say all the nodes on the network have synchronised their blockchains, and
they are all on block number 80.
If three miners across the world create ‘Block 81’ at roughly the same time, which ‘Block
81’ should be considered valid? Remember that each ‘Block 81’ will look slightly different:
They will certainly contain a different payment address for the 25 BTC block reward; and
they may contain a different set transaction. Let’s call them 81a, 81b, 81c.

Which block should count as the legit one?

How do you resolve this?

Longest chain rule. In bitcoin, the conflict is resolved by a rule called the “longest chain
rule”.

In the example above, you would assume that the first ‘Block 81’ you see is valid. Let’s say
you see 81a first. You can start building the next block on that, trying to create 82a:

Treat the first block you see as legitimate.

However, in a few seconds you may see 81b. If you see this, you keep an eye on it. If later
you see 82b, the “longest chain rule” says that you should regard the longer ‘b’ chain as the
valid one (…80, 81b, 82b) and ignore the shorter chain (…80, 81a). So you stop trying to
make 82a and instead start trying to make 83b:

13
Longest chain rule: If you see multiple blocks, treat the longest chain as
legitimate.

The “longest chain rule” is the rule that the bitcoin blockchain ecosystem uses to resolve these
conflicts which are common in distributed networks.

However, with a more centralised or trusted blockchain network, you can make decisions by
using a trusted, or senior validator to arbitrate in these cases.

14
8. UPGRADES: How do you change the rules?

As a network as a whole, you must agree up front what kind of data is valid to be passed
around, and what is not. With bitcoin, there are technical rules for transactions (Have you
filled in all the required data fields? Is it in the right format? etc), and there are business
rules (Are you trying to spend more bitcoins than you have? Are you trying to spend the
same bitcoins twice?).

Rules change. As these rules evolve over time, how will the network participants agree
on the changes? Will there be a situation where half the network thinks one transaction
is valid, and the other half doesn’t think so because of differences in logic?

In a private, controlled network where someone has control over upgrades, this is an easy
problem to solve: “Everyone must upgrade to the new logic by 31 July”.

However, in a public, uncontrolled network, it’s a more challenging problem.

With bitcoin, there are two parts to upgrades:

1. Suggest the change (BIPs). 2. Adopt the change (miners).

First, there is the proposal stage where The upgrade can be downloaded by nodes
improvements are proposed, discussed, and and block makers (miners) and run, but
written up. A proposal is referred to as a only if they want to (you could imagine a
“BIP” – a “Bitcoin Improvement change which reduces the mining reward
Proposal”. from 25 BTC per block to 0 BTC).
If it gets written into the
Bitcoin core software on
GitHub, it can then form
part of an upgrade – the
next version of “Bitcoin
core” which is the most
common “reference
implementation” of the
protocol.

If the majority of the network (in bitcoin, the majority is determined by computational
power) choose to run a new version of the software, then new-style blocks will be created
faster than the minority, and the minority will be forced to switch or become irrelevant in a
“blockchain fork”. So, miners with lots of computational power have a good deal of “say”
as to what gets implemented.

15
9. WRITE ACCESS: How do you control who can write data?

In the bitcoin network, theoretically anyone can download or write the software code and start
validating transactions and creating blocks. Simply go to https://bitcoin.org/en/download and run
the “Bitcoin core” software.

Your computer will act as a full node which means:

• Connecting to the bitcoin network


• Downloading the blockchain
• Storing the blockchain
• Listening for transactions
• Validating transactions
• Passing on valid transactions
• Listening for blocks
• Validating blocks
• Passing on valid blocks
• Creating blocks
• Mining’ the blocks

The source code to this “Bitcoin core” software is published on GitHub:


https://github.com/bitcoin/bitcoin. If you are so inclined, you can check the code and
compile and run it yourself instead of downloading the pre-packaged software on
bitcoin.org.

Permission less

Note that you don’t need to sign up, log in, or apply to join the network. You can just go
ahead and join in. Compare this with the SWIFT network, where you can’t just download
the software and start listening to SWIFT messages. In this way, some call bitcoin
‘permission less’ vs SWIFT which would be ‘permissioned’.

Permission less is not the only way

You may want to use blockchain technology in a trusted, private network. You may not
want to publish all the rules of what a valid transaction or block looks like. You may want
to control how the network rules are changed. It is easier to control a trusted private network
than an untrusted, public free-for-all like bitcoin.

16
10.THE BLOCKCHAIN MODEL OF CRYPTOGRAPHY

A: The Blockchain Model


We begin by informally describing the trust model and assumptions. We then propose a formal
framework for the “blockchain model of cryptography” for specifying and reasoning about the
security of protocols.

In this paper, the blockchain refers to a decentralized set of miners who run a secure consensus
protocol to agree upon the global state. We therefore will regard the blockchain as a conceptual
trusted party who is trusted for correctness and availability, but not trusted for privacy. The
blockchain not only maintains a global ledger that stores the balance for every pseudonym, but
also executes user-defined programs. More specifically, we make the following assumptions:
• Time. The blockchain is aware of a discrete clock that increments in rounds. We use the terms

rounds and epochs interchangeably.


• Public state. All parties can observe the state of the blockchain. This means that all parties

can observe the public ledger on the blockchain, as well as the state of any user defined
blockchain program (part of a contract protocol).
• Message delivery. Messages sent to the blockchain will arrive at the beginning of the next

round. A network adversary may arbitrarily reorder messages that are sent to the blockchain
within the same round. This means that the adversary may attempt a front-running attack (also
referred to as the rushing adversary by cryptographers), e.g., upon observing that an honest
user is trading a stock, the adversary pre-empts by sending a race transaction trading the same
stock. Our protocols should be proven secure despite such adversarial message delivery
schedules.
We assume that all parties have a reliable channel to the blockchain, and the adversary
cannot drop messages a party sends to the blockchain. In reality, this means that the overlay
network must have sufficient redundancy. However, an adversary can drop messages
delivered between parties off the blockchain.

• Pseudonyms. Users can make up an unbounded polynomial number of pseudonyms when


communicating with the blockchain.
• Correctness and availability. We assume that the blockchain will perform any prescribed
computation correctly. We also assume that the blockchain is always available.
Advantages of a generic blockchain model. We adopt a generic blockchain model where the
blockchain can run arbitrary Turing-complete programs. In comparison, previous and
concurrent works [7], [17], [40], [50] retrofit the artefacts of Bitcoin’s limited and hard-to-use
scripting language. In Section VII and the online version [37], we present additional theoretical
results demonstrating that our generic blockchain model yields asymptotically more efficient
cryptographic protocols.
B: Formally Modelling the Blockchain
Our paper adopts a carefully designed notational system such that readers may understand
our constructions without understanding the precise details of our formal modelling.

17
We stress, however, that we give formal, precise specifications of both functionality and
security, and our protocols are formally proven secure under the Universal Composability (UC)
framework. In doing so, we make a separate contribution of independent interest: we are the
first to propose a formal, UC-based framework for describing and proving the security of
distributed protocols that interact with a blockchain — we refer to our formal model as “the
blockchain model of cryptography”.
Programs, wrappers, and functionalities. In the remainder of the paper, we will describe ideal
specifications, as well as pieces of the protocol executed by the blockchain, the users, and the
manager respectively as programs written in pseudocode. We refer to them as the ideal
program (denoted Ideal), the blockchain program (denoted B or Blockchain), and the
user/manager program (denoted User P) respectively.

All of our pseudo-code style programs have precise meanings in the UC framework. To
“compile” a program to a UC-style functionality or protocol, we apply a wrapper to a program.
Specifically, we define the following types of wrappers:
• The ideal wrapper F (·) transforms an ideal program Ideal P into a UC ideal functionality

F(Ideal P).
• The blockchain wrapper G(·) transforms a blockchain program B to a blockchain
functionality G(B). The blockchain functionality G(B) models the program executing on the
blockchain.
• The protocol wrapper Π (·) transforms a user/manager program User P into a user-side or
manager-side protocol Π (User P).
One important reason for having wrappers is that wrappers implement a set of common features
needed by every smart contract application, including time, public ledger, pseudonyms, and
adversarial reordering of messages — in this way, we need not repeat this notation for every
blockchain application. We defer our formal UC modelling to Appendix B. This will not hinder
the reader in understanding our protocols as long as the reader intuitively understands our
blockchain model and assumptions described in Section II-A. Before we describe our
protocols, we define some notational conventions for writing “programs”. Readers who are
interested in the details of our formal model and proofs can refer to Appendix B.
C. Conventions for Writing Programs
Our wrapper-based system modularizes notation and allows us to use a set of simple
conventions for writing user-defined ideal programs, blockchain programs, and user
protocols. We describe these conventions below.
Timer activation points. The ideal functionality wrapper F (·) and the blockchain wrapper G
(·) implement a clock that advances in rounds. Every time the clock is advanced, the wrappers
will invoke the Timer activation point. Therefore, by convention, we allow the ideal program
or the blockchain program can define a Timer activation point. Timeout operations (e.g.,
refunding money after a certain timeout) can be implemented under the Timer activation
point.

18
Delayed processing in ideal programs. When writing the blockchain program, every message
received by the blockchain program is already delayed by a round due to the G (·) wrapper.
When writing the ideal program, we introduce a simple convention to denote delayed
computation. Program instructions that are written in grey background denote computation
that does not take place immediately but is deferred to the beginning of the next timer click.
This is a convenient shorthand because in our real-world protocol, effectively any
computation done by a blockchain functionality will be delayed. For example, in our Ideal
Pcash ideal program (see Figure 3), whenever the ideal functionality receives a mint or pour
message, the ideal adversary S is notified immediately; however, processing of the messages
is deferred till the next timer click. Formally, delayed processing can be implemented simply
by storing state and invoking the delayed program instructions on the next Timer click. By
convention, we assume that the delayed instructions are invoked at the beginning of the Timer
call. In other words, upon the next timer click, the delayed instructions are executed first.
Pseudonymise. All party identifiers that appear in ideal programs, blockchain programs, and
user-side programs by default refer to pseudonyms. When we write “upon receiving message
from some P”, this accepts a message from any pseudonym. Whenever we write “upon
receiving message from P”, without the keyword some, this accepts a message from a fixed
pseudonym P, and typically which pseudonym we refer to is clear from the context.

Whenever we write “send m to G(B) as nym P” inside a user program, this sends an internal
message (“send”, m, P) to the protocol wrapper Π. The protocol wrapper will then
authenticate the message appropriately under pseudonym P.

When the context is clear, we avoid writing “as nym P”, and simply write “send m to G(B)”.
Our formal system also allows users to send messages anonymously to the blockchain –
although this option will not be used in this paper.
Ledger and money transfers. A public ledger is denoted ledger in our ideal programs and
blockchain programs. When a party sends $amt to an ideal program or a blockchain program,
this represents an ordinary message transmission. Money transfers only take place when ideal
programs or blockchain programs update the public ledger. In other words, the symbol $ is
only adopted for readability (to distinguish variables associated with money and other
variables) and does not have special meaning or significance. One can simply think of this
variable as having the money type.

19
11.Features of a blockchain

A few things happen when you allow anyone to participate in the operation of a blockchain

• Collaboration among competitors - Entities that would normally be in


competition with one another have a common platform in which they can openly
collaborate without fear that one will surreptitiously circumvent the rules.
• Flexibility - It neither matters who the participants in a blockchain are, nor
whether they remain the same over time. Therefore, applications can be built in which
the composition of the stakeholders is continuously shifting.
• Resilience - An open invitation leads to a diversity of participants, each of which
has a full copy of the blockchain running the application. This redundancy makes the
system resilient to attacks and resistant to censorship.
• Distributed Verification - Programs and data reside in multiple locations and
can be verified by many parties independent of one another.

20
12.Industry-specific applications

Every industry stands to benefit from at least one of the above features, should blockchain
technology mature. Below we examine a selection of the industries that may be impacted. This
list is by no means exhaustive.

Finance
Cryptocurrency was the first blockchain application. Bitcoin gave the individual full possession
over her money in the digital realm by making her the owner of a cryptographic key necessary
for the transfer of funds. But the transfer between individuals is only the most basic program
you can perform on a unit of value. More complex transaction types can be built into a
cryptocurrency that replicate the full suite of financial instruments, such as loans, bonds and
stocks, now offered by most institutions.

Blockchains may also increase efficiencies behind the scenes at financial institutions especially
in the process of interbank settlement. For example, the Depository Trust and Clearing
Corporation in New York City, a company that operates as a third party in the business of
securities trading, has plans to begin recording $11 trillion worth of credit default swaps in late
20181.

Others in the blockchain space are hoping to use the technology to ensure that access to basic
financial tools are equally distributed. To this end, companies are leveraging cryptocurrencies
to provide low cost remittance services for immigrant populations, and microloans and banking
services for businesses and individuals in underdeveloped nations.

Energy
Blockchain technology will likely change the way that electricity is bought and sold, as well as
the way that it is delivered. At the edge of the grid—where electricity dead-ends in our heaters
and appliances—consumers are beginning to produce their own electricity. Blockchain
technology may provide a way to incorporate these new players into the market, perhaps with
the creation of open, distributed energy trading platforms.2

Blockchain platforms will also likely take some role in replacing the systems that now manage
the distribution of electricity. As a smarter grid is built, blockchains may aid in facilitating
dynamic signalling between producers and consumers, especially as the line between those
roles continues to blur.

21
Identity
Bitcoin gave individuals control over when and how they spend their money. Blockchain
technology may give individuals the same control over their reputation and credentials by
decentralizing the process of authentication and authorization. Today most internet services
offer users one of two ways to authenticate their identities. They either require users to create
a unique registration for that individual site; or, they outsource this identity verification to
another larger web service such as Google, Facebook, or Twitter. Blockchain applications have
been proposed that allow users to manage accounts containing various authenticated fragments
of their identity, which they then can selectively disclose.3

Blockchain-based identity management solutions have been proposed as a way to provide


emergency processing of refugees who were forced to leave their countries of origin without
documentation. And in the future, people who use blockchain identity management systems,
may be able to more easily recover their records in the case of emergencies.

Supply Chains
Blockchains have been proposed as a replacement for documentation processes in the shipping
industry, due to the many geographical regions and jurisdictions that a product moves through
on its way to the consumer. One break in the chain of documentation can result in delayed
shipment and lost profits. Blockchains may provide a way for all certification and
documentation to be gathered in one place that is accessible to all parties but impossible to
falsify.4

As products move between ports, blockchains may also provide documentation to the consumer
about the lifecycle of a product, information that may ethically inform their choices about what
to buy.

Blockchains may also aid in securing the pharmaceutical supply chain to reduce the prevalence
of counterfeit drugs.5

Internet of Things and Edge Computing


The Internet of Things is not a one-way street. It is transforming everyday appliances into
Internet portals, while also using those devices to harvest data. For example, cameras in our
cars monitor surrounding vehicles and alert drivers when they’re getting too close.

Edge computing is a strategy for moving the computations running the Internet of Things onto
the devices that are themselves providing data feeds for the system.

22
Blockchains may have some utility as a control system for edge computing. Some work has
already been done to use the Fabric distributed ledger (a product of the
Hyperledger group) as an executive process control for edge nodes in a distributed IoT
architecture. 6

Blockchains may also provide a way to authenticate users across multiple IoT devices and to
secure sessions.

In scenarios where the price of IoT services is determined by rate of usage, blockchains and
smart contracts may offer a way to transparently meter service delivery. In all pricing schemes,
blockchains may provide a new way to settle debts quickly and securely.

Telemedicine
Individuals receive their healthcare from a diverse collection of providers all of whom need
access to the same patient information. Furthermore, these records must be up to date and
authenticated by reliable sources.

Practitioners in the field of telemedicine are exploring blockchains as a repository for patient
records. Such a tool would remove the healthcare system as the central manager of health-
related documents and instead entrust patients with responsibility over their own data.7

Though patients would themselves control the transfer of health records on the blockchains,
those records would be authenticated by the practitioners who uploaded them.

Radiation-hardened computing
Computing systems that operate near radioactive sources, such those used in space missions
and at nuclear facilities, are at a high risk of malfunction. Advances have been made to design
electronics that can withstand bombardment from ionizing radiation. But another solution to
the problem of securing mission-critical systems in unfavourable environments, is to create a
network of redundant systems, one that is tolerant of individual failures. Blockchain networks,
due their fault tolerance, may provide a novel solution to this problem.

23
13.CHALLENGES TO GROWTH AND MAINSTREAM ADOPTION

Companies and developers are working to broaden the functionality of blockchain


technologies. The prevailing ethos of the community is that no idea is too big. The
infrastructure these ideas are built upon, however—the blockchain designs themselves—are
not yet able to support the complexities that their inventors have in mind. Important technical
developments are still outstanding, regarding the usability and security of blockchain
technology.

In addition, there is considerable uncertainty as to how specific applications of blockchain


technology will fit into current regulatory schemes.

Scaling
One undeniable aim of the typical blockchain or cryptocurrency developer is to design a system
that will attract as many users as possible. This is perhaps true of any start up. But it is
particularly true of blockchain-based start-ups, which are implementing applications on top of
a novel cryptocurrency. In these cases, the demand for the service directly impacts the price of
the currency used to operate the application.

While mass adoption at first seems desirable, no blockchain now available to the public is ready
to support any amount of heavy traffic. This fact is aptly demonstrated by the constraints of the
two most popular blockchains. Bitcoin is able to process around seven transactions per second.
Ethereum, while faster, can still only handle around 20 transactions per second. Both rates pale
in comparison to the performance of transaction networks such as Visa and Mastercard which
process thousands of card swipes per second.8

Computing applications will require processing capabilities nanosecond to femtosecond (ns—


fs) range.

24
Most of the applications that are being proposed by blockchain start-ups will require a high
capacity for data storage. For example, an application that uses a blockchain to execute
insurance contracts and automatically dispense reimbursements for claims will require access
to data about the customer profile as well as any other documentation that is relevant to the
case. Given the state of the technology, it is not feasible for all this data to be stored on a
blockchain. Distributed file storage systems may provide a solution, but they are still under
construction.

Security and Reliability


Although the design and code for most blockchains are publicly available, their updates and
releases are not formally verified or validated for security and reliability. Such practices have
led to coding errors, vulnerabilities, and bugs that have caused substantial financial loss to
users.910

Blockchains are fast becoming a repository for applications known as “smart contracts.” Smart
contracts are transactions that are programmed to follow complex rules, which, in the setting
of a blockchain, are then automatically and irreversibly executed. For example, a blockchain
could be used to make a transaction that would execute only if the Pittsburgh Stealers were
demonstrated to have won the Super Bowl in 2018.

Writing smart contracts is a new skill that is fraught with peril. Once written, these programs
are irreversible. Developers must be sure that the code they write does what they think it does.
Developers must also understand the business logic of their programs, to ensure that they
function exactly as intended.

Accessibility

Blockchain-based applications require users to learn an entirely different set of security


measures than the ones to which they are accustomed. Rather than logging into an account
controlled by a third party, blockchain applications grant their users direct access to any
information they have stored on a blockchain. It is the responsibility of the user to secure the
cryptographic keys that grant them this access. Or, should users choose to entrust a third-party
with their cryptographic keys, it is their responsibility to vet those services.

This new paradigm will require an educational campaign. To date, those efforts have been
insufficient. Nearly nine years have passed since the Bitcoin project was initiated. Yet, it is still

25
commonplace for individual wallets to be hacked and for third-party services to announce lost
funds.

One potential method for encouraging good security practices is the development of a
Blockchain Input/output certificate of authenticity and compliance. This certificate would
provide a set of definitions and procedures that could help to standardize the input and output
interfaces of blockchains. This would not only help to standardize application interfaces for
blockchains, but also provide a way to standardize interoperability between individual
blockchains

Regulation
The same features of a blockchain that make them desirable have also placed them in a legal
grey area. It will be necessary to cultivate open and steady communication between regulators
and blockchain developers. Both sides face a steep learning curve about how the technology
works and what regulations may pertain to its deployment. In some cases, compliance can be
ensured through proper implementation. In other cases, the issues may be best resolved by
fundamentally adapting the underlying technology.

The following are some of the problem areas that the IEEE has identified.

• Right to be forgotten – Blockchains are marketed as indelible, timestamped


records of digital events. The term used by developers is “immutability.” If a
blockchain is immutable, then any new piece of information added will remain there
for the lifespan of the technology. In such a system, it is unclear how applications will
be built to comply with laws that protect the user’s right to be forgotten, such as the
General Data Protection Ruled passed by the European Union in 2016.11

• Custody of data – Data added to a blockchain is replicated on every participating


computer. And if the system is entirely open, then every record is also accessible to
anyone who cares to download it. Without restrictions, it is neither possible to control
nor to detect the physical location of data on the blockchain. It is, therefore, impossible
to assign it to a single jurisdiction.
• Privacy – Blockchains are fully transparent. While the transaction and data
flowing across them is attributable only to pseudonyms, this level of obfuscation is not
enough to guarantee sustained anonymity to users. It should be assumed that without
enhancements the identity of all accounts on a blockchain will eventually be exposed
through network analysis. Without a higher level of privacy guarantees, blockchains

26
will be incapable of complying with consumer protection laws such as the Health
Insurance Portability and Accountability Act (HIPAA).

Incompleteness Is an Opportunity
For now, the ambitions of the people working on blockchain technology are more developed
than the technology itself. Fortunately, a chain under construction presents an opportunity. The
best time to educate and consider best practices is when experimentation is afoot.

14.CURRENT AND PRIOR EFFORTS

Consortiums and other industry partnerships have already been formed to unite corporations in
the blockchain space.

• Hyperledger – The Hyperledger project has taken shape under the aegis of the
Linux Foundation. Hyperledger combines the resources of IBM, Intel, Cisco, American
Express, among many other corporations and a handful of academic institutions.12

• R3Cev – In 2014, some of the largest financial institutions—including J.P.


Morgan, Goldman Sachs, and Barclays—joined forces to explore how blockchains
might increase efficiencies in the banking sector.13

• Enterprise Ethereum Alliance – Formed in early 2017, the Enterprise Ethereum


Alliance is working on an enterprise version of the Ethereum blockchain. It claims
many of the same member that are participating in R3Cev.14

The alliances that have been forged thus far in the blockchain industry have set as their primary
goal the development of new blockchain designs. Hyperledger has delivered a variant of a

27
blockchain called Fabric, while R3Cevhas its own blockchain-inspired technology called
Corda.

What is lacking in the current industry alliances is a group committed to directing both funding
and academic resources to pursuits that go beyond mere product development. The IEEE is
equipped to provide leadership in supporting research, educating industry, and codifying
technical standards and best practices. It is also prepared to act as an ethical steward as
blockchain development advances.

15.HARD FOR HACKERS?

A problem with a permission less, or open networks is that they can be attacked by anyone. So
there needs to be a way of making the network-as-a-whole trustworthy, even if specific actors
aren’t.

What can and can’t malicious attackers do?

A dishonest miner can:

1. Refuse to relay valid transactions to other nodes.


2. Attempt to create blocks that include or exclude specific transactions of his choosing.
3. Attempt to create a ‘longer chain’ of blocks that make previously accepted blocks become
‘orphans’ and not part of the main chain.

The attacker can’t:

1. Create bitcoins out of thin air. *


2. Steal bitcoins from your account.
3. Make payments on your behalf or pretend to be you.

28
With transactions, the effect a dishonest miner can have is very limited. If the rest of the
network is honest, they will reject any invalid transactions coming from them, and they will
hear about valid transactions from other honest nodes, even if they are refusing to pass them
on.

With blocks, if the malicious attacker has sufficient block creation power (and this is what it
all hinges on), he can delay your transaction by refusing to include it in his blocks. However,
your transaction will still be known by other honest nodes as an ‘unconfirmed transaction’, and
they will include it in their blocks.

Worse case, is if the malicious attacker can create a longer chain of blocks than the rest of the
network and invoking the “longest chain rule” to kick out the shorter chains. This lets the
attacker unwind a transaction.

*Only the attackers version of the ledger will have these transactions. Other nodes will reject
this, which is why it is important to confirm a transaction across a number of nodes

Here’s how you can do it:

1. Createtwo payments with the same bitcoins: one to an online retailer, the other to yourself
(another address you control).

2. Only broadcast the payment that pays the retailer.

3. When the payment gets added in an honest block, the retailer sends you goods.

4. Secretlycreate a longer chain of blocks which excludes the payment to the retailer and
includes the payment to yourself.

5. Publish the longer chain. If the other nodes are playing by the “longest chain” rule, then they
will ignore the honest block with the retailer payment and continue to build on your longer
chain. The honest block is said to be ‘orphaned’ and does not exist to all intents and purposes.

6. The original payment to the retailer will be deemed invalid by the honest nodes because those
bitcoins have already been spent (in your longer chain).

29
30
31
This is called a “double spend” because the same bitcoins were spent twice, but the second
one was the one that became part of the eventual blockchain, and the first one eventually
gets rejected.

How do you make it hard for dishonest miners to create blocks?

Remember, this is only a problem for ledgers where block-makers aren’t trusted.

Essentially you want to make it hard, or expensive for malicious attackers to add blocks. In
bitcoin, this is done by making it computationally expensive to add blocks. Computationally
expensive means “takes a lot of computer processing power” and translates to financially
expensive (as computers need to be bought then run and maintained).

The computation itself is a guessing game where block-makers need to guess a number,
which when crunched with the rest of the block data contents, results in a hash / fingerprint
that is smaller than a certain number. That number is related to the ‘difficulty’ of mining
which is related to the total network processing power. The more computers joining in to
process blocks, the harder it gets, in a self-regulating cycle.

Every 2,016 blocks (roughly every 2 weeks), the


bitcoin network adjusts the difficulty of the
guessing game based on the speed that the blocks
have been created.

This guessing game is called “Proof of work”. By publishing the block with the fingerprint
that is smaller than the target number, you are proving that you did enough guess work to
satisfy the network at that point in time.

32
16.INCENTIVES: How do you pay validators?

Transaction and block validation is cheap and fast, unless you choose to make it slow and
expensive.

If you control the validators in your own network, or they are trusted, then

• You don’t need to make it expensive to add blocks.

• Therefore, you can reduce the need to incentivise them


You can use other methods such as “We’ll pay people to run validators” or “People sign a
contract to run validators and behave”.

Because of bitcoin’s ‘public’ structure, it needs a defence against malicious attackers and
so uses “proof of work” to make it computationally difficult to add a block. This has
created a cost (equipment and running costs) of mining and therefore a need for
incentivisation.

Just as the price of gold determines how much equipment you can spend on a gold mine;
bitcoin’s price determines how much mining power is used to secure the network. The
higher the price, the more mining there is, and the more a malicious attacker has to spend
to bully the network.

The miners do lots of mining, increasing the difficulty and raising the walls against network
attacks. They are rewarded in bitcoin according to a schedule, and in time, as the block
rewards reduce, transaction fees become the incentive that miners collect.

33
The idealised situation in Bitcoin where block rewards are replaced
by transaction fees.

34
17.IEEE INITIATIVE PROPOSALS

Over the course of a two-day workshop in Washington D.C. on October 27 and 28 of 2017, the
IEEE identified ways the organization could participate in the blockchain space.

STANDARDS
It may be appropriate to propose new standards in order ensure that blockchains are securely
built. New standards may also help unite the efforts of various projects which are currently
being built on independent blockchains.

The IEEE will begin by recruiting for hybrid working groups from those stakeholders that
would most benefit from standards. In parallel, the IEEE blockchain initiative will educate all
stakeholders about how standards could help accelerate adoption of the technology.

The following projects are already in progress:

• IEEE P2418™- a standard for the Framework of Blockchain use in the Internet of
Things (IoT). The framework addresses scalability, security and privacy issues
pertaining to implementation of blockchains with the Internet of Things.15

• IEEE P825™ - meshing smart grid interoperability standards to enable transactive


energy networks.16

• A project was approved in August 2017 to standardize the technology and


implementation in supply chains and clinical trials. There are now 5 work streams
covering pharmaceutical supply, clinical trials, agri-business, medical devices, and
smart contracts for supply chains.17

• “Realizing the Immersive Future City.” The IEEE Standards Association has received
approval to begin Industry Connections Activity surrounding the design and
technology implementation issues impacting the “digital citizen.” Work stream 4 in
this project will focus on developing a blockchain communication protocol with 360
data perspective.18

35
The IEEE is interested in developing standards in the following areas:

• The security of blockchains as well as user interfaces such as wallets, exchanges and
payment portals.
• The design of smart contracts. Standards may touch upon the use of proper business
logic, the means for verifying smart contract code, and the necessary steps to be taken
when linking multiple smart contracts in a single application.
• Data validation.
• Data privacy and giving end-users the capability to selectively disclose their
information.
• Interoperability such that functions performed on one chain can be replicated and
extended on another chain.
•Interoperability with consumer devices, and secure implementation of IoT.

Using the blockchain to strengthen existing standards. As a record-keeping strategy,


blockchains pose a novel way to track whether participants are complying with standards that
they publicly claim. The following are some of the standards that may be strengthened with
implementation of blockchain technology:

• Smart grid standards: P2418 PB25


Use blockchains to track the lifecycle of consumer electronics, and verify compliance with
environmental standards such as #1680

36
18. EDUCATION

The IEEE is developing a suite of courses about blockchain technology which it plans to sell
to corporations that are training internally for blockchain development. Some of the topics
being considered for training include:

Blockchain basics – a researcher’s guide to how blockchains work.

Law and policy – What are the regulations that pertain to blockchain applications, and how can
companies remain compliant?

Best practices for specific verticals — what do you need to know if you’re building an
application in: Energy, Real Estate, Legal Services, Content management? What are the major
projects in these areas?

37
19.Considerations

While courses provide a source of revenue for the IEEE, other non-profitable outreach must be
pursued to raise the level of technical understanding among researchers, industry actors,
regulators, and users. The blockchain industry is enjoying a wave of intense interest and
enthusiasm from the public, which has brought with it a deluge of funding dollars.

At IEEE, we should consider how we can educate two different audiences: the business leaders
(CEO, CIO, CSO) and the engineers. Unless education efforts successfully highlight the
business cases for blockchain technology in a manner that makes sense for someone in the C-
suite, adoption could suffer.

On the other hand, there needs to be a parallel campaign to educate the people who are building
and using blockchains. If users are left behind, then enthusiasm can easily turn into hype, which
carries a further risk of inviting bad actors and scam artists into the space. Those who have
observed the cryptocurrency space for several years can attest to the fact that such a cycle has
already occurred many times already. But with each cycle comes a greater spotlight, larger
quantities of money, and greater opportunities for loss. Fostering a deep technical
understanding among all players is the only sustainable way to combat this cycle.

CONFERENCES
Given that the ripples of blockchain technology break against nearly every shore in the
industry, the IEEE initiative will require input from many societies. However, conferences
should be planned and organized through the IEEE initiative rather than individual societies to
prevent fragmentation and to help the IEEE build a brand in what is already a crowded market
of conferences.

PUBLICATIONS
It is the view of the IEEE that there is a void to be filled between those outlets that are writing
in depth about the technical aspects of blockchains and others that flood the space with opinion
and non-technical news.

There is a clear disconnect between “industry practitioners” and “researchers” of blockchain


that we need to bridge. This can be done by highlighting industry use-cases to drive researchers
towards solving the right problems. It’s also necessary to support cutting-edge research to
generate more elegant and efficient solutions for existing and new industry use cases.

38
The IEEE should seek initially to provide publications that help the reader separate the wheat
from the chaff. This work can take the form of newsletters with summaries of useful articles,
or short pieces that link to bigger publications. It could also include a wiki to aid the novice in
navigating the blockchain space.

As a stepping stone to larger, more focused publications, the IEEE should build a body of
readers with stories focusing on specific use cases such as product labelling, smart farming,
and drug safety.

MODELLING
Modelling in the blockchain space will be challenging as a perfect model of a blockchain
system would replicate the fluctuating economic incentives introduced by the existence of an
underlying cryptocurrency. To be truly insightful, models may need to include complexities
outside the codified chain.

Furthermore, there needs to be some mechanism for industry practitioners to validate new
ideas. A public vetting process needs to be formulated whereby more formal researchers and
colleagues can review solutions before they are widely deployed.

 First answer the question: what comprises a proper model of a blockchain based
system? What are the minimum requirements?
 What are the security, reliability, usability, network, and adoption aspects that we need
to address for the specific use case?
 Test models of the various scaling solutions being proposed by the development
community.

TAXONOMY
There is considerable confusion, even among the most seasoned blockchain developers, about
what the word “blockchain” means. The IEEE, with the help of NIST and other standards
organizations, can lead this conversation by offering:

• a detailed, technical description of blockchain technology and its many offspring.


• a standardized framework of components and a scheme for classifying blockchain
implementations. This is an adjunct to taxonomy and is also fundamental to support both
blockchain interfaces and blockchain design functions.

39
INDUSTRY PARTNERSHIP AND ENGAGEMENT
Ultimately, if the IEEE does not focus on the people who make the decisions about how
blockchain technology is developed, there will be no buy-in from industry.

 Blockchain Wiki. Among other tools, the IEEE can build an open source code
repository and Industry and Research Wiki. This would be a source of information on
all the research and developments efforts world-wide as well as a code repository for
blockchain projects. The Wiki would function as an open source start up with funding
from industry partners.
 Hackathons and competitions. Competitions should be designed to encourage
participation among entry-level engineers. They should touch on areas beyond
cryptocurrency such as the energy, IoT, and automotive industries. These competitions
should also be structured to encourage industry to design blockchain applications for
the specific problem rather than retrofitting current designs.

 Draft a business value paper that C-level executives can use to start conversations with
potential funders. When seeking funding for blockchain projects, CEOs needs to
understand the business case and business value. The TEMS Society is well positioned
to write such a paper.

 Create a certificate of authenticity that can be issued to blockchain applications if they


comply with a set of standards and procedures for the input and output of data on a
blockchain.

 Develop a set of guidelines for verifying the code and business logic of smart contracts.
Some of the failures that have happened to date, such as the hacking of the DAO
autonomous organization on the Ethereum platform in the summer of 2016, were due
to unintended consequences stemming from the business logic of smart contracts. If
“code is law,” on blockchain platforms, then developers need tools that will help them
design smart contracts that enforce both the letter and the spirit of the law.

 A repository of blockchain components. Blockchains are quite modular in their design.


They borrow components from a diverse set of fields, and some of these parts have
been around for decades before being repackaged into a blockchain. At the same time,
due to the incentive structures of blockchains, the individual parts behave very
differently depending on how they are paired. IEEE could aid design innovation by
creating a repository of blockchain components as well as by testing how they perform
in various configurations.

40
20.CONCLUSION

Blockchain development is in its infancy. But already the technology is old enough that the
community has bifurcated both culturally and technically. This should not be viewed as a bad
thing. When the first blockchain was invented it sought to solve one very specific problem.
Today, players in the space are stretching to reorganize every facet of the digital terrain. As the
problems take on more definition, it becomes clear that there is not a single solution. At the
same time, if the efficiencies gained by one successful blockchain project are to be shared
across domains, then developers and industry managers will have to think about
interoperability from the very beginning. The above proposals seek to study and identify the
bifurcations in the blockchain space while finding new ways to link them together.

41

Das könnte Ihnen auch gefallen