460 likes | 486 Views
Bitcoin. CS 401/601 Computer Network Systems Mehmet Gunes. Modified from Murtuza Jadliwala , Ivan Rubinić , David V Duccini , Amir Houmansadr , Sascha Boehme, Jason Madden. Bitcoin Whitepaper – 2008.10.31. BitCoin.
E N D
Bitcoin CS 401/601 Computer Network Systems Mehmet Gunes Modified from MurtuzaJadliwala, Ivan Rubinić, David V Duccini, Amir Houmansadr, SaschaBoehme, Jason Madden
BitCoin • It is simply a means of sending and receiving numbers to and from "addresses" • Described by Satoshi Nakamoto in 2008 • Introducedas open-source software in 2009 • An Open-Source Peer-To-Peer Payment Network • Payments are recorded in a public ledger • Using Digital Signatures & Encryption • decentralization is the basis for Bitcoin's security and freedom
Bitcoin • A protocol that supports a decentralized, pseudo-anonymous, peer-to-peer digital currency • A publicly disclosed linked ledger of transactions stored in a blockchain • A reward driven system for achieving consensus (mining) based on “Proofs of Work” for helping to secure the network • A “scare token” economy with an eventual cap of about 21M bitcoins
Bitcoin • Governance - an open source community of developers backed by the Bitcoin Foundation. • Democratic - if you don't like one of the changes, you are more than welcome to fork the chain and implement your own rules • Money Creation - is given to the people, not to the central bankers. • Deflationary by design - money supply cannot be manipulated and is fixed at 21 million coins, each divisible up to 8 decimal
Features of Bitcoin • Is “deflationary” – the reward is cut in half every four years, and tokens can be irrevocably destroyed • Nearly infinitely divisible currency units supporting eight decimal places 0.00000001(known as a Satoshi) • Nominal transaction fee’s paid to the network • Same cost to send $.01 as $1,000,000 • Consensus driven – no central authority • Counterfeit resilient • Cannot add coins arbitrarily • Cannot be double-spent • No recourse and no one to appeal to return sent tokens
Brief history of bitcoin http://historyofbitcoin.org/
Number of Transactions per Day https://www.blockchain.com/charts
The Bitcoin Startup Ecosystem: Six Different Bitcoin Company Categories Exchanges Wallets Universal Financial Services Payment Processing Mining
Legality of Bitcoin by country https://map.bitlegal.io/
Why Bitcoin became the pioneer in virtual currency • Financial crisis caused meltdown of the economy in 2008-2009 • Caused a transfer of assets form real-estate and financial sphere to investment into commodities that are traditionally considered as a stable store of values • Historically, Gold is best known commodity of that type because quantity of this metal is limited and, therefore, it is great way how to hedge your portfolio in times when usage of expansive monetary policy is highly likely • Bitcoin is similar to gold (except there is no intrinsic value) and when the value of gold started to decrease due to the price roof that it had reached and partial recovery of financial market, value of bitcoin soared because it was cleverly designed financial product with finite quantity
How it works • The block chain is the fundamental data structure of the Bitcoin protocol • It's a single data file participants pass around to each other • It allows them to know who owns what • Anyone can change it to send money to someone else • Other users mathematically verify the transaction to ensure it's validity
How It Works • It's essentially an accounting ledger: • 3/3/13 Sally found : $15.00 • 3/3/13 Sally -> Bob : $10.00 • 3/4/13 Bob -> Jimmy : $4.00 • 3/4/13 Sally -> Barb : $4.00 • 3/4/13 Jimmy -> Sally : $2.00 • How much money does Sally have in her wallet? • Sally had $15, then gave $10 to Bob, then $4 to Barb, then was given $2 from Jimmy. Sally has $3 as of right now.
Decentralized • The “digital wallet” operates in a peer to peer mode • When it starts it bootstraps to find other wallets • Originally it used the Internet Relay Chat (IRC) network • Now based on DNS and “seed nodes” • The wallet will synchronize with the network by downloading ALL of the transactions starting from the GENESIS block if necessary • 572,061 blocks at time of slide prep • Over 210 GB • Using a “gossip protocol” the wallets share all transaction information with their peers
Coins flow from Inputs to Outputs A coin owner transfers coins by digitally signing (via ECDSA) a hash digest of the previous transaction and the public key of the next owner. This signature is then appended to the end of the coin.
Transactions Input contains 1) A public key that belongs to the redeemer of the output transaction. 2) An ECDSA hash over a hash of the transaction. Output contains 1) The actual amount being sent to the recipient. 2) The change amount being sent back to the original sender (if any) 3) The voluntary transaction fee attached to the output (if any). The block chain prevents the double spend attack by giving other nodes the power to verify that transaction inputs were not already spent somewhere else.
Bitcoin • Bitcoin blocks • Users maintain a chain of blocks. • New block Bi = Ti || H(Bi-1)||R • If a transaction t is contained in a block Bi and several new blocks on top of it, then the adversary cannot revert t unless it has more commutating power than half of the Bitcoin network. random salt new transaction list hash of previous block
Bitcoin Transaction • Tx=(y, B.pk, v, sigA(y, B.pk, v)) • Tx is valid only if • A.pk was the recipient of Ty • The value of Ty was at least v • The transaction Ty has not been redeemed earlier • The signature of A is correct a transaction from address A.pk to address B.pk signature of A input (redeemed) transaction index amount transferred
Pseudo Anonymous • Using public key cryptography, specifically Elliptic Curve Cryptography due to its key strength and shorter keys • Transactions are sent to public key “addresses” 1AjYPi8qryPCJu6xgdJuQzVnWFXLmxq9s3 1Give4dbry2pyJihnpqV6Urq2SGEhpz3K
Addresses are like Accounts • The wallet listens for transactions addressed to any of its public keys and in theory is the only node that is able to decrypt and accept the transfer • “Coins” are “sent” by broadcasting the transaction to the network which are verified to be viable and then added to a block • Keys can represent a MULTI-SIG address that requires a N of M private keys in order to decrypt the message
Identities in a cryptocurrency • How to make a new identity? • Create a new, random key-pair (sk, pk) • pk is the public “name” you can use [usually better to use H(pk)] • sk lets you “speak for” the identity • You control the identity pk, because only you know sk • Even if pk “looks random” that’s fine, nobody needs to know your real identity for the cryptocurrency application • Just like while spending an actually currency note
Identities in a cryptocurrency Decentralized identity management • Anybody can make a new identity at any time make as many as you want! • No central point of coordination • These identities are called “addresses” in Bitcoin Privacy • Addresses not directly connected to real-world identity • But observer can link together an address’s activity over time, make inferences
Privacy Implications • No anonymity, only pseudonymity • All transactions remain on the block chain– indefinitely! • Retroactive data mining • Target used data mining on customer purchases to identify pregnant women and target ads at them(NYT 2012), ended up informing a woman’s father that his teenage daughter was pregnant • Imagine what credit card companies could do with the data
Arriving at Consensus • Although the accepted chain can be considered a list, the block chain is best represented with a tree • The longest path represents the accepted chain • A participant choosing to extend an existing path in the block chain indicates a vote towards consensus on that path • The longer the path, the more computation was expended building it
Consensus Process = Mining • Originally the digital wallet could also participate in the consensus process by attempting to secure the network directly • This process is known as “mining” • Mining involves attempting to find a numerical value, known as a “nonce” that when combined with all open transactions can be “hashed” into a value that satisfies a certain “difficulty” • Custom, purpose built-hardware has long since replaced the function such that its no longer productive for simple CPU based systems to compete in the mining process, and thus it was removed
Mining • Miners collect the transactions on the network into large bundles called blocks • like "Alice pays Karim 10 bitcoins" and "Liam pays Sofia 8.3 bitcoins". • These blocks are strung together into one continuous, authoritative record called the block chain, • which doesn't permit any conflicting transactions • lets you know for sure exactly which transactions count and can be trusted (no double spending!) https://www.bitcoinmining.com/
Block Chain • Bitcoin makes sure there is only one block chain by making blocks really hard to produce • miners have to compute a cryptographic hash of the block that meets certain criteria • difficulty of the criteria for the hash is adjusted based on how frequently blocks are appearing • also carefully validate all the transactions that go into their blocks • Successful miners are rewarded some bitcoins according to a preset schedule
Fraud prevention • Users can trust the block chain that was most difficult to produce • longest chain wins • If there was a "fake" blockchain competing with the real ones the fraudster would have to do as much work as the rest of the network to make their block chain look as trustworthy • intense work that goes into finding blocks through hashing secures the network against fraud
BitCoin Mining • Collects transactions from the network • Validates them, and doesn't allow conflicting ones • Puts them into large bundles called blocks • Computes cryptographic hashes over and over until if finds one "good enough to count" • Then submits the block to the network, adding it to the block chain and earning a reward in return
Bitcoin Security • Bitcoin addresses are RACE Integrity Primitives Evaluation Message DigestRIPEMD-160of SHA-256 of an Elliptic Curve Digital Signature Algorithm public key • any vulnerabilities in the algorithms would constitute a vulnerability in bitcoin itself • An attacker with > 50% of hash power can • Double spend: Reverse transactions that s/he sends while s/he's in control • Prevent some or all transactions from gaining any confirmations • Prevent some or all other generators from getting any generations
Why 51% Matters • “When does 1 + 1 = 3 ?” • When everyone says it does! • In the case of Bitcoin “consensus” goes to the chain with the highest number of blocks • Not just in theory, but in practice several large mining pools have generated six blocks in a row • To date the network has voluntarily shifted its mining power around or faced Distributed Denial of Service attacks
Aspects of decentralization in Bitcoin Peer-to-peer network: • Open to anyone, Low barrier to entry Mining: • Open to anyone, but inevitable concentration of power often seen as undesirable Updates to software: • Core developers trusted by community, have great power
Bitcoin Concerns • Wallet Vulnerable To Theft • Tracing a coin's history • Packet sniffing • Sybil attack (cancer nodes) • No authentication for IP transfers • This attack is likely if you're using VPN/Tor • Denial of Service (DoS) attacks • Illegal content in the block chain • Energy Consumption
Issues against bitcoin usage • New and uninvestigated financial product • History is full of illegal and questionable activity • Absence of relevant theoretical background • Highly volatile value and an unknown issuer • Undefined legal status • Unregulated commodity and absence of consumer protection • Anonymity and blurry taxation status • Illegal or undefined in most countries of the world
Bad Uses for Good Technology • Bitcoin has had its fair share of “bad press” • Silk Road • An online anonymous marketplace for “censorship-free” commerce • Bitinstant • Charlie Shrem plead guilty to aiding money laundering • MT-GOX • aka “Magic The Gathering Online eXchange” • 700,000 coins “missing”
The Silk Road case Silk Road had an estimated $200 million in sales. 95% of which for drugs. In October 2013 Silk Road was shut down
The Mt. Gox case Mt.Gox was the worst scandal in Bitcoin history and precipitated the burst of the bubble in early 2014. An estimated $500 million in bitcoins were lost.
Price of bitcoin has fluctuated wildly • Extreme volatility deters the mainstream from holding bitcoins as a store of value • And makes it unsuitable as a unit of account • Merchants instantly exchange bitcoins for fiat
USD/Bitcoin Weighted Price (Volatility) China restrictedBitcoinexchange for local RMB Russia definedBitcoin as dubiosactivity MtGox filed for bankruptcy(theft of 477 million USD in BTC) Soaringcausedby wide acceptanceofBitcoin
Alternates to Bitcoin aka Altcoins • “Good artists copy. Great artists steal.” • The first alternate blockchain was Namecoin • Early attempts to “re-level the playing field” were made by changing the hashing function from SHA256 to SCRYPT • SCRYPT is a “memory intensive” function that was thought to be resistant to customized hardware • false
Alternates to Bitcoin aka Altcoins • Changes to the block emit time target were also changed from Bitcoins 10 minutes to 2.5 minutes to increase the velocity • Newer ALTS incorporate every escalating hash functions • chained together in novel ways • to resist giving purpose built hardware an advantage over CPU based mining
A Babel of Altcoins • Now well over 2,000 “alternate” coins to Bitcoin • 99.99% of them are simply brands / clones • Most tinker with: • the total coin supply • the hashing functions (SHA256, SCRYPT, X11 et al) • block emit time targets • Proof of Something (Proof of Work, Proof of Stake) • Ethereum, Ripple, Bitcoin Cash, EOS, Litecoin, … • Total Market Cap: $177 billion (Bitcoin is $92.7B) • https://coinmarketcap.com/