800 likes | 825 Views
This course delves into blockchains from a scientific standpoint, studying programming languages, data structures, distributed consensus protocols and cryptography in a non-political context. Topics include the evolution of blockchain technology, the relationship to classical distributed computing, and the challenges of scaling in a secure manner. Through real-world examples like Alice's Trading Company and supply chain management, students will learn about the complexities of achieving consensus in decentralized systems.
E N D
Course Introduction CS1951 L Spring 2019 24 January 2019 Maurice Herlihy Brown University
Bitcoin is in the news …. and I, for one, just can’t look away …
Irrational exuberance “Buy a stock, if it goes up, sell it, if it goes down, don't buy it.” Yogi Berra
BTC at $20K BTC today? Our mission here
This talk is not about Bitcoin It’s about blockchains.
This talk is not about Bitcoin It’s about blockchains. From a non-political, non-romanticized scientific perspective.
Topics we will study Programming languages Buggy programs Data structures Distributed consensus protocols Cookbook Crypto
Follow the Money Millions, billions at stake Every author, every opinion … Who pays them? What is their interest? Not dishonest, but not disinterested.
Real innovation usually intrudes from outside a community … Would this paper have been accepted to a mainstream DC conference in 2008? Now multi-billion dollar industry What relation to classical distributed computing?
The Blockchain Universe’s attempt to re-invent distributed computing did not always go well …
On the other hand … The Distributed Computing Universe’ s bid for respect and influence sometimes fell short …
Abstraction:Distributed Ledger Append-only list of events Not just financial Everyone agrees on content Tamper-proof!
Alice’s Trading Company Trading Engine retail wholesale Alice has a concurrency problem
Alice’s Trading Company Trading Engine retail wholesale Global lock is too coarse
Alice’s Trading Company Trading Engine retail wholesale Fine-grained locks too hard
Swapped out back at Locks don’t scale ??? ???
Universal Lock-Free Construction Operations that want to happen This happened Operations that happened, in order This happened This happened This happened This happened root This happened
Universal Lock-Free Construction This happened This happened This happened This happened This happened consensus This happened
Agreement: they agree on the same value Termination: non-faulty parties decide in finite time Validity: they agree on someone’s proposal
Universal Lock-Free Construction This happened Ledger part is simple, sequential This happened This happened This happened This happened consensus This happened
Universal Lock-Free Construction This happened Ledger part is simple, sequential This happened This happened Concurrency, fault-tolerance restricted to here This happened This happened consensus This happened
Get operation No, try again Did I win consensus? Yes Deal with it Generate response
Cryptographic Hash Functions Easy Hard
Cryptographic Hash Functions Hard to reconstruct x from H(x) Easy “preimage resistance” Hard
Cryptographic Hash Functions Given Hard to find
Cryptographic Hash Functions Given Hard to find x’ such that H(x’) = H(x) Hard to find “2nd preimage resistance”
Cryptographic Hash Functions Hard to find
Cryptographic Hash Functions Hard to find Hard to find any x,x’ such that H(x’) = H(x) “collision resistance”
The Universal Construction This happened |hash Each entry has predecessor’s hash This happened | hash Can be audited This happened | hash This happened This happened consensus This happened
Alice has a frozen yogurt business Her business is in trouble Shipments arrive melted
Alice’s Supply Chain What Bob said! Bob’s truck Carol’s factory I never transported that yogurt It was melted when I got it from Carol It was OK when I delivered it to Alice
Ledger in Cloud Sensors Bob and Carol
Supply Chain Blockchain -C at 13:00 -C at 13:10 -C at 13:20 Sensor reading Sensor reading PBFT Sensor reading
Supply Chain Blockchain -C at 13:10 -C at 13:20 Carol handoff to Bob, 13:30 Carol Signed Bob Signed signatures