20
Bitcoin - Introduction for programmers Wojciech Langiewicz, Chamber Conf 2016 http://www.wlangiewicz.com

Bitcoin: introduction for programmers - Pecha Kucha

Embed Size (px)

Citation preview

Page 1: Bitcoin:   introduction for programmers - Pecha Kucha

Bitcoin - Introduction for programmers

Wojciech Langiewicz, Chamber Conf 2016http://www.wlangiewicz.com

Page 2: Bitcoin:   introduction for programmers - Pecha Kucha

History

● Appeared in 2009 thanks to author - Satoshi Nakamoto

Page 3: Bitcoin:   introduction for programmers - Pecha Kucha

What problem Bitcoin solves?

● Assigning a notion of ownership to digital goods (bits)

● Ability to transfer ownership of those goods (bits)

Page 4: Bitcoin:   introduction for programmers - Pecha Kucha
Page 5: Bitcoin:   introduction for programmers - Pecha Kucha

Online Bitcoin Exchanges

● Many companies are running various Bitcoin exchanges● You can trade fiat currencies to Bitcoin

Page 6: Bitcoin:   introduction for programmers - Pecha Kucha

Bitcoin Wallet

Page 7: Bitcoin:   introduction for programmers - Pecha Kucha

Mining - overview

● Bitcoin nodes collect unconfirmed transactions and try to create new valid block

Page 8: Bitcoin:   introduction for programmers - Pecha Kucha

Mining continued

● If miner finds a block, it’s announced to the whole network● If miner tries to cheat, relay nodes will reject invalid block

Page 9: Bitcoin:   introduction for programmers - Pecha Kucha

Mining - creating new coins

Page 10: Bitcoin:   introduction for programmers - Pecha Kucha

Blockchain - overview

● The Bitcoin database● Each block references

previous one

Page 11: Bitcoin:   introduction for programmers - Pecha Kucha

Blockchain

A little similar to Git

image source: Theymos from Bitcoin wiki CC BY 3.0

Page 12: Bitcoin:   introduction for programmers - Pecha Kucha

Blockchain

Blockchain is append only

Page 13: Bitcoin:   introduction for programmers - Pecha Kucha

Blockchain

Blockchain is also distributed

Without any central authority

Page 14: Bitcoin:   introduction for programmers - Pecha Kucha

Blockchain use case

Page 15: Bitcoin:   introduction for programmers - Pecha Kucha

Proof of Existence

Page 16: Bitcoin:   introduction for programmers - Pecha Kucha

Blockchain and accounting

● Double entry accounting

● Each transaction has 2 sides

● Inputs● Outputs

Page 17: Bitcoin:   introduction for programmers - Pecha Kucha

Transaction Inputs and Outputs

Page 18: Bitcoin:   introduction for programmers - Pecha Kucha

Transaction Types

Page 19: Bitcoin:   introduction for programmers - Pecha Kucha

Multisig Transactions

Page 20: Bitcoin:   introduction for programmers - Pecha Kucha

Thank you, you can read more here:

● https://github.com/bitcoinbook/bitcoinbook - Very good and technical Bitcoin book- Also the source for some of the images