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

Cryptography in Bitcoin

Cryptography in Bitcoin

Talk for CryptoParty Singapore 2013
https://cryptoparty.org/wiki/Singapore

U-Zyn Chua

April 15, 2013
Tweet

More Decks by U-Zyn Chua

Other Decks in Technology

Transcript

  1. in Bitcoin
    Cryptography
    by U-Zyn Chua
    for Singapore CryptoParty
    15 April 2013

    View Slide

  2. U-Zyn Chua
    is not
    Cryptographer
    Economist

    View Slide

  3. U-Zyn Chua
    is
    IT Consultant @
    Security enthusiast
    Bitcoiner

    View Slide

  4. How many... ?
    Bitcoiner?
    Knows about Bitcoin?
    Have no idea about Bitcoin?

    View Slide

  5. View Slide

  6. What is Bitcoin?
    Distributed
    electronic cash protocol
    and a unit of currency

    View Slide

  7. What is Bitcoin?
    Satoshi Nakamoto
    Genesis block on 3 Jan 2009
    “Gone for good” since late 2010

    View Slide

  8. What is Bitcoin?

    View Slide

  9. 1m44s

    View Slide

  10. What makes a currency?
    Scarce
    Predictable growth
    Secure
    Valuable

    View Slide

  11. Production is halved every 4 years
    Never more than 21 million

    View Slide

  12. ~USD 100/Bitcoin

    View Slide

  13. Problems
    Currency creation
    Keeps value stable
    Fraud prevention

    View Slide

  14. Cryptography
    No central bank
    No watchdog
    only
    No authority

    View Slide

  15. How does Bitcoin work?
    Public-key cryptography
    Peer-to-peer network
    Proof-of-work

    View Slide

  16. Public-key crypto
    160-bit hash (SHA-256)
    18YCR8bvxLaVCmbgY6eCavF733QDs1sQDT
    Base58-encoded
    Generate as many as you want
    215,000,000,000,000,000,000,000,000,0
    00,000,000,000 addresses per capita.

    View Slide

  17. Public-key crypto

    View Slide

  18. Transaction
    Public & broadcasted
    http://blockchain.info

    View Slide

  19. Transaction
    499335.01317523 1DkyBEKt5S2GDtv7aQw6rQepAvnsRyHoYM
    105555.03133700 1933phfhK3ZgFQNLGSDXvqCn32k2buXY8a
    79957.03133700 1FeexV6bAHb8ybZjqQMjJrcCrHGW9sb6uF
    53000.03133700 16cou7Ht6WjTzuFyDBnht9hmvXytg6XdVT
    50259.03133700 1CfPAfVDe1Br11SkNrk2bEMmMP3bAA5wRr
    50130.03133700 13vJZKHKBirruXwmjMaRtakzPQRRHQit1S
    50000.03133700 1P3S1grZYmcqYDuaEDVDYobJ5Fx85E9fE9
    50000.03133700 1DEpjpftLbsGiCJvJDp2F2quVRnymV8U5Q
    47458.03133700 1BBqjKsYuLEUE9Y5WzdbzCtYzCiQgHqtPN
    44914.03133700 1MR6pXDZ6gpBVN8n61SqCNF61vU8ZzRu8Y
    44512.03133700 1BVA88962SxcymHSfqXSy9F7cgXefi3zgt
    40000.03133700 16Ls6azc76ixc9Ny7AB5ZPPq6oiEL9XwXy
    40000.03133700 12HddUDLhRP2F8JjpKYeKaDxxt5wUvx5nq
    40000.03133700 1cXNTyXj4xPGopfYZNY5xfSM1EPJJvBZV
    38058.03133700 1FngtAcZsLfK89MNe7TqzyqVtSype8TiVD
    38000.03133700 18Hsgq92AUB1PYLU6MUMQXiwdebaDRo9oQ
    35000.00000000 1DAmsh8tHUtH2cVUDMxnDkKr8SaPNkb36h
    31000.03133700 12ib7dApVFvg82TXKycWBNpN8kFyiAN1dr
    30000.03133700 1MyGwFAJjVtB5rGJa32M6Yh46cGirUta1K
    Bitcoin richest

    View Slide

  20. Transaction
    499335.01317523 1DkyBEKt5S2GDtv7aQw6rQepAvnsRyHoYM
    105555.03133700 1933phfhK3ZgFQNLGSDXvqCn32k2buXY8a
    79957.03133700 1FeexV6bAHb8ybZjqQMjJrcCrHGW9sb6uF
    53000.03133700 16cou7Ht6WjTzuFyDBnht9hmvXytg6XdVT
    50259.03133700 1CfPAfVDe1Br11SkNrk2bEMmMP3bAA5wRr
    50130.03133700 13vJZKHKBirruXwmjMaRtakzPQRRHQit1S
    50000.03133700 1P3S1grZYmcqYDuaEDVDYobJ5Fx85E9fE9
    50000.03133700 1DEpjpftLbsGiCJvJDp2F2quVRnymV8U5Q
    47458.03133700 1BBqjKsYuLEUE9Y5WzdbzCtYzCiQgHqtPN
    44914.03133700 1MR6pXDZ6gpBVN8n61SqCNF61vU8ZzRu8Y
    44512.03133700 1BVA88962SxcymHSfqXSy9F7cgXefi3zgt
    40000.03133700 16Ls6azc76ixc9Ny7AB5ZPPq6oiEL9XwXy
    40000.03133700 12HddUDLhRP2F8JjpKYeKaDxxt5wUvx5nq
    40000.03133700 1cXNTyXj4xPGopfYZNY5xfSM1EPJJvBZV
    38058.03133700 1FngtAcZsLfK89MNe7TqzyqVtSype8TiVD
    38000.03133700 18Hsgq92AUB1PYLU6MUMQXiwdebaDRo9oQ
    35000.00000000 1DAmsh8tHUtH2cVUDMxnDkKr8SaPNkb36h
    31000.03133700 12ib7dApVFvg82TXKycWBNpN8kFyiAN1dr
    30000.03133700 1MyGwFAJjVtB5rGJa32M6Yh46cGirUta1K
    Bitcoin richest
    500k BTC
    ~ USD 50 million
    stored in a
    PUBLIC
    string!

    View Slide

  21. Mining
    Adding tx records to ledger
    Confirm transactions
    Profit (50 25 BTC / block)
    ???

    View Slide

  22. View Slide

  23. View Slide

  24. Block chain
    Broadcasted transaction database
    since Day 1 (Jan 3 2009)
    1 block every 10 minutes
    (how?)
    Currently at >6GB

    View Slide

  25. Block
    Field Purpose
    Version Client version
    Previous hash Hash of previous block
    Merkle root Hash of transactions
    Timestamp Current UNIX time
    Target Target hash
    Nonce 32-bit number

    View Slide

  26. Target
    1 block every 10 minutes
    (this is how!)
    A (max) target hash output
    Generate lower hash than the target
    The higher the target is, the harder it is

    View Slide

  27. Target
    Let’s look back at block’s component
    and assume that we want to make
    a hash with the following output
    0x0000000000000fffffffff.....

    View Slide

  28. Target
    Difficulty is adjusted every
    2016 blocks (2 weeks)
    Based on time it takes for
    the last 2016 blocks
    Current chance to find a block:
    0.0000000000000000303436847859644281966140511030971538275

    View Slide

  29. Block generation

    View Slide

  30. Block generation

    View Slide

  31. Cryptography
    is the authority!
    is the watchdog!
    Many other clever
    features of Bitcoin

    View Slide

  32. Security incidents

    View Slide

  33. Security incidents

    View Slide

  34. Security incidents

    View Slide

  35. Is Bitcoin safe?
    https://github.com/bitcoin/bitcoin
    Reward: USD 140 million

    View Slide

  36. Is Bitcoin safe?
    https://github.com/bitcoin/bitcoin
    Reward: USD 140 million
    Reward: USD 1.1 billion!

    View Slide

  37. Bitcoin vs Bank
    Bitcoin Bank
    Trust no one Trust bank
    Open source Closed source
    Proven & known
    security
    Obscured security

    View Slide

  38. Questions?
    @uzyn
    [email protected]

    View Slide