Tải bản đầy đủ

Bitcoin the hype, the myth and the truth part 2

Bitcoin: The Hype, The
Myth and The Truth
~ A Technical Overview about How Bitcoin works ~

~ Part 2 - 6/11/2017 ~
- Tran Duc Thang -


Index
What is Bitcoin? Review
The Block and the Chain in depth
Proof-of-work Algorithm
Bitcoin Mining
Bitcoin problems and weakness - The Truth
about 51% Attack
● Bitcoin Soft fork vs Hard fork
● Bitcoin Scaling: On-chain vs Off-chain







2


Disclaimer
The purpose of this Seminar is to
explain How Bitcoin works,
not to encourage you to buy Bitcoin.
3


What is Bitcoin? - Review





Peer-to-Peer Electronic Cash System
Decentralized
No trusted third parties (trustless)
Cryptographic Proof

4


Block Structure
Field

Description

Size

Magic Number

value always 0xD9B4BEF9

4 bytes

Blocksize



number of bytes following
up to end of block

4 bytes

Blockheader

consists of 6 items

80 bytes

Transaction counter
Transactions

1 - 9 bytes
the list of transactions

5


Block Structure - Merkle Tree
● A tree constructed by hashing paired data (the leaves),
then pairing and hashing the results until a single hash
remains
● The final hash is called Merkle Root
● The leaves are almost always transactions from a single
block.

6


Block Structure - Merkle Tree

7


Block Structure - Merkle Tree
Merkle root is cryptographic proof of which
transactions are included in the block, and which
order they are in

8


Block Structure - Block Header
Field

Purpose

Updated when

Size
(bytes)

Version

Block Version Number

Upgraded software
provides newer version

4

Prev Block
Hash

Hash of the previous block
header

New block comes in

32

Merkle Root
Hash

Hash based on all transaction
in the block

Transactions list inside a
block changes

32

Time

Current timestamp

Every few seconds

4

Bits

Current target

Difficulty is adjusted

4

Nonce

A random number

A hash is tried

4
9


Proof-of-work
● A proof of work is a piece of data which is
difficult (costly, time-consuming) to produce but
easy for others to verify and which satisfies
certain requirements.
● Bitcoin uses the Hashcash proof of work system.
● In order for a block to be accepted by network
participants, miners must complete a proof of
work which covers all of the data in the block.
10


Proof-of-work
● For a block to be valid it must hash to a value less
than the current target; this means that each block
indicates that work has been done generating it.
● Changing a block requires regenerating all
successors and redoing the work they contain. This
protects the block chain from tampering.
● Bitcoin use SHA-256 as the Proof-of-Work hashing
algorithm
11


Proof-of-work
● The target is a 256-bit number that all Bitcoin

clients share
● The lower the target, the more difficult it is to
generate a block.

12


Proof-of-work
What happens if two blocks are mined nearly at the
same time?
Block n + 2

Block n

Block n + 1

Block n + 2

13


Proof-of-work
“The only way for everyone to stay on the
same page is to believe that the longest* chain
is always the valid one, no matter what.”
~ Nakamoto Satoshi ~

14


Bitcoin Mining
● Mining is the process that:
○ Adds valid transactions into a block
○ Finds the nonce, so that the hash of the
block header is lower than or equal to the
network’s current target
○ Adds more bitcoins to circulation (create new
bitcoins)
● Miners use Computing Power to mine Bitcoin
15


Bitcoin Mining
● Computing Power is measured by Hash Rate
● Hash Rate is the speed at which a compute is
completing an operation in the Bitcoin code.
● A higher hash rate is better when mining as it
increases your opportunity of finding the next
block and receiving the reward.
● Current total network hashrate is about 10 EH/s
(10,000,000,000,000,000,000 Hash/s)
16


Bitcoin Mining

17


Bitcoin Mining
● Early Bitcoin client versions allowed users to use
their CPU to mine.
● After that, the advent of GPU mining made CPU
mining financially unwise as the hashrate of the
network grew to such a degree that the amount
of bitcoins produced by CPU mining became
lower than the cost of power to operate a CPU
● Nowadays, GPU is also unprofitable to mine
18


Bitcoin Mining
An application-specific
integrated circuit, or ASIC, is a
microchip designed and
manufactured for a very
specific purpose.
ASICs designed for Bitcoin
mining were first released in
2013
19


Bitcoin Mining
● As more and more miners competed for the limited
supply of blocks, individuals found that they were
working for months without finding a block and
receiving any reward for their mining efforts. This made
mining something of a gamble.
● Miners then started organizing themselves into pools so
that they could share rewards more evenly.

20


Bitcoin Mining

21


Bitcoin Mining

22


Bitcoin Problems
● Bitcoin is hard to understand, and requires users to be
well versed in computer security
● Bitcoin transactions verification is slow
● Bitcoin transaction fee is high* (for small transactions)
● Bitcoin has no built-in consumer protection
● Bitcoin has technical weaknesses vulnerable to
orchestrated attacks

23


Bitcoin Problems - Majority Attack
● A majority attack, or 51% attack is a potential attack on
the bitcoin network whereby an organization is somehow
able to control the majority of the network mining power
(hashrate).

Block n

Block n + 1

Block n + 2

Block n + 3

Block n + 2

Block n + 3

Block n + 4

24


Bitcoin Problems - Majority Attack
With the majority hashing power, the attacker CAN:
● Reverse transactions that he sends while he's in control.
This has the potential to double-spend transactions that
previously had already been seen in the block chain.
● Prevent some or all transactions from gaining any
confirmations
● Prevent some or all other miners from mining any valid
blocks
25


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×