bitcoins math

Download Bitcoins Math

Post on 28-Jan-2015

108 views

Category:

Technology

5 download

Embed Size (px)

DESCRIPTION

A short seminar presentation on the technical background of Bitcoins. Some basic concepts behind bitcoin addresses are discussed. An overview on the concepts of transactions and blocks is given.

TRANSCRIPT

  • 1. Introduction Bitcoin addressesTransactionsBlock chainBitcoins Mathematical BackgroundAkram El-Korashy1 1 ComputerScience and Engineering German University in CairoCSEN 1033 Seminar in Topics and Applications inCryptography, 2013Akram El-KorashyBitcoins Math

2. IntroductionBitcoin addresses Transactions Block chainOutline1 Introduction Bitcoins network properties2 Bitcoin addresses BTC address generation overview BTC address cryptography3 Transactions4 Block chainAkram El-Korashy Bitcoins Math 3. IntroductionBitcoin addresses Bitcoins network properties Transactions Block chainOutline1 Introduction Bitcoins network properties2 Bitcoin addresses BTC address generation overview BTC address cryptography3 Transactions4 Block chainAkram El-Korashy Bitcoins Math 4. IntroductionBitcoin addresses Bitcoins network properties Transactions Block chainMain features Bitcoins can be transferred between arbitrary nodes. Transactions can be received at any time. Transactions are broadcast within seconds.Akram El-Korashy Bitcoins Math 5. Introduction Bitcoin addressesBitcoins network propertiesTransactionsBlock chainMain features Bitcoins can be transferred between arbitrary nodes. Transactions can be received at any time. Transactions are broadcast within seconds. Transactions are veried within 10 to 60 minutes. Transactions are irreversible. Double spending is prevented by using a block chain. Akram El-Korashy Bitcoins Math 6. IntroductionBitcoin addresses Bitcoins network properties Transactions Block chainMain featuresBitcoin addresses Bitcoins can be transferred between arbitrary nodes. Transactions can be received at any time. Transactions are broadcast within seconds. Transactions are veried within 10 to 60 minutes. Transactions are irreversible. Double spending is prevented by using a block chain.Akram El-Korashy Bitcoins Math 7. IntroductionBitcoin addresses Bitcoins network properties Transactions Block chainMain featuresBitcoin addressesBitcoins can be transferred between arbitrary nodes.Transactions can be received at any time.Transactions are broadcast within seconds.Bitcoin blockchainsTransactions are veried within 10 to 60 minutes.Transactions are irreversible.Double spending is prevented by using a block chain.Akram El-Korashy Bitcoins Math 8. IntroductionBitcoin addressesBTC address generation overview TransactionsBTC address cryptography Block chainOutline1 Introduction Bitcoins network properties2 Bitcoin addresses BTC address generation overview BTC address cryptography3 Transactions4 Block chainAkram El-Korashy Bitcoins Math 9. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressDenition Denition Bicoin address is an identier of 27-34 alphanumeric characters, that represents a possible destination for a Bitcoin payment. Akram El-Korashy Bitcoins Math 10. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressDenition Denition Bicoin address is an identier of 27-34 alphanumeric characters, that represents a possible destination for a Bitcoin payment. Address Generation A Bitcoin address is a 160-bit hash of the public portion of a public/private ECDSA keypair. Akram El-Korashy Bitcoins Math 11. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressAddress Generation Choose a random Elliptic-Curve key-pair. The public part is converted into a BTC address Akram El-Korashy Bitcoins Math 12. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressAddress Generation The 20 bytes Message Digest from RIPEMD-160.. Akram El-Korashy Bitcoins Math 13. IntroductionBitcoin addressesBTC address generation overview TransactionsBTC address cryptography Block chainOutline1 Introduction Bitcoins network properties2 Bitcoin addresses BTC address generation overview BTC address cryptography3 Transactions4 Block chainAkram El-Korashy Bitcoins Math 14. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressDenitions and some Math Denition Base58 Akram El-Korashy Bitcoins Math 15. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressDenitions and some Math Denition Base58 encoding is a binary-to-text encoding, that uses only the alphanumeric characters Akram El-Korashy Bitcoins Math 16. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressDenitions and some Math Denition Base58 encoding is a binary-to-text encoding, that uses only the alphanumeric characters (except 0,O,I, and l.) Akram El-Korashy Bitcoins Math 17. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressDenitions and some Math Denition Base58 encoding is a binary-to-text encoding, that uses only the alphanumeric characters (except 0,O,I, and l.) Denition RIPEMD-160 is a cryptographic hash function that generates a 160-bit digest of an arbitrary size block of data. Example RIPEMD-160("The quick brown fox jumps over the lazy dog") = 37f332f68db77bd9d7edd4969571ad671cf9dd3b RIPEMD-160("The quick brown fox jumps over the lazy cog") = 132072df690933835eb8b6ad0b77e7b6f14acad7 Akram El-Korashy Bitcoins Math 18. IntroductionBitcoin addressesBTC address generation overview TransactionsBTC address cryptography Block chainBitcoin AddressSecure Hash Algorithm-256Input: arbitrary length data, Output: 256-bit digestMerkle-Damgard Construction (one-way compressionfunction, block ciphers)Akram El-Korashy Bitcoins Math 19. IntroductionBitcoin addressesBTC address generation overview TransactionsBTC address cryptography Block chainDenitionElliptic curve over a eld Fp can be dened as the set of points (x,y)satisfying the equationy 2 mod p = (x 3 + ax + b) mod pAkram El-Korashy Bitcoins Math 20. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainDenitionElliptic curve over a eld Fp can be dened as the set of points (x,y)satisfying the equation y 2 mod p = (x 3 + ax + b) mod pExampleThe set of afne points of the elliptic curve y 2 = x 3 x over F61 . Akram El-Korashy Bitcoins Math 21. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressElliptic Curve Digital Signature AlgorithmAny signature algorithm has a Sign phase and a Verifyphase. Akram El-Korashy Bitcoins Math 22. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressElliptic Curve Digital Signature AlgorithmAny signature algorithm has a Sign phase and a Verifyphase. Some parameters agreed upon between sender andreceiver:1 q eld size Akram El-Korashy Bitcoins Math 23. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressElliptic Curve Digital Signature AlgorithmAny signature algorithm has a Sign phase and a Verifyphase. Some parameters agreed upon between sender andreceiver:1 q eld size2 FR the basis used - can assume a xed basis Akram El-Korashy Bitcoins Math 24. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressElliptic Curve Digital Signature AlgorithmAny signature algorithm has a Sign phase and a Verifyphase. Some parameters agreed upon between sender andreceiver:1 q eld size2 FR the basis used - can assume a xed basis3 a, b parameters of the equation Akram El-Korashy Bitcoins Math 25. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressElliptic Curve Digital Signature AlgorithmAny signature algorithm has a Sign phase and a Verifyphase. Some parameters agreed upon between sender andreceiver:1 q eld size2 FR the basis used - can assume a xed basis3 a, b parameters of the equation (eld elements) Akram El-Korashy Bitcoins Math 26. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressElliptic Curve Digital Signature AlgorithmAny signature algorithm has a Sign phase and a Verifyphase. Some parameters agreed upon between sender andreceiver:1 q eld size2 FR the basis used - can assume a xed basis3 a, b parameters of the equation (eld elements)4 G base point, and5 n its order - group element order, point addition, pointdoubling Akram El-Korashy Bitcoins Math 27. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressElliptic Curve Digital Signature AlgorithmAny signature algorithm has a Sign phase and a Verifyphase. Some parameters agreed upon between sender andreceiver:1 q eld size2 FR the basis used - can assume a xed basis3 a, b parameters of the equation (eld elements)4 G base point, and5 n its order - group element order, point addition, pointdoubling (can be calculated from G!) Akram El-Korashy Bitcoins Math 28. Introduction Bitcoin addressesBTC address generation overviewTransactionsBTC address cryptographyBlock chainBitcoin AddressElliptic Curve Digital Signature AlgorithmAny signature algorithm has a Sign phase and a Verifyphase. Some parameters agreed upon between sender andreceiver:1 q eld size2 FR the basis used - can assume a xed basis3 a, b parameters of the equation (eld elements)4 G base point, and5 n its order - group element order, point addition, pointdoubling (can be calculated from G!)6 h cofactor - order of the curve divided by n Akram El-Korashy Bitcoins Math 29. Introduction Bitcoin addressesTransactionsBlock chainTransactionsDenitions Denition A tra