Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

Cryptocurrencies

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Wird geladen in …3
×

Hier ansehen

1 von 43 Anzeige

Cryptocurrencies

Herunterladen, um offline zu lesen

Bitcoin and other distributed virtual currencies are revolutionizing how monetary value is stored and exchanged on the Internet. Key opportunities and risks will be described. The two main objectives of this talk will be to explain the underlying blockchain and cryptology technologies that make them work, and to demonstrate PHP recipes for using the web services that enable payment processing, identity validation, and smart contract execution.

Bitcoin and other distributed virtual currencies are revolutionizing how monetary value is stored and exchanged on the Internet. Key opportunities and risks will be described. The two main objectives of this talk will be to explain the underlying blockchain and cryptology technologies that make them work, and to demonstrate PHP recipes for using the web services that enable payment processing, identity validation, and smart contract execution.

Anzeige
Anzeige

Weitere Verwandte Inhalte

Diashows für Sie (20)

Andere mochten auch (20)

Anzeige

Ähnlich wie Cryptocurrencies (20)

Anzeige

Aktuellste (20)

Cryptocurrencies

  1. 1. David Kelleher davidk.net CRYPTOCURRENCIES JOIND.IN/TALK/VIEW/13246
  2. 2.  BASICS - What is cryptocurrency  TECHNOLOGY - and terminology  OPPORTUNITIES - and RISKS  IMPLEMENTATION - PHP and beyond  COOKBOOK - recipes for use cases CRYPTOCURRENCIES
  3. 3. BASICS
  4. 4.  Peer to Peer technology  No "central bank" controlling monetary policy DECENTRALIZED
  5. 5.  The software is open source  The transaction ledger is public OPEN
  6. 6.  Like Cash IRREVERSIBLE
  7. 7.  Supply and Demand  (Scarcity and Community) VALUE
  8. 8. TECHNOLOGY
  9. 9.  One Way Functions CRYPTOGRAPHY
  10. 10. Clear Text Password Hash Function Stored Password Hash PASSWORD VERIFICATION EXAMPLE
  11. 11.  Private Key: Randomly generated "password”  Public Key: Generated from the Private Key using a one way function CRYPTOCURRENCY KEYS
  12. 12. Private Key One Way Elliptic Curve Function Public Key Hash Function Hashed Public Key CRYPTOCURRENCY KEYS
  13. 13.  Generated from the public key  This is the string you give out to receive a payment ADDRESS
  14. 14. Hashed Public Key + Checksum BASE58 Encoding Public Address ADDRESS
  15. 15.  Privacy Risks  Easier for a theoretical quantum computer to hack DON’T REUSE ADDRESSES
  16. 16.  Addresses are targeted in transactions  They do not "store" a running balance AN ADDRESS IS NOT AN ACCOUNT
  17. 17.  Software that stores your private keys  Reads through the entire transaction history to calculate your balance  Sends coins by automatically choosing unspent transactions to spend  Signs transactions with your private keys WALLET
  18. 18.  Mobile/Desktop  Lightweight Wallet  Web Wallet  Hardware Wallet  Cold Storage/Paper Wallet KINDS OF WALLETS
  19. 19.  Don't backup your wallet and lose all your private keys WAYS TO LOSE YOUR COINS #1
  20. 20.  Use a web wallet service that gets hacked or disappears WAYS TO LOSE YOUR COINS #2
  21. 21.  Distributed database of all transactions Feb 2015: Size is 29 GB, doubled in size last year BLOCKCHAIN
  22. 22.  Groups of transactions  Miners solve math problems  The first solution wins!  The miner wins an award (coins + fees)  Txns put in a new block and chained to end of the blockchain BLOCKS
  23. 23.  Everyone was supposed to mine with the software  ASICS (optimized hardware) took over  Risks centralization MINING
  24. 24. OPPORTUNITIES
  25. 25.  Microtransactions with low fees  Make direct payments without third party privacy risks  Sellers avoid chargebacks  No central point of failure  Developing world OPPORTUNITIES
  26. 26. RISKS
  27. 27.  Few consumer protections or regulations  High learning curve  Confirmation delays  Not anonymous  Scammers and hackers  Fluctuating values RISKS
  28. 28.  Herd mentality: buy high, sell low speculating  Complex tax reporting, compliance  Government crackdowns and regulations  Experimental  Possible exploits discovered in future  Competing virtual currencies RISKS
  29. 29.  bitcoin-qt: bitcoin peer and GUI wallet  bitcoind: bitcoin peer and JSON-RPC  bitcoin-cli: command line RPC IMPLEMENTATION
  30. 30.  https://github.com/bitcoin/bitcoin/blob/master/doc /build-unix.md  Security: https://bitcoinsecurityproject.org/  Keep most coins in cold storage when running an online wallet  Use fixed-point decimal numbers BITCOIND SERVER NODE
  31. 31. -testnet argument (public test blockchain) -regtest argument (new private blockchain) TESTING
  32. 32.  https://en.bitcoin.it/wiki/PHP_developer_intro  PHP JSON-RPC library http://jsonrpcphp.org/ require_once 'jsonRPCClient.php'; $myCoin = new jsonRPCClient('http://user:password@host:port/');  (RPC username, password, host, port) BITCOIND + PHP
  33. 33.  Generate a new address $newAddress = $myCoin->getnewaddress();  Send coins to the address $newAddress = $myCoin->sendtoaddress($newAddress, $amount); BITCOIND + PHP
  34. 34. https://github.com/Bit-Wasp/bitcoin-lib-php Implements more advanced features of Bitcoin (in development) PHP WRAPPERS
  35. 35.  https://en.bitcoin.it/wiki/API_reference_(JSON-RPC) Python, Ruby, Java, Perl, C#, Node.JS, cURL, C++ OTHER LANGUAGES
  36. 36. MORE EXAMPLES
  37. 37. PAYMENT PROTOCOL BIPS
  38. 38.  https://bitpay.com/  REST API CURL, PHP, Node.js, Python, Ruby, Java, C#, Perl, Android Integration with popular shopping carts  https://www.coinbase.com  Gocoin + Shopify COMMERCIAL APIS
  39. 39. 1. User scans a QR code containing a callback page and user session id: bitid://www.site.com/callback?x=NONCE 2. Wallet asks user if they want to proceed with identification 3. Wallet signs the BitID URI with the user's private key 4. Server validates the signature BITID AUTHENTICATION
  40. 40.  m of n signatures  Escrow people.xiph.org/~greg/escrowexample.txt MULTISIGNATURE
  41. 41.  Meta Coins https://en.bitcoin.it/wiki/Colored_Coins Create a new alt-coin on top of existing blockchain. New coins represent assets that can be traded. ASSET MANAGEMENT
  42. 42.  https://en.bitcoin.it/wiki/Contracts  Deferred payment: coins paid when a date has passed  Crowdfunding: coins paid when funding levels reached SMART CONTRACTS
  43. 43. David Kelleher davidk.net CRYPTOCURRENCIES JOIND.IN/TALK/VIEW/13246

×