ALL > Computer and Education > courses > university courses > graduate courses > Modern Computer Networking > ZSTU class(2019-2020-1) > student directories > Bhupesh Awasthi(L20192E060101) >
Block Chain HomeWork Version 0
👤 Author: by bhupeshaawasthi952gmailcom 2019-12-20 17:44:10
                     An Overview of Blockchain Technology

                                

Blockchain, the foundation of Bitcoin, has received extensive attentions recently. Blockchain serves as an immutable ledger which allows transactions take place in a decentralized manner. Blockchain-based applications are springing up, covering numerous fields including financial services, reputation system and  Internet of Things (IoT), and so on. However,there are still many challenges of blockchain technology such as scalability and security problems waiting to be overcome.This paper presents a comprehensive overview on blockchain technology. We provide an overview of blockchain architechture firstly and compare some typical consensus algorithms used in different blockchains. Furthermore, technical challenges and recent advances are briefly listed. We also lay out possible future trends for blockchain.

It is important to separate cryptocurrencies from blockchain, which is the underlying technology that makes cryptocurrencies possible. A blockchain is a digital, secure, public record book of transactions (a ledger). (i.e., without a central repository) and usually without a central authority (i.e., a bank, company, or government“Block” describes the way this ledger organizes transactions

into blocks of data, which are then organized in a “chain” that links to other blocks of data. The links make it easy to see if anyone has changed any part of the chain, which helps the system protect against illegal transactions.

Nowadays cryptocurrency has become a buzzword in both

industry and academia. As one of the most successful cryp-

tocurrency, Bitcoin has enjoyed a huge success with its capital

market reaching 10 billion dollars in 2016 . With a spe-

cially designed data storage structure, transactions in Bitcoin

network could happen without any third party and the core

technology to build Bitcoin is blockchain, which was first

proposed in 2008 and implemented in 2009 . Blockchain

could be regarded as a public ledger and all committed

transactions are stored in a list of blocks. This chain grows

as new blocks are appended to it continuously. Asymmetric

cryptography and distributed consensus algorithms have been

implemented for user security and ledger consistency. The

blockchain technology generally has key characteristics of

decentralization, persistency, anonymity and auditability. With

these traits, blockchain can greatly save the cost and improve

the efficiency.

Since it allows payment to be finished without any bank or

any intermediary, blockchain can be used in various financial

services such as digital assets, remittance and online payment

.Additionally, it can also be applied into other fields

including smart contracts public services, Internet of

Things (IoT) reputation systems and security services

Those fields favor blockchain in multiple ways. First of all,

blockchain is immutable. Transaction cannot be tampered once

it is packed into the blockchain. Businesses that require high

reliability and honesty can use blockchain to attract customers.

Besides, blockchain is distributed and can avoid the single

point of failure situation. As for smart contracts, the contract

could be executed by miners automatically once the contract

has been deployed on the blockchain.

Although the blockchain technology has great potential for

the construction of the future Internet systems, it is facing a

number of technical challenges. Firstly, scalability is a huge

concern. Bitcoin block size is limited to 1 MB now while

a block is mined about every ten minutes. Subsequently, the

Bitcoin network is restricted to a rate of 7 transactions per

second, which is incapable of dealing with high frequency

trading. However, larger blocks means larger storage space

and slower propagation in the network. This will lead to

centralization gradually as less users would like to maintain

such a large blockchain. Therefore the tradeoff between block

size and security has been a tough challenge. Secondly, it has

been proved that miners could achieve larger revenue than

their fair share through selfish mining strategy . Miners

hide their mined blocks for more revenue in the future. In

that way, branches could take place frequently, which hinders

blockchain development. Hence some solutions need to be put

forward to fix this problem. Moreover, it has been shown that

privacy leakage could also happen in blockchain even users

only make transactions with their public key and private key

. Furthermore, current consensus algorithms like proof of

work or proof of stake are facing some serious problems. For

example, proof of work wastes too much electricity energy

while the phenomenon that the rich get richer could appear in

the proof of stake consensus process.

There is a lot of literature on blockchain from various

sources, such as blogs, wikis, forum posts, codes, confer-

ence proceedings and journal articles. Tschorsch et al.

made a technical survey about decentralized digital currencies

2017 IEEE 6th International Congress on Big Data

978-1-5386-1996-4/17 $31.00 © 2017 IEEE

DOI 10.1109/BigDataCongress.2017.85

557

including Bitcoin. Compared to our paper focuses on

blockchain technology instead of digital currencies. Nomura

Research Institut made a technical report about blockchain

.Contrast to, our paper focuses on state-of-art

blockchain researches including recent advances and future

trends.

The rest of this paper is organized as follows. Section II

introduces blockchain architecture. Section III shows typical

consensus algorithms used in blockchain. Section IV summa-

rizes the technical challenges and the recent advances in this

area..

Blockchain is a sequence of blocks, which holds a complete

list of transaction records like conventional public ledger

. Figure 1 illustrates an example of a blockchain. With

a previous block hash contained in the block header, a block

has only one parent block. It is worth noting that uncle blocks

(children of the block’s ancestors) hashes would also be stored

in ethereum blockchain. The first block of a blockchain

is called genesis block which has no parent block. We then

explain the internals of blockchain in details.

A. Block

A block consists of the block header and the block body as

shown in Figure 2. In particular, the block header includes:

(i) Block version: indicates which set of block validation

rules to follow.

(ii) Merkle tree root hash: the hash value of all the transac-

tions in the block.

(iii) Timestamp: current time as seconds in universal time

since January 1, 1970.

(iv) nBits: target threshold of a valid block hash.

(v) Nonce: an 4-byte field, which usually starts with 0

and increases for every hash calculation (will be explained

in details in Section III).

(vi) Parent block hash: a 256-bit hash value that points to

the previous block.

The block body is composed of a transaction counter and

transactions. The maximum number of transactions that a

block can contain depends on the block size and the size of

each transaction. Blockchain uses an asymmetric cryptography

mechanism to validate the authentication of transactions.

Digital signature based on asymmetric cryptography is used in

an untrustworthy environment. We next briefly illustrate digital

signature.

B. Digital Signature

Each user owns a pair of private key and public key.

The private key that shall be kept in confidentiality is used

to sign the transactions. The digital signed transactions are

broadcasted throughout the whole network. The typical digital

signature is involved with two phases: signing phase and

verification phase. For instance, an user Alice wants to send

another user Bob a message.  In the signing phase, Alice

encrypts her data with her private key and sends Bob the

encrypted result and original data. In the verification phase,

Bob validates the value with Alice’s public key. In that way,

Bob could easily check if the data has been tampered or not.

The typical digital signature algorithm used in blockchains is

the elliptic curve digital signature algorithm (ECDSA).

C. Key Characteristics of Blockchain

In summary, blockchain has following key characteristics.

•Decentralization. In conventional centralized transaction

systems, each transaction needs to be validated through

the central trusted agency (e.g., the central bank), in-

evitably resulting to the cost and the performance bottle-

necks at the central servers. Contrast to the centralized

mode, third party is no longer needed in blockchain.

Consensus algorithms in blockchain are used to maintain

data consistency in distributed network.

•Persistency. Transactions can be validated quickly and

invalid transactions would not be admitted by honest

miners. It is nearly impossible to delete or rollback

transactions once they are included in the blockchain.

Blocks that contain invalid transactions could be discov-

ered immediately.

•Anonymity. Each user can interact with the blockchain

with a generated address, which does not reveal the

real identity of the user. Note that blockchain cannot

guarantee the perfect privacy preservation due to the

intrinsic constraint (details will be discussed in section

IV)

D. Taxonomy of blockchain systems

Current blockchain systems are categorized roughly into

three types: public blockchain, private blockchain and con-

sortium blockchain. In public blockchain, all records are

visible to the public and everyone could take part in the con-

sensus process. Differently, only a group of pre-selected nodes

would participate in the consensus process of a consortium

blockchain. As for private blockchain, only those nodes that

come from one specific organization would be allowed to join

the consensus process.

A private blockchain is regarded as a centralized network

since it is fully controlled by one organization. The consortium

blockchain constructed by several organizations is partially

decentralized since only a small portion of nodes would be

selected to determine the consensus. The comparison among

the three types of blockchains is listed in Table I.

•Consensus determination. In public blockchain, each n-

ode could take part in the consensus process. And only

a selected set of nodes are responsible for validating the

block in consortium blockchain. As for private chain, it is

fully controlled by one organization and the organization

could determine the final consensus.

•Read permission. Transactions in a public blockchain are

visible to the public while it depends when it comes to a

private blockchain or a consortium blockchain.

•Immutability. Since records are stored on a large number

of participants, it is nearly impossible to tamper trans-

actions in a public blockchain. Differently, transactions

in a private blockchain or a consortium blockchain could

be tampered easily as there are only limited number of

participants.

•Efficiency. It takes plenty of time to propagate transac-

tions and blocks as there are a large number of nodes

on public blockchain network. As a result, transaction

throughput is limited and the latency is high. With fewer

validators, consortium blockchain and private blockchain

could be more efficient.

•Centralized. The main difference among the three types

of blockchains is that public blockchain is decentralized,

consortium blockchain is partially centralized and private

blockchain is fully centralized as it is controlled by a

single group.

•Consensus process. Everyone in the world could join

the consensus process of the public blockchain. Different

from public blockchain, both consortium blockchain and

private blockchain are permissioned.

Since public blockchain is open to the world, it can at-

tract many users and communities are active. Many public

blockchains emerge day by day. As for consortium blockchain,

it could be applied into many business applications. Cur-

rently Hyperledgeris developing business consortium

blockchain frameworks. Ethereum also has provided tools for

building consortium blockchains 

III. CONSENSUS ALGORITHMS

In blockchain, how to reach consensus among the untrust-

worthy nodes is a transformation of the Byzantine Generals

(BG) Problem, which was raised in. In BG problem,

a group of generals who command a portion of Byzantine

army circle the city. Some generals prefer to attack while

other generals prefer to retreat. However, the attack would

fail if only part of the generals attack the city. Thus, they

have to reach an agreement to attack or retreat. How to reach

a consensus in distributed environment is a challenge. It is

also a challenge for blockchain as the blockchain network

is distributed. In blockchain, there is no central node that

ensures ledgers on distributed nodes are all the same. Some

protocols are needed to ensure ledgers in different nodes are

consistent. We next present several common approaches to

reach a consensus in blockchain.

A. Approaches to consensus

PoW (Proof of work) is a consensus strategy used in the

Bitcoin network . In a decentralized network, someone has

to be selected to record the transactions. The easiest way is

random selection. However, random selection is vulnerable to

attacks. So if a node wants to publish a block of transactions, a

lot of work has to be done to prove that the node is not likely

to attack the network. Generally the work means computer

559

In PoW, each node of the network is calculating

a hash value of the block header. The block header contains

a nonce and miners would change the nonce frequently to

get different hash values. The consensus requires that the

calculated value must be equal to or smaller than a certain

given value. When one node reaches the target value, it would

broadcast the block to other nodes and all other nodes must

mutually confirm the correctness of the hash value. If the block

is validated, other miners would append this new block to

their own blockchains. Nodes that calculate the hash values

are called miners and the PoW procedure is called mining in

Bitcoin.

In the decentralized network, valid blocks might be gen-

erated simultaneously when multiple nodes find the suitable

nonce nearly at the same time. As a result, branches may be

generated as shown in Figure 3. However, it is unlikely that

two competing forks will generate next block simultaneously.

In PoW protocol, a chain that becomes longer thereafter is

judged as the authentic one. Consider two forks created by

simultaneously validated blocks U4 and B4. Miners keep

mining their blocks until a longer branch is found. B4,B5

forms a longer chain, so the miners on U4 would switch to

the longer branch.

Miners have to do a lot of computer calculations in PoW,

yet these works waste too much resources. To mitigate the

loss, some PoW protocols in which works could have some

side-applications have been designed. For example, Primecoin

 searches for special prime number chains which can be

used for mathematical research.

PoS (Proof of stake) is an energy-saving alternative to PoW.

Miners in PoS have to prove the ownership of the amount

of currency. It is believed that people with more currencies

would be less likely to attack the network. The selection

based on account balance is quite unfair because the single

richest person is bound to be dominant in the network. As a

result, many solutions are proposed with the combination of

the stake size to decide which one to forge the next block.

In particular, Blackcoin  uses randomization to predict the

next generator. It uses a formula that looks for the lowest

hash value in combination with the size of the stake. Peercoin

 favors coin age based selection. In Peercoin, older and

larger sets of coins have a greater probability of mining the

next block. Compared to PoW, PoS saves more energy and

is more effective. Unfortunately, as the mining cost is nearly

zero, attacks might come as a consequence. Many blockchains

adopt PoW at the beginning and transform to PoS gradually.

For instance, ethereum is planing to move from Ethash (a kind

of PoW) to Casper (a kind of PoS).

PBFT (Practical byzantine fault tolerance) is a replication

algorithm to tolerate byzantine faults Hyperledger Fabric

utilizes the PBFT as its consensus algorithm since PBFT

could handle up to 1/3 malicious byzantine replicas. A new

block is determined in a round. In each round, a primary would

be selected according to some rules. And it is responsible for

ordering the transaction. The whole process could be divided

into three phase: pre-prepared,prepared and commit. In each

phase, a node would enter next phase if it has received votes

from over 2/3 of all nodes. So PBFT requires that every

node is known to the network. Like PBFT, Stellar Consensus

Protocol (SCP)  is also a Byzantine agreement protocol.

In PBFT, each node has to query other nodes while SCP gives

participants the right to choose which set of other participants

to believe. Based on PBFT, Antshares  has implemented

their dBFT (delegated byzantine fault tolerance). In dBFT,

some professional nodes are voted to record the transactions.

DPOS (Delegated proof of stake). The major difference

between PoS and DPOS is that PoS is direct democratic while

DPOS is representative democratic. Stakeholders elect their

delegates to generate and validate blocks. With significantly

fewer nodes to validate the block, the block could be confirmed

quickly, leading to the quick confirmation of transactions.

Meanwhile, the parameters of the network such as block size

and block intervals could be tuned by delegates. Additionally,

560 users need not to worry about the dishonest delegates as they

could be voted out easily. DPOS is the backbone of Bitshares

Ripple is a consensus algorithm that utilizes

collectively-trusted subnetworks within the larger network. In

the network, nodes are divided into two types: server for

participating consensus process and client for only transferring

funds. Each server has an Unique Node List (UNL). UNL is

important to the server. When determining whether to put a

transaction into the ledger, the server would query the nodes

in UNL and if the received agreements have reached 80%, the

transaction would be packed into the ledger. For a node, the

ledger will remain correct as long as the percentage of faulty

nodes in UNL is less than 20%.

Tendermint is a byzantine consensus algorithm. A new

block is determined in a round. A proposer would be selected

to broadcast an unconfirmed block in this round. It could be

divided into three steps: 1) Prevote step. Validators choose

whether to broadcast a prevote for the proposed block. 2)

Precommit step. If the node has received more than 2/3 of

prevotes on the proposed block, it broadcasts a precommit for

that block. If the node has received over 2/3 of precommits,

it enters the commit step. 3) Commit step. The node validates

the block and broadcasts a commit for that block. if the

node has received 2/3 of the commits, it accepts the block.

Contrast to PBFT, nodes have to lock their coins to become

validators. Once a validator is found to be dishonest, it would

be punished.

B. Consensus algorithms comparison

Different consensus algorithms have different advantages

and disadvantages. Table II gives a comparison between d-

ifferent consensus algorithms and we use the properties given

by [32].

•Node identity management. PBFT needs to know the

identity of each miner in order to select a primary in every

round while Tendermint needs to know the validators in

order to select a proposer in each round. For PoW, PoS,

DPOS and Ripple, nodes could join the network freely.

•Energy saving. In PoW, miners hash the block header

continuously to reach the target value. As a result, the

amount of electricity required to process has reach an

immense scale. As for PoS and DPOS, miners still have

to hash the block header to search the target value but

the work has been largely reduced as the search space

is designed to be limited. As for PBFT, Ripple and

Tendermint, there is no mining in consensus process. So

it saves energy greatly.

•Tolerated power of adversary. Generally 51% of hash

power is regarded as the threshold for one to gain control

of the network. But selfish mining strategy [10] in PoW

systems could help miners to gain more revenue by only

25% of the hashing power. PBFT and Tendermint is

designed to handle up to 1/3 faulty nodes. Ripple is

proved to maintain correctness if the faulty nodes in an

UNL is less than 20%.

•Example. Bitcoin is based on PoW while Peercoin is

a new peer-to-peer PoS cryptocurrency. Further, Hyper-

ledger Fabric utilizes PBFT to reach consensus. Bitshares,

a smart contract platform, adopts DPOS as their con-

sensus algorithm. Ripple implements the Ripple protocol

while Tendermint devises the Tendermint protocol.

PBFT and Tendermint are permissioned protocols. Node

identities are expected to be known to the whole network,

so they might be used in commercial mode rather than public.

PoW and PoS are suitable for public blockchain. Consortium

or private blockchain might has preference for PBFT, Tender-

mint, DPOS and Ripple.

C. Advances on consensus algorithms

A good consensus algorithm means efficiency, safty and

convenience. Recently, a number of endeavors have been made

to improve consensus algorithms in blockchain. New con-

sensus algorithms are devised aiming to solve some specific

problems of blockchain. The main idea of PeerCensus is

to decouple block creation and transaction confirmation so that

the consensus speed can be significantly increased. Besides,

Kraft proposed a new consensus method to ensure that

a block is generated in a relatively stable speed. It is known

that high blocks generation rate compromise Bitcoin’s security.

So the Greedy Heaviest-Observed Sub-Tree (GHOST) chain

selection rule  is proposed to solve this problem. Instead

of the longest branch scheme, GHOST weights the branches

and miners could choose the better one to follow. Chepurnoy

et al.  presented a new consensus algorithm for peer-to-

peer blockchain systems where anyone who provides non-

interactive proofs of retrievability for the past state snapshots

is agreed to generate the block. In such a protocol, miners

only have to store old block headers instead of full blocks.

IV. CHALLENGES &RECENT ADVANCES

Despite the great potential of blockchain, it faces numerous

challenges, which limit the wide usage of blockchain. We

enumerate some major challenges and recent advances as

follows.

A. Scalability

With the amount of transactions increasing day by day,

the blockchain becomes bulky. Each node has to store all

transactions to validate them on the blockchain because they

have to check if the source of the current transaction is unspent

or not. Besides, due to the original restriction of block size and

the time interval used to generate a new block, the Bitcoin

blockchain can only process nearly 7 transactions per second,

which cannot fulfill the requirement of processing millions of

transactions in real-time fashion. Meanwhile, as the capacity of

blocks is very small, many small transactions might be delayed

since miners prefer those transactions with high transaction

fee.

There are a number of efforts proposed to address the

scalability problem of blockchain, which could be categorized

into two types:

561

•Storage optimization of blockchain. Since it is harder for

node to operate full copy of ledger, Bruce proposed a

novel cryptocurrency scheme, in which the old transaction

records are removed (or forgotten) by the network .

A database named account tree is used to hold the

balance of all non-empty addresses. Besides lightweight

client could also help fix this problem. A novel schem

named VerSum was proposed to provide another

way allowing lightweight clients to exist. VerSum allows

lightweight clients to outsource expensive computations

over large inputs. It ensures the computation result is

correct through comparing results from multiple servers.

•Redesigning blockchain. In  Bitcoin-NG (Next Gen-

eration) was proposed. The main idea of Bitcoin-NG is

to decouple conventional block into two parts: key block

for leader election and microblock to store transactions.

The protocol divides time into epoches. In each epoch,

miners have to hash to generate a key block. Once the key

block is generated, the node becomes the leader who is

responsible for generating microblocks. Bitcoin-NG also

extended the heaviest (longest) chain strategy in which

microblocks carry no weight. In this way, blockchain

is redesigned and the tradeoff between block size and

network security has been addressed.

B. Privacy Leakage

Blockchain can preserve a certain amount of privacy through

the public key and private key. Users transact with their

private key and public key without any real identity exposure.

However, it is shown in that blockchain cannot

guarantee the transactional privacy since the values of all

transactions and balances for each public key are publicly

visible. Besides, the recent study has shown that a user’s

Bitcoin transactions can be linked to reveal user’s information.

Moreover, Biryukov et al. presented an method to link

user pseudonyms to IP addresses even when users are behind

Network Address Translation (NAT) or firewalls. In, each

client can be uniquely identified by a set of nodes it connects

to. However, this set can be learned and used to find the

origin of a transaction. Multiple methods have been proposed

to improve anonymity of blockchain, which could be roughly

categorized into two types:

•Mixing In blockchain, users addresses are pseudony-

mous. But it is still possible to link addresses to user real

identity as many users make transactions with the same

address frequently. Mixing service is a kind of service

which provides anonymity by transferring funds from

multiple input addresses to multiple output addresses. For

example, user Alice with address A wants to send some

funds to Bob with address B. If Alice directly makes a

transaction with input address A and output address B,

relationship between Alice and Bob might be revealed. So

Alice could send funds to a trusted intermediary Carol.

Then Carol transfer funds to Bob with multiple inputs c1,

c2, c3, etc., and multiple output d1, d2, B, d3, etc. Bob’s

address B is also contained in the output addresses. So it

becomes harder to reveal relationship between Alice and

Bob. However, the intermediary could be dishonest and

reveal Alice and Bob’s private information on purpose.

It is also possible that Carol transfers Alice’s funds to

her own address instead of Bob’s address. Mixcoin

provides a simple method to avoid dishonest behaviours.

The intermediary encrypts users’ requirements including

funds amount and transfer date with its private key. Then

if the intermediary did not transfer the money, anybody

could verify that the intermediary cheated. However, theft

is detected but still not prevented. Coinjoin depends

on a central mixing server to shuffle output addresses to

prevent theft. And inspired by Coinjoin, CoinShuffle 

uses decryption mixnets for address shuffling.

•Anonymous. In Zerocoin, zero-knowledge proof

is used. Miners do not have to validate a transaction

with digital signature but to validate coins belong to

a list of valid coins. Payment’s origin are unlinked

from transactions to prevent transaction graph analyses.

But it still reveals payments’ destination and amounts.

Zerocash was proposed to address this problem.

In Zerocash, zero-knowledge Succinct Non-interactive

Arguments of Knowledge (zk-SNARKs) is leveraged.

Transaction amounts and the values of coins held by users

are hidden.

C. Selfish Mining

Blockchain is susceptible to attacks of colluding selfish

miners. In particular, Eyal and Sirer showed that the

network is vulnerable even if only a small portion of the

hashing power is used to cheat. In selfish mining strategy,

selfish miners keep their mined blocks without broadcasting

and the private branch would be revealed to the public only

if some requirements are satisfied. As the private branch is

longer than the current public chain, it would be admitted

by all miners. Before the private blockchain publishment,

honest miners are wasting their resources on an useless branch

while selfish miners are mining their private chain without

competitors. So selfish miners tend to get more revenue.

Based on selfish mining, many other attacks have been

proposed to show that blockchain is not so secure. In stubborn

mining, miners could amplify its gain by non-trivially

composing mining attacks with network-level eclipse attacks.

The trail-stubbornness is one of the stubborn strategy that

miners still mine the blocks even if the private chain is left

behind. Yet in some cases, it can result in 13% gains in

comparison with a non-trail-stubborn counterpart. shows

that there are selfish mining strategies that earn more money

and are profitable for smaller miners compared to simple

selfish mining. But the gains are relatively small. Furthermore,

it shows that attackers with less than 25% of the computational

resources can still gain from selfish mining. To help fix the

selfish mining problem, Heilman presented an novel

approach for honest miners to choose which branch to follow.

With random beacons and timestamps, honest miners would

select more fresh blocks. However, is vulnerable to

562 forgeable timestamps. ZeroBlock  builds on the simple

scheme: Each block must be generated and accepted by the

network within a maximum time interval. Within ZeroBlock,

selfish miners cannot achieve more than its expected reward.

V. P OSSIBLE FUTURE DIRECTIONS

Blockchain has shown its potential in industry and academi-

a. We discuss possible future directions with respect to four

areas: blockchain testing,stop the tendency to centralization,

big data analytics and blockchain application.

A. Blockchain testing

Recently different kinds of blockchains appear and over

700 cryptocurrencies are listed in up to now. However,

some developers might falsify their blockchain performance

to attract investors driven by the huge profit. Besides that,

when users want to combine blockchain into business, they

have to know which blockchain fits their requirements. So

blockchain testing mechanism needs to be in place to test

different blockchains.

Blockchain testing could be separated into two phases:

standardization phase and testing phase. In standardization

phase, all criteria have to be made and agreed. When a

blockchain is born, it could be tested with the agreed criteria

to valid if the blockchain works fine as developers claim. As

for testing phase, blockchain testing needs to be performed

with different criteria. For example, an user who is in charge

of online retail business cares about the throughput of the

blockchain, so the examination needs to test the average time

from a user send a transaction to the transaction is packed into

the blockchain, capacity for a blockchain block and etc.

B. Stop the tendency to centralization

Blockchain is designed as a decentralized system. However,

there is a trend that miners are centralized in the mining pool.

Up to now, the top 5 mining pools together owns larger than

51% of the total hash power in the Bitcoin network .Apart

from that, selfish mining strategy showed that pools with

over 25% of total computing power could get more revenue

than fair share. Rational miners would be attracted into the

selfish pool and finally the pool could easily exceed 51% of

the total power. As the blockchain is not intended to serve a

few organizations, some methods should be proposed to solve

this problem.

C. Big data analytics

Blockchain could be well combined with big data. Here

we roughly categorized the combination into two types: data

management and data analytics. As for data management,

blockchain could be used to store important data as it is

distributed and secure. Blockchain could also ensure the data

is original. For example, if blockchain is used to store patients

health information, the information could not be tampered and

it is hard to stole those private information. When it comes to

data analytics, transactions on blockchain could be used for

big data analytics. For example, user trading patterns might

be extracted. Users can predict their potential partners’ trading

behaviours with the analysis.

D. Blockchain applications

Currently most blockchains are used in the financial domain,

more and more applications for different fields are appearing.

Traditional industries could take blockchain into considera-

tion and apply blockchain into their fields to enhance their

systems. For example, user reputations could be stored on

blockchain. At the same time, the up-and-coming industry

could make use of blockchain to improve performance. For

example, Arcade City , a ridesharing startup offers an

open marketplace where riders connect directly with drivers

by leveraging blockchain technology.

A smart contract is a computerized transaction protocol that

executes the terms of a contract .It has been proposed

for long time and now this concept can be implemented with

blockchain. In blockchain, smart contract is a code fragment

that could be executed by miners automatically. Smart contract

has transformative potential in various fields like financial

services and IoT.

Blockchain has shown its potential for transforming tradi-

tional industry with its key characteristics: decentralization,

persistency, anonymity and auditability. In this paper, we

present a comprehensive overview on blockchain. We first give

an overview of blockchain technologies including blockchain

architecture and key characteristics of blockchain. We then dis-

cuss the typical consensus algorithms used in blockchain. We

analyzed and compared these protocols in different respects.

Furthermore, we listed some challenges and problems that

would hinder blockchain development and summarized some

existing approaches for solving these problems. Some possible

future directions are also proposed. Nowadays blockchain-

based applications are springing up and we plan to conduct

in-depth investigations on blockchain-based applications in the

future.

Please login to reply. Login

Reversion History

Loading...
No reversions found.