Blockchain, Bitcoin, Ethereum Global consensus... or on the path to Skynet? 😈

8 April 2016 Madarasi Hargita



Péter Szilágyi Ethereum Core Developer These are the slides of my talk from the 10th Computer Science (student) Meetup held on the Hargita Mountains. It used Vinay Gupta: Programmable Blockchains in Context as the inspirational material. This slide deck is a translation of the original Hungarian version.

Act I – 1970 IBM

Birth of modern computing The world of big iron Rooms full of spinning tape drives

Army of sharply dressed operators

The genesis of digital data storage Gigantic corporations paid exorbitant amounts to store their most valuable data.

Birth of a distorted reality... whaaat? 😕 Forcing reality into spreadsheets Origins of relational data model and SQL

Knowledge management and semantic web

Doesn't fit into a spreadsheet? Then it ain't real! Half a century's painful legacy... Paper form to fill? Table of a database!

Facebook, WhatsApp, Tinder? Databases!

Fiber cable breaks. ISP: Did you try rebooting?

Act II – 1990 Tim Berners-Lee

Birth of the web – The network is the computer ~Sun Microsystems Organic formation of computer networks Universities, companies, people; self-organizing

Emergence of protocols: Telnet, E-mail, HTTP

Intermittent to permanent connectivity Invention of the Internet of Things Ever smaller, cheaper and smarter components

Pervasive presence (eg. smart lightbulbs)

Where worlds collide 💥 database vs. network Databases working together Seamless flow of data between entities

Representing solely users' interests

Orchestrated via their laptops Our machines? Expensive paper simulators... Databases follow the images of their creators

Connectivity boils down to filling out forms

Collaboration is costly and bureaucratic

Let's connect the databases! (uhm, no...) Link'em up and they'll just work™ Our own database? Absolute truth

Other's database? Statement of opinion

Data flow is reduced to speculation and trust Unusable long-term instability Tiny changes may result in unforseen consequences

Interpretations from institutional assumptions

Exponentially increasing failure possibilities

Let's centralize our collaborations! (oh my...) Orchestration by a trusted third party Single standard, spoken by everybody

Self-consciously co-created natural monopoly

Neutral intermediary ⇒ financial and political monster Delegating our social-, professional and financial interactions. But infrastructure too!

Protocols, protocols, protocols... Collaboration above personal interests Globally accepted, available to all, decentralized

BGP, DHCP, DNS, FTP, IMAP, HTTP, NTP, POP, SMTP, TLS/SSL Stagnation for 3 decades! Skype, Slack, WhatsApp? Monopoly attempts and walled gardens

At the whim of investors and shareholders

Light in the tunnel: BitTorrent and Wikipedia (±)

Act III – 2008 Blockchain

Bitcoin – 7 billion dollar "accident" – Central Bank of the Internet Academic experiment for global consensus Peer-to-peer database, eventual convergence

No trust is required between participants

Higher yield by support then attack (!) Why financial application? Understandable, acceptable Global ledger of who has how much money

Only the owner can ever access the funds

Soul of Bitcoin – Blockchain technology Initial

shared state Transaction

broadcasts Sorting

aggregating Block

propagation Validation, new

shared state To infinity... and beyond!

Block time stability – Gold mining!? ლ(ಠ_ಠ ლ) Wizard ⇔ Node | Potion ⇔ Transaction | Chest ⇔ Block | Mining ⇔ Hashing | Gold decoration ⇔ 00..0 hash prefix | Uniqueness ⇔ Adds previous hash From a gamer's perspective 😋 Wizards cook up potions, but no room for storage

They order chests, but are afraid of monopolies

Multiple chests may cause too much arguing Need a solution to prevent multiple chests from emerging... Golden chest! 😆 Gold mining is hard, highly luck dependent 😈

Unique orders! 😆 Half completed chests cannot be reused later 😈

Bitcoin clones, colored coins Bitcoin became an enormous success Countless blatant copies popped up

Significantly many modified protocols

Useful, but untrustable: plain too small Billion dollar question: Could they be merged into a single network? Generic, application independent data storage (can't be that hard)

All logic – future included – encompassing network protocol (uhm... hmm...)

2015 Ethereum – Turing complete network

Ethereum – network is the database – network is the computer Worlds first and only global computer Perfect machine: doesn't fault, doesn't stop

Universally available: from anywhere, to anyone

Cannot be subverted: influence- and censorship-proof But what can it actually do?! 😅 Unbreakable agreements between unknown parties

Collaborations unstoppable by uninvolved third parties

Example – Crowdfunding Gathering funds from complete strangers Announce crowdsale with fixed deadline

If enough donations get sent, we keep it

If not, everyone gets their money back Tiny programmed contract (this one ⇒) No intermediary to collect fees

Conform only to local laws

Guaranteed outcome

Limitations and current development – Web 3.0 Global throughput not high enough (20-25 tps) At prototype level x10-x100, research level x10000 speedup (Casper) Too expensive for massive data storage Global filesystem at pre-alpha level in development (Swarm) No real time interaction (15s latency) Working but disabled global dark messaging (Whisper)