Bitcoin : A fierce Decentralized internet currency

38
Bitcoin A Decentralized, P2P, Crypto Currency

description

Presentation on how the bitcoin protocol works.

Transcript of Bitcoin : A fierce Decentralized internet currency

Page 1: Bitcoin : A fierce Decentralized internet currency

BitcoinA Decentralized, P2P, Crypto Currency

Page 2: Bitcoin : A fierce Decentralized internet currency

Bitcoin protocol

1. Transactions2. Block (Chains)3. Bitcoin Mining (Pools)4. Wallet

Page 3: Bitcoin : A fierce Decentralized internet currency

Bitcoin Beginning

1. 20082. “Satoshi Nakamoto”3. Anonymous Underground Genius

Page 4: Bitcoin : A fierce Decentralized internet currency

Bit What ?

“Bitcoin is an innovative payment method & a new kind of money”

--bitcoin.org

Page 5: Bitcoin : A fierce Decentralized internet currency

Bit What ?

“Bitcoin is an innovative payment method & a new kind of money”

PEER TO PEER FUND TRANSFER

GLOBAL ACCEPTANCE

LOW or NO PROCESSING FEE

Page 6: Bitcoin : A fierce Decentralized internet currency

Bit What ?

PEER TO PEER FUND TRANSFER

GLOBAL ACCEPTANCE

LOW or NO PROCESSING FEE

NO BANKS OR REGULATING AGENCIES

Page 7: Bitcoin : A fierce Decentralized internet currency

Bit What ?

PEER TO PEER FUND TRANSFER

GLOBAL ACCEPTANCE

LOW or NO PROCESSING FEE

ANONYMOUS TRANSFERS

NO TRANSFER LIMITS

YOUR ACCOUNT CANNOT BE SEIZED

NO BANKS OR REGULATING AGENCIES

Page 8: Bitcoin : A fierce Decentralized internet currency

Bitcoin Protocol is Complex

And requires knowledge of :1. Hashing2. Digital Signatures3. JSONRPC4. Digital Architecture (general)5. Finance 6. Sociology (explicitly built into system)

Page 9: Bitcoin : A fierce Decentralized internet currency

Digital Signatures

Alice

SK VK

Page 10: Bitcoin : A fierce Decentralized internet currency

Digital Signatures

Message SK

Signature

ECDSA

Alice

SK VK

Page 11: Bitcoin : A fierce Decentralized internet currency

Digital Signatures

Message SK

Signature

ECDSA

Alice

SK VK

Message VK

bool

ECDSA-1

Sign

Page 12: Bitcoin : A fierce Decentralized internet currency

Bitcoin transactions

Are like a ledger entry to a global(open) ledger called the block chain

You own bitcoins if there is a record of some bitcoins being credited to you in the ledger

Page 13: Bitcoin : A fierce Decentralized internet currency

Naming Conventions

Transactions (ledger entry)

Blocks (ledger page)

Block Chains (ledger)

Page 14: Bitcoin : A fierce Decentralized internet currency

Transaction Records

Alice Bob฿ 50

VKa SKa VKb SKb

Page 15: Bitcoin : A fierce Decentralized internet currency

Transaction Records

Alice Bob฿ 50

VKa SKa VKb SKb

VKc

VKd

VKe

30

40

10

Record of bitcoins being transferred to Alice earlier

Page 16: Bitcoin : A fierce Decentralized internet currency

Transaction Records

Alice Bob฿ 50

VKa SKa VKb SKb

VKc

VKd

VKe

30

40

10

Dc

Dd

De

Page 17: Bitcoin : A fierce Decentralized internet currency

Transaction Records

Alice Bob฿ 50

VKa SKa VKb SKb

VKc

VKd

VKe

30

40

10

Dc

Dd

De

VKb, ฿ 50

VKa, ฿ 28

INPUT OUTPUT

฿ 2 transaction feethat’s charged by the miner against Proof Of Work

Page 18: Bitcoin : A fierce Decentralized internet currency

Transaction Records

Alice Bob฿ 50

VKa SKa VKb SKb

VKc

VKd

VKe

30

40

10

Dc

Dd

De

VKb, ฿ 50

VKa, ฿ 28

SKa

Page 19: Bitcoin : A fierce Decentralized internet currency

Transaction Records

Dc

Dd

De

VKb, ฿ 50

VKa, ฿ 28

SKa

Page 20: Bitcoin : A fierce Decentralized internet currency

Proof of Work Protocol

A proof of work is a piece of data which is difficult to produce so as to satisfy certain requirements.

Producing a proof of work can be a random process with low probability.

Page 21: Bitcoin : A fierce Decentralized internet currency

Bitcoin’s Proof of Work

Bitcoin needs a miner to solve for a proof which, the hash of, when concatenated with hash string should have a certain(predefined) number of preceding zeros.

Page 22: Bitcoin : A fierce Decentralized internet currency

Bitcoin’s Proof of Work

Example (Let challenge = C, proof i = Pi)Hash(P1C) = fj8wru38wrajfhjafhjka…Hash(P2C) = fuwu893r98wefjlioas……Hash(PnC) = 000fhf8iaedihuhfuias...

Page 23: Bitcoin : A fierce Decentralized internet currency

Transaction Blocks

Alice Bob฿ 50

Single transaction

Page 24: Bitcoin : A fierce Decentralized internet currency

Transaction Blocks

Page 25: Bitcoin : A fierce Decentralized internet currency

Transaction Blocks

MINERMINER MINERMINERMINER

Page 26: Bitcoin : A fierce Decentralized internet currency

Transaction Blocks

MINERMINER MINERMINERMINER

Page 27: Bitcoin : A fierce Decentralized internet currency

Transaction Blocks

MINERMINER MINERMINERMINER

Page 28: Bitcoin : A fierce Decentralized internet currency

Transaction Blocks

MINER

HASH

FINAL HASH

HASH

Page 29: Bitcoin : A fierce Decentralized internet currency

Transaction Blocks

MINER

CHALLENGE (256 bit hash)

HASH

FINAL HASH

HASH

Page 30: Bitcoin : A fierce Decentralized internet currency

Transaction Blocks

MINER

HASH

FINAL HASH

HASH

CHALLENGE (256 bit hash)

PROOF

HASH 00000000006872hkhaks67y7q2kjnjzxc8zx9mq3w8703q09chjchajhcjhajc3rnqw

Page 31: Bitcoin : A fierce Decentralized internet currency

25 + Transaction Fee

MINER

Page 32: Bitcoin : A fierce Decentralized internet currency

25 + Transaction Fee

MINER

The miner is allowed to add a coinbase transaction to every block she mines as a reward. This is how new coins are generated.

Page 33: Bitcoin : A fierce Decentralized internet currency

Time taken per block

As per the specification, the network should come up with a new block every 10 minutes.

This also means that a transaction should generally take 10 minutes to be completed.

Page 34: Bitcoin : A fierce Decentralized internet currency

Difficulty Calibration

To ensure 10 minute transaction time, the difficulty of mining is calibrated every 2016 blocks(or two weeks)

Page 35: Bitcoin : A fierce Decentralized internet currency

Reducing Difficulty

Happens when the network more than 10 minutes per block

The difficulty is reduced by reducing the number of preceding 0s required in the proof string

Page 36: Bitcoin : A fierce Decentralized internet currency

Increasing Difficulty

Happens when the network less than 10 minutes per block

The difficulty is increased by increasing the number of preceding 0s required in the proof string

Page 37: Bitcoin : A fierce Decentralized internet currency

Jinter Video Demo

I was able to mine 0.000005 BTC

Page 38: Bitcoin : A fierce Decentralized internet currency

SHIVEK KHURANACluster Innovation Centre

University Of Delhi