18
1 Bitcoin A Digital Currency

BitCoin Protocol

Embed Size (px)

DESCRIPTION

General view of BitCoin Protocol

Citation preview

Page 1: BitCoin Protocol

1

BitcoinA Digital Currency

Page 2: BitCoin Protocol

Functions of Money

Page 3: BitCoin Protocol

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

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

Who?

Satoshi Nakamotohttp://www.newsweek.com/2014/03/14/face-behind-bitcoin-247957.html

Page 6: BitCoin Protocol

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

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

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

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

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

Bitcoin transaction

Page 12: BitCoin Protocol

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

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

Transactions into block

Merkle Tree

Page 15: BitCoin Protocol

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

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

Wallet software● Wallet software is used to generate address and

make transaction

Page 18: BitCoin Protocol

ATM in the world