Upload
wojciech-langiewicz
View
655
Download
2
Embed Size (px)
Citation preview
Bitcoin - Introduction for programmers
Wojciech Langiewicz, Chamber Conf 2016http://www.wlangiewicz.com
History
● Appeared in 2009 thanks to author - Satoshi Nakamoto
What problem Bitcoin solves?
● Assigning a notion of ownership to digital goods (bits)
● Ability to transfer ownership of those goods (bits)
Online Bitcoin Exchanges
● Many companies are running various Bitcoin exchanges● You can trade fiat currencies to Bitcoin
Bitcoin Wallet
Mining - overview
● Bitcoin nodes collect unconfirmed transactions and try to create new valid block
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
Mining - creating new coins
Blockchain - overview
● The Bitcoin database● Each block references
previous one
Blockchain
A little similar to Git
image source: Theymos from Bitcoin wiki CC BY 3.0
Blockchain
Blockchain is append only
Blockchain
Blockchain is also distributed
Without any central authority
Blockchain use case
Proof of Existence
Blockchain and accounting
● Double entry accounting
● Each transaction has 2 sides
● Inputs● Outputs
Transaction Inputs and Outputs
Transaction Types
Multisig Transactions
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