Download - BitCoin Protocol
![Page 1: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/1.jpg)
1
BitcoinA Digital Currency
![Page 2: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/2.jpg)
Functions of Money
![Page 3: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/3.jpg)
Bank’s role● A financial institution
● Accepts deposits and lends money
● Centralized system
● Offers financial services
● Processes payments from two or more commercial
parties
● Today deals with a lot of Electronic Payments
![Page 4: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/4.jpg)
What is Bitcoin? ● A digital currency (or aka cryptocurrency)
● Software-based payment system
● The payment process acts between (potentially)
anonymous users
● Based on peer-to-peer network
● A lot of cryptography but nothing is encrypted :-)
● Without………..
![Page 5: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/5.jpg)
Who?
Satoshi Nakamotohttp://www.newsweek.com/2014/03/14/face-behind-bitcoin-247957.html
![Page 6: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/6.jpg)
Let’s make a payment
• Alice:
• retrieves the Bob’s address
• generates own Public/Private key
• builds a message with:
• Transaction of 1 BTC to Bob’s address
• Transaction’s signature
• Announces her public key for signature verification
• broadcasts the message to the Bitcoin network
Alice wants to
give 1 BTC to
Bob
![Page 7: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/7.jpg)
Why Public/Private key?
● Bob has the Alice’s public key
● Only Alice knows the private key
● Bob verifies the transaction signature using the
Alice’s public key
● Only Bob is authorized
because has the private
key
● Double-Spending
problem?
![Page 8: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/8.jpg)
Solve Double-Spending Problem
● Transaction details are sent and forwarded to all
Bitcoin nodes
● A Block-Chain contains all transaction done
● Each blocks into chains must be valid and must
include a proof-of-work
Network
![Page 9: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/9.jpg)
Bitcoin Address● A Bitcoin-balance is associated to the Bitcoin address
● A Bitcoin Address is derived by a ECDSA Public Key by using hash
functions
512 bit
ECDSA
Public
Key with
prefix
SHA-256
of Public
Key with
prefix
RIPEM1
60 of
SHA-256
output
Base58
Encoding
(HASH +
Checksu
m)
1422cPZaPRiqeWL8njn87NjLwgZxxmZmKp
Bitcoin Address
![Page 10: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/10.jpg)
Bitcoin transaction● Composed by one/more Input and Output
● Input(s) is a reference to an output(s) in a different
transaction
● Uses Scripting system (Forth-like - stack based) to
verify signatures and addresses
● Transaction can include fees
![Page 11: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/11.jpg)
Bitcoin transaction
![Page 12: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/12.jpg)
Bitcoin transaction is
Signed● The Transaction from B to C is signed with B’s
private key
● The B’s public key is included in the transaction
![Page 13: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/13.jpg)
Block Chain● A transaction databases shared by all
nodes (like a ledger)
● Each block must contain a Proof-of-Work
● Contains a reference (hash) to the
previous block
● Block chain avoids the double spending
![Page 14: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/14.jpg)
Transactions into block
Merkle Tree
![Page 15: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/15.jpg)
Proof-of-Work
● To add a block to a Block Chain
● Corresponds at time of computation
● The time is spent computing hash function
● The Proof-of-Work is builded when the hash’s output
has a specific property
● A block with a Proof-of-Work each 10 minutes about
● The difficulty is established by a target
![Page 16: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/16.jpg)
Miners
● The miners spends time to find a Proof-of-Work in
order to receive a Bitcoin fee (now is 25 BTC)
● The reward reduces 50% every 4 years
● The mining process will end when 21 million bitcoins
will be reached
● After that time the miners will earns imposing a
transaction fee
![Page 17: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/17.jpg)
Wallet software● Wallet software is used to generate address and
make transaction
![Page 18: BitCoin Protocol](https://reader036.vdocuments.site/reader036/viewer/2022062304/559c09551a28ab7f6a8b45a4/html5/thumbnails/18.jpg)
ATM in the world