Upgrade to Pro — share decks privately, control downloads, hide ads and more …

WTF is Blockchain???

Guy Kloss
October 07, 2016

WTF is Blockchain???

Layman's terms description of what Blockchain technology is.

Guy Kloss

October 07, 2016
Tweet

More Decks by Guy Kloss

Other Decks in Technology

Transcript

  1. Nuts’n’Bolts Explanation Beyond Money Issues What’s Money? Token, representing value

    By social contract Without acceptance, people won’t care. Law doesn’t matter! Guy Kloss | WTF is Blockchain??? 2/33
  2. Nuts’n’Bolts Explanation Beyond Money Issues Outline 1 Nuts’n’Bolts Explanation 2

    Beyond Money 3 Issues Guy Kloss | WTF is Blockchain??? 3/33
  3. Nuts’n’Bolts Explanation Beyond Money Issues Outline 1 Nuts’n’Bolts Explanation 2

    Beyond Money 3 Issues Guy Kloss | WTF is Blockchain??? 4/33
  4. Nuts’n’Bolts Explanation Beyond Money Issues Building a Digital Currency: Infocoin

    The protocol: “Infocoin” The money: “infocoin” Guy Kloss | WTF is Blockchain??? 5/33
  5. Nuts’n’Bolts Explanation Beyond Money Issues First Step: A Signed Letter

    of Intent The problem: Double spending (using the same money multiple times) Procedure Statement of transaction Sign that statement (with a crypto signature) → No-one else could have created that statement Announcement of that statement “to the entire world” Guy Kloss | WTF is Blockchain??? 6/33
  6. Nuts’n’Bolts Explanation Beyond Money Issues Using Serial Numbers: Unique Coins

    Problem What if a statement is sent multiple times? More money, or a “stutter”? Solution Introduce identifiers (serial numbers) for infocoins Needs a trusted source of serial numbers (e. g. a bank) “Bank” keeps track of all infocoins & verifies all transactions are legit Procedure Bob checks back with bank (A) The serial number belongs to Alice (B) The infocoin hasn’t been spent, yet Guy Kloss | WTF is Blockchain??? 7/33
  7. Nuts’n’Bolts Explanation Beyond Money Issues Making a “Collective” Bank We

    don’t want anyone to be in control of the currency → Let’s eliminate the bank Procedure Everyone keeps a complete record of transactions/ownerships A shared public ledger → The Blockchain (not quite, yet, but we’ll call it that way already) Bob checks the transaction from Alice against (his copy of) the blockchain If it checks out: Bob sends the transaction to the entire network Everyone updates their copy of the blockchain Guy Kloss | WTF is Blockchain??? 8/33
  8. Nuts’n’Bolts Explanation Beyond Money Issues Making a “Collective” Bank The

    Problem: What if Alice sends the same infocoin to Bob and Charlie within a brief period time? → Double spending problem Broadcast a transaction to the entire network Only accept on collective OK (when “enough” people have confirmed it’s OK) What’s “enough”? We don’t know who’s all on the Infocoin network! Guy Kloss | WTF is Blockchain??? 9/33
  9. Nuts’n’Bolts Explanation Beyond Money Issues The Cheating Problem Scenario: Alice

    wants to take over the Infocoin network She creates a large number of “bots” (identities) Alice’s sock puppet identities swamp the network, announcing the transaction is OK One or both (Bob and Charlie) are fooled into accepting the transaction Guy Kloss | WTF is Blockchain??? 10/33
  10. Nuts’n’Bolts Explanation Beyond Money Issues Proof-of-Work Idea: Proof-of-work Make it

    hard to validate transactions (computationally costly) Reward validated transactions Why does that help? Costly effort: Not feasible to influence with many identities Reward is to incentivise others to still do it → Impractical to cheat Guy Kloss | WTF is Blockchain??? 11/33
  11. Nuts’n’Bolts Explanation Beyond Money Issues Proof-of-Work Details Impractical to apply

    proof-of-work to every transaction Queue unapproved transactions Validate transactions against own copy of blockchain Solve a hard computational puzzle – the proof-of-work The puzzle is related to the queued transactions The network accepts a validation only with the solution Guy Kloss | WTF is Blockchain??? 12/33
  12. Nuts’n’Bolts Explanation Beyond Money Issues The Puzzle Bitcoin uses a

    hash function – SHA-256 (also other functions will do) Queue has a label l A random number x (a nonce) is appended This is hashed h(l|x) If the hash starts with n zeros, the puzzle is solved If not, choose a new nonce x, rinse and repeat Guy Kloss | WTF is Blockchain??? 14/33
  13. Nuts’n’Bolts Explanation Beyond Money Issues The Puzzle h("Hello, world!0") 1312af178c253f84028d480a6adc1e25e81caa44c749ec81976192e2ec934c64

    h("Hello, world!1") e9afc424b79e4f6ab42d99c81156d3a17228d6e1eef4139be78e948a9332a7d8 x = 2, 3, . . .; At x = 4250 we get: h("Hello, world!4250") 0000c3af42fc31103f1fdc0151fa747ff87349a4714df7cc52ea464e12dcd4e9 Number of leading zeros is adjusted regularly Caters for increase in compute performance Normalises new block frequency (Bitcoin: average 10 min per block) Guy Kloss | WTF is Blockchain??? 15/33
  14. Nuts’n’Bolts Explanation Beyond Money Issues Rewarding the Sweat & Tears

    Competition with “the world” Successful block wins a reward (in bitcoin, ether, infocoin, . . . ) → This is mining Acts as an incentive for the hard work Keeps the network honest Adjustments to rewards system Halving events Superceding with transaction fees for miners → Capping of total number of coins ever Guy Kloss | WTF is Blockchain??? 16/33
  15. Nuts’n’Bolts Explanation Beyond Money Issues Another Block in the Chain

    We’d like to retain order of transactions Otherwise: Uncertainty on who owns which infocoin at a time A linear chain: Next block refers to the previous → A new block is added to the chain Guy Kloss | WTF is Blockchain??? 18/33
  16. Nuts’n’Bolts Explanation Beyond Money Issues Concurrency Causes Forks Occasionally a

    fork happens If two miners succeed in solving the puzzle (nearly simultaneously) Guy Kloss | WTF is Blockchain??? 20/33
  17. Nuts’n’Bolts Explanation Beyond Money Issues What now? This is what

    we’re trying to avoid Keep track of both paths Miners only work on the longest fork One will eventually get longer “B” gets the next block first, work on “A” will cease Outstanding transactions on “B” will be integrated → Agreed upon ordering in time will be achieved Guy Kloss | WTF is Blockchain??? 21/33
  18. Nuts’n’Bolts Explanation Beyond Money Issues Dishonesty on Forking Back to

    the double spending problem: Forks can be a chance to double spend Will be detected once both blocks are available Variant on double spending if Alice = Bob (multiple identities) Forking intentionally after Charlie accepts the coin Community will continue on longest/earliest branch Not feasible to “catch up” with the legit branch Guy Kloss | WTF is Blockchain??? 22/33
  19. Nuts’n’Bolts Explanation Beyond Money Issues Outline 1 Nuts’n’Bolts Explanation 2

    Beyond Money 3 Issues Guy Kloss | WTF is Blockchain??? 23/33
  20. Nuts’n’Bolts Explanation Beyond Money Issues Content of Records For money,

    a block contain payment records. What if it contained . . . Multiple columns? “Documents” (e. g. JSON)? Code? Guy Kloss | WTF is Blockchain??? 24/33
  21. Nuts’n’Bolts Explanation Beyond Money Issues “Non-Chains” Just the hash trees

    (Merkle trees) Not using cryptographic signatures One-sided assurance only (from the CA side) → No assurance from the client/user Only proving the positive (document exists) → Not the negative (document does not exist) Guy Kloss | WTF is Blockchain??? 26/33
  22. Nuts’n’Bolts Explanation Beyond Money Issues Side Chains? What is the

    biggest, most used and most secure blockchain in operation? → Bitcoin So we should be using that one, right? Can’t do. Not useful for non-payment purposes. → Pegging a “side chain” to another (e. g. Bitcoin) Also possible for private chains → Federation approach Guy Kloss | WTF is Blockchain??? 27/33
  23. Nuts’n’Bolts Explanation Beyond Money Issues Visions New take on identity

    management Ownership Land registries Assets Transparency for KiwiSaver & weapons/tobacco/. . . NZX trading for (smaller) companies Proof of ownership Instant trading any time Simplified Support Contracts Guy Kloss | WTF is Blockchain??? 28/33
  24. Nuts’n’Bolts Explanation Beyond Money Issues Outline 1 Nuts’n’Bolts Explanation 2

    Beyond Money 3 Issues Guy Kloss | WTF is Blockchain??? 29/33
  25. Nuts’n’Bolts Explanation Beyond Money Issues Proof of Work Waste of

    energy? US$ 1 million in electricity for every day 10–100 times Google’s global compute capacity Scalability? Alternatives Proof of Stake Hybrids Centralised → May defeat the purpose Guy Kloss | WTF is Blockchain??? 30/33
  26. Nuts’n’Bolts Explanation Beyond Money Issues Which Chain? Which chain to

    adopt for use? The scene is still much in flow Not all problems are solved, yet Guy Kloss | WTF is Blockchain??? 31/33
  27. Nuts’n’Bolts Explanation Beyond Money Issues Resources Videos & talks: David

    Birch “A new way to stop identity theft” http://www.ted.com/talks/david_birch_identity_without_a_name Don Tapscott “How the blockchain is changing money and business” http: //www.ted.com/talks/don_tapscott_how_the_blockchain_is_changing_money_and_business Introduction: Michael Nielsen “How the Bitcoin protocol actually works” http://www.michaelnielsen.org/ddi/how-the-bitcoin-protocol-actually-works/ Guy Kloss | WTF is Blockchain??? 32/33