Проект
Проект
Проект
Project work
On subject:” Blockchain technology”
Done by
Student of the group CS 310.8
Sytko Danil
Kharkiv 2019
Blockchain
A blockchain, originally block chain, is a growing list of records,
called blocks, which are linked using cryptography.Each block contains
a cryptographic hash of the previous block, a timestamp, and transaction
data (generally represented as a Merkle tree).
By design, a blockchain is resistant to modification of the data. It is "an
open, distributed ledger that can record transactions between two parties
efficiently and in a verifiable and permanent way".For use as a distributed
ledger, a blockchain is typically managed by a peer-to-peer network
collectively adhering to a protocol for inter-node communication and
validating new blocks. Once recorded, the data in any given block cannot
be altered retroactively without alteration of all subsequent blocks, which
requires consensus of the network majority. Although blockchain records
are not unalterable, blockchains may be considered secure by design and
exemplify a distributed computing system with high Byzantine fault
tolerance. Decentralized consensus has therefore been claimed with a
blockchain.
Blockchain was invented by a person (or group of people) using the
name Satoshi Nakamoto in 2008 to serve as the public
transaction ledger of the cryptocurrency bitcoin.The identity of Satoshi
Nakamoto is unknown. The invention of the blockchain for bitcoin made it
the first digital currency to solve the double-spending problem without the
need of a trusted authority or central server. The bitcoin design has
inspired other applications,and blockchains which are readable by the
public are widely used by cryptocurrencies. Blockchain is considered a type
of payment rail.Private blockchains have been proposed for business use.
Sources such as Computerworld called the marketing of such blockchains
without a proper security model "What does snake oil mean?".
History
The first work on a cryptographically secured chain of blocks was described
in 1991 by Stuart Haber and W. Scott Stornetta.They wanted to implement
a system where document timestamps could not be tampered with. In
1992, Bayer, Haber and Stornetta incorporated Merkle trees to the design,
which improved its efficiency by allowing several document certificates to
be collected into one block.The first blockchain was conceptualized by a
person (or group of people) known as Satoshi Nakamoto in 2008.
Nakamoto improved the design in an important way using a Hashcash-like
method to add blocks to the chain without requiring them to be signed by a
trusted party.The design was implemented the following year by Nakamoto
as a core component of the cryptocurrency bitcoin, where it serves as the
public ledger for all transactions on the network.
In August 2014, the bitcoin blockchain file size, containing records of all
transactions that have occurred on the network, reached 20 GB
(gigabytes).In January 2015, the size had grown to almost 30 GB, and from
January 2016 to January 2017, the bitcoin blockchain grew from 50 GB to
100 GB in size.
The words block and chain were used separately in Satoshi Nakamoto's
original paper, but were eventually popularized as a single
word, blockchain, by 2016.
Smart contracts which run on a blockchain, for example ones which
"creat[e] invoices that pay themselves when a shipment arrives or share
certificates which automatically send their owners dividends if profits reach
a certain level." require an off-chain oracle to access any "external data or
events based on time or market conditions [that need] to interact with the
blockchain."
IBM opened a blockchain innovation research center in Singapore in July
2016.A working group for the World Economic Forum met in November
2016 to discuss the development of governance models related to
blockchain.
According to Accenture, an application of the diffusion of innovations theory
suggests that blockchains attained a 13.5% adoption rate within financial
services in 2016, therefore reaching the early adopters phase.Industry
trade groups joined to create the Global Blockchain Forum in 2016, an
initiative of the Chamber of Digital Commerce.
In May 2018, Gartner found that only 1% of CIOs indicated any kind of
blockchain adoption within their organisations, and only 8% of CIOs were in
the short-term 'planning or [looking at] active experimentation with
blockchain'.
Structure
A blockchain is a decentralized, distributed and public digital ledger that is
used to record transactions across many computers so that any
involved record cannot be altered retroactively, without the alteration of all
subsequent blocks.This allows the participants to verify and audit
transactions independently and relatively inexpensively.A blockchain
database is managed autonomously using a peer-to-peer network and a
distributed timestamping server. They are authenticated by mass
collaboration powered by collective self-interests.Such a design
facilitates robust workflow where participants' uncertainty regarding data
security is marginal. The use of a blockchain removes the characteristic of
infinite reproducibility from a digital asset. It confirms that each unit of value
was transferred only once, solving the long-standing problem of double
spending. A blockchain has been described as a value-exchange
protocol.A blockchain can maintain title rights because, when properly set
up to detail the exchange agreement, it provides a record that
compels offer and acceptance.
Blocks
Blocks hold batches of valid transactions that are hashed and encoded into
a Merkle tree.Each block includes the cryptographic hash of the prior block
in the blockchain, linking the two. The linked blocks form a
chain.This iterative process confirms the integrity of the previous block, all
the way back to the original genesis block.
Sometimes separate blocks can be produced concurrently, creating a
temporary fork. In addition to a secure hash-based history, any blockchain
has a specified algorithm for scoring different versions of the history so that
one with a higher value can be selected over others. Blocks not selected
for inclusion in the chain are called orphan blocks.Peers supporting the
database have different versions of the history from time to time. They keep
only the highest-scoring version of the database known to them. Whenever
a peer receives a higher-scoring version (usually the old version with a
single new block added) they extend or overwrite their own database and
retransmit the improvement to their peers. There is never an absolute
guarantee that any particular entry will remain in the best version of the
history forever. Blockchains are typically built to add the score of new
blocks onto old blocks and are given incentives to extend with new blocks
rather than overwrite old blocks. Therefore, the probability of an entry
becoming superseded decreases exponentially as more blocks are built on
top of it, eventually becoming very low.For example, bitcoin uses a proof-
of-work system, where the chain with the most cumulative proof-of-work is
considered the valid one by the network. There are a number of methods
that can be used to demonstrate a sufficient level of computation. Within a
blockchain the computation is carried out redundantly rather than in the
traditional segregated and parallel manner.
Block time
The block time is the average time it takes for the network to generate one
extra block in the blockchain. Some blockchains create a new block as
frequently as every five seconds.By the time of block completion, the
included data becomes verifiable. In cryptocurrency, this is practically when
the transaction takes place, so a shorter block time means faster
transactions. The block time for Ethereum is set to between 14 and 15
seconds, while for bitcoin it is 10 minutes.
Hard forks
A hard fork is a rule change such that the software validating according to
the old rules will see the blocks produced according to the new rules as
invalid. In case of a hard fork, all nodes meant to work in accordance with
the new rules need to upgrade their software.
If one group of nodes continues to use the old software while the other
nodes use the new software, a split can occur. For example, Ethereum has
hard-forked to "make whole" the investors in The DAO, which had been
hacked by exploiting a vulnerability in its code. In this case, the fork
resulted in a split creating Ethereum and Ethereum Classic chains. In 2014
the Nxt community was asked to consider a hard fork that would have led
to a rollback of the blockchain records to mitigate the effects of a theft of 50
million NXT from a major cryptocurrency exchange. The hard fork proposal
was rejected, and some of the funds were recovered after negotiations and
ransom payment. Alternatively, to prevent a permanent split, a majority of
nodes using the new software may return to the old rules, as was the case
of bitcoin split on 12 March 2013.
Decentralization
By storing data across its peer-to-peer network, the blockchain eliminates a
number of risks that come with data being held centrally.The decentralized
blockchain may use ad-hoc message passing and distributed networking.
Peer-to-peer blockchain networks lack centralized points of vulnerability
that computer crackers can exploit; likewise, it has no central point
of failure. Blockchain security methods include the use of public-key
cryptography.A public key (a long, random-looking string of numbers) is an
address on the blockchain. Value tokens sent across the network are
recorded as belonging to that address. A private key is like a password that
gives its owner access to their digital assets or the means to otherwise
interact with the various capabilities that blockchains now support. Data
stored on the blockchain is generally considered incorruptible.
Every node in a decentralized system has a copy of the blockchain. Data
quality is maintained by massive database replication and computational
trust. No centralized "official" copy exists and no user is "trusted" more than
any other.Transactions are broadcast to the network using software.
Messages are delivered on a best-effort basis. Mining nodes validate
transactions,add them to the block they are building, and
then broadcast the completed block to other nodes.Blockchains use
various time-stamping schemes, such as proof-of-work, to serialize
changes.Alternative consensus methods include proof-of-stake.Growth of a
decentralized blockchain is accompanied by the risk
of centralization because the computer resources required to process
larger amounts of data become more expensive.
Openness
Open blockchains are more user-friendly than some traditional ownership
records, which, while open to the public, still require physical access to
view. Because all early blockchains were permissionless, controversy has
arisen over the blockchain definition. An issue in this ongoing debate is
whether a private system with verifiers tasked and authorized
(permissioned) by a central authority should be considered a
blockchain.Proponents of permissioned or private chains argue that the
term "blockchain" may be applied to any data structure that batches data
into time-stamped blocks. These blockchains serve as a distributed version
of multiversion concurrency control (MVCC) in databases.Just as MVCC
prevents two transactions from concurrently modifying a single object in a
database, blockchains prevent two transactions from spending the same
single output in a blockchain. Opponents say that permissioned systems
resemble traditional corporate databases, not supporting decentralized
data verification, and that such systems are not hardened against operator
tampering and revision.Nikolai Hampton of Computerworld said that "many
in-house blockchain solutions will be nothing more than cumbersome
databases," and "without a clear security model, proprietary blockchains
should be eyed with suspicion."
Permissionless
The great advantage to an open, permissionless, or public, blockchain
network is that guarding against bad actors is not required and no access
control is needed.This means that applications can be added to the
network without the approval or trust of others, using the blockchain as
a transport layer.
Bitcoin and other cryptocurrencies currently secure their blockchain by
requiring new entries to include a proof of work. To prolong the blockchain,
bitcoin uses Hashcash puzzles. While Hashcash was designed in 1997
by Adam Back, the original idea was first proposed by Cynthia
Dwork and Moni Naor and Eli Ponyatovski in their 1992 paper "Pricing via
Processing or Combatting Junk Mail".
Financial companies have not prioritised decentralized blockchains.In
2016, venture capital investment for blockchain-related projects was
weakening in the USA but increasing in China.Bitcoin and many other
cryptocurrencies use open (public) blockchains. As of April 2018, bitcoin
has the highest market capitalization.
Permissioned (private) blockchain
Permissioned blockchains use an access control layer to govern who has
access to the network.In contrast to public blockchain networks, validators
on private blockchain networks are vetted by the network owner. They do
not rely on anonymous nodes to validate transactions nor do they benefit
from the network effect. Permissioned blockchains can also go by the
name of 'consortium' blockchains.
The New York Times noted in both 2016 and 2017 that many corporations
are using blockchain networks "with private blockchains, independent of
the public system."
Disadvantages of private blockchain
Nikolai Hampton pointed out in Computerworld that "There is also no need
for a '51 percent' attack on a private blockchain, as the private blockchain
(most likely) already controls 100 percent of all block creation resources. If
you could attack or damage the blockchain creation tools on a private
corporate server, you could effectively control 100 percent of their network
and alter transactions however you wished."This has a set of particularly
profound adverse implications during a financial crisis or debt crisis like
the financial crisis of 2007–08, where politically powerful actors may make
decisions that favor some groups at the expense of others,and "the bitcoin
blockchain is protected by the massive group mining effort. It's unlikely that
any private blockchain will try to protect records using gigawatts of
computing power — it's time consuming and expensive."He also said,
"Within a private blockchain there is also no 'race'; there's no incentive to
use more power or discover blocks faster than competitors. This means
that many in-house blockchain solutions will be nothing more than
cumbersome databases."
Uses
Blockchain technology can be integrated into multiple areas. The primary
use of blockchains today is as a distributed ledger for cryptocurrencies,
most notably bitcoin. There are a few operational products maturing
from proof of concept by late 2016.
As of 2016, some observers remain skeptical. Steve Wilson, of
Constellation Research, believes the technology has been hyped with
unrealistic claims.To mitigate risk, businesses are reluctant to place
blockchain at the core of the business structure.
Cryptocurrencies
Most cryptocurrencies use blockchain technology to record transactions.
For example, the bitcoin network and Ethereum network are both based on
blockchain. On May 8, 2018 Facebook confirmed that it is opening a new
blockchain groupwhich will be headed by David Marcus who previously
was in charge of Messenger. According to The Verge Facebook is planning
to launch its own cryptocurrency for facilitating payments on the platform.
Smart contracts
Blockchain-based smart contracts are proposed contracts that could be
partially or fully executed or enforced without human interaction.One of the
main objectives of a smart contract is automated escrow. An IMF staff
discussion reported that smart contracts based on blockchain technology
might reduce moral hazards and optimize the use of contracts in general.
But "no viable smart contract systems have yet emerged." Due to the lack
of widespread use their legal status is unclear.
Financial services
Major portions of the financial industry are implementing distributed
ledgers for use in banking, and according to a September 2016 IBM study,
this is occurring faster than expected.
Banks are interested in this technology because it has potential to speed
up back office settlement systems.
Banks such as UBS are opening new research labs dedicated to
blockchain technology in order to explore how blockchain can be used in
financial services to increase efficiency and reduce costs.
Berenberg, a German bank, believes that blockchain is an "overhyped
technology" that has had a large number of "proofs of concept", but still has
major challenges, and very few success stories.
Blockchain with video games
Some video games are based on blockchain technology. The first such
game, Huntercoin, was released in February, 2014.] Another blockchain
game is CryptoKitties, launched in November 2017. The game made
headlines in December 2017 when a cryptokitty character - an-in
game virtual pet - was sold for US$100,000.CryptoKitties illustrated
scalability problems for games on Ethereum when it created significant
congestion on the Ethereum network with about 30% of all Ethereum
transactions being for the game.
Cryptokitties also demonstrated how blockchains can be used to catalog
game assets (digital assets).
The Blockchain Game Alliance was formed in September 2018 to explore
alternative uses of blockchains in video gaming with support
of Ubisoft and Fig, among others.
Supply chain
There are a number of efforts and industry organizations working to employ
blockchains in supply chain logistics and supply chain management.
The Blockchain in Transport Alliance (BiTA) works to develop open
standards for supply chains.
Everledger is one of the inaugural clients of IBM's blockchain-based
tracking service.
Walmart and IBM are running a trial to use a blockchain-backed system
for supply chain monitoring — all nodes of the blockchain are administered
by Walmart and are located on the IBM cloud.
Hyperledger Grid develops open components for blockchain supply chain
solutions.
Blockchain in space
Several blockchain companies have taken blockchain to space.
Spacechain launched two nanosatellite-based blockchain nodes into orbit
in February and October 2018. Its first use case is decentralized storage of
data and files in space[, but the end goal is to reduce reliance on big
corporations like Google and Facebook, who also explore ways to bring
internet to everyone through satellites in space.
Other uses
Blockchain technology can be used to create a permanent, public,
transparent ledger system for compiling data on sales, tracking digital use
and payments to content creators, such as wireless users or musicians. In
2017, IBM partnered with ASCAP and PRS for Music to adopt blockchain
technology in music distribution. Imogen Heap's Mycelia service has also
been proposed as blockchain-based alternative "that gives artists more
control over how their songs and associated data circulate among fans and
other musicians."
New distribution methods are available for the insurance industry such
as peer-to-peer insurance, parametric
insurance and microinsurance following the adoption of
blockchain.The sharing economy and IoT are also set to benefit from
blockchains because they involve many collaborating peers. Online
voting is another application of the blockchain.
Other designs include: