Paradigm shift: from the bitcoin Blockchain to Networked Computing
Transcript of Paradigm shift: from the bitcoin Blockchain to Networked Computing
Vikram Kumar
Co-founder, Swerl.
July 2015
Paradigm Shiftfrom the bitcoin Blockchain to Networked Computing
Copyright © 2015, Swerl IO ltd. This work is licensed under a Creative Commons Attribution-
NonCommercial-NoDerivatives 4.0 International License.
A bit of Bitcoin History
2
STARTED WITH WORK BY DAVID CHAUMBlind Signatures for Untraceable Payments, 1983
Discussions and implementations throughout the 90’s and 2000’s on Cypherpunk mailing list and Financial Cryptography Conferences.
A bit of Bitcoin History
3
Bitcoin: A Peer-to-Peer Electronic Cash SystemNOV 2008: BITCOIN PAPER PUBLISHED BY SATOSHI NAKAMOTO
A bit of Bitcoin History
4
Bitcoin: A Peer-to-Peer Electronic Cash SystemNOV 2008: BITCOIN PAPER PUBLISHED BY SATOSHI NAKAMOTO
Bitcoin: A Peer-to-Peer Electronic Cash SystemJAN 2009: NETWORK CAME INTO EXISTENCE
A bit of Bitcoin History
5
Bitcoin: A Peer-to-Peer Electronic Cash SystemNOV 2008: BITCOIN PAPER PUBLISHED BY SATOSHI NAKAMOTO
Bitcoin: A Peer-to-Peer Electronic Cash SystemJAN 2009: NETWORK CAME INTO EXISTENCE
AUG 2010: ONLY MAJOR SECURITY FLAW
A bit of Bitcoin History
6
Bitcoin: A Peer-to-Peer Electronic Cash SystemNOV 2008: BITCOIN PAPER PUBLISHED BY SATOSHI NAKAMOTO
Bitcoin: A Peer-to-Peer Electronic Cash SystemJAN 2009: NETWORK CAME INTO EXISTENCE
AUG 2010: ONLY MAJOR SECURITY FLAW
followed not long after by LitecoinAPR 2011: 1ST ALTCOIN LAUNCHED - NAMECOIN
12345
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Input Transaction Name + Index
Input Script
Output Script
#0 #1 #2
#1 #2#0
A Blockchain is Bitcoin’s major architectural contribution
7
Bitcoin Transactions
8
TRANSACTION
TRANSACTION
TRANSACTION
TRANSACTION
INPUT TRANSACTION NAME+INDEX
SCRIPT SIGNATURE
SEQUENCE NUMBER
LOCK TIME
SCRIPT PUBKEY
#0 #1 #2
#1 #2#0
Verification of Transactions
9
TRANSACTION
INPUT TRANSACTION NAME+INDEX
INPUT SCRIPT
OUPUT SCRIPT
#0 #1 #2
#1 #2
INPUT SCRIPT #0
OUTPUT SCRIPT from TXN-X OUTPUT#2
INPUT SCRIPT #1
OUTPUT SCRIPT from TXN-Y OUTPUT#3
INPUT SCRIPT #2
OUTPUT SCRIPT from TXN-Z OUTPUT#0
Transaction Inputs and Outputs contain small executable scripts. When combined and executed in a network node, produce an script 'invalid' or 'valid' answer.
This is the first step in verifying a transaction.
The collection of scripts in a Transaction is often referred to as a Smart Contract.
Blocks in Bitcoin
10
A Block contains Verified Transactions and links to a parent Block.
12345
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Blockchain(s)
11
A Blockchain does not exist per se peers converge over time to form a consensus view of accepted Blocks. In bitcoin convergence is based on the highest computational difficulty of a Block’s hash-chain.
A Blockchain is a shared transaction log over a network of contributing computing nodes. Essentially it is an authenticated Network Database that grows.
A Blockchain is not limited to currencies or financial systems. It can record any information. bitcoin and units of value (aka. Money) are the first apps.
12345
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Input Transaction Name + Index
Input Script
Output Script
#0 #1 #2
#1 #2#0
Use Blockchains when
12
✤ A log of verified, immutable transactions needs to be created.
✤ Transparency is important. Replication makes it difficult to change history and all transactions can be independently verified.
✤ Lowering the cost to participation is important e.g. no need for a-priori trust or pre-authorisation of participants.
✤ Need to record transactions from Untrusted sources.
✤ Want decentralised or entirely distributed deployment e.g. for resilience and/or transparency.
Many Blockchains Bloom
13
bitcoin is the largest Blockchain network but it is not the only one.
bitcoin Extensions: ColoredCoins Pegged Side-Chains
Non-bitcoin: Smart Contracts Make Your Own
Coloured Coins
14
Represents and manages arbitrary assets using metadata embedded in the Bitcoin Blockchain.
Uses the Bitcoin network to achieve scale, adoption and robustness.
More information: coloredcoins.org
Pegged Side-chains
15
Enables asset representations of new chains to be pegged to bitcoin.
Leverages the distributed trust in bitcoin to enable finer grained representations of specific community value without polluting the larger network with local transactions.
Interoperable with the bitcoin Blockchain in a way that permits rapid innovation of value models.
More information: blockstream.com
Smart-Contract Platforms
16
Ethereum allows any addressable user-created script (executable contract) to run as a reactive process within the Ethereum Blockchain.
Completely separate technology and ecosystems to bitcoin.
More information: ethereum.org
Make Your Own
17
Everything is open source and therefore can be used to get started.
Two starting points: Bitcoin or Eris Industries’
More information: erisindustries.com/products/erisdb
Non-Monetary Use Cases
18
✤ Enabling mechanisms for Distributed File Storage across untrusted peers (Agoric Open Systems)
✤ Title Registries: Land, Shares, basically any property ownership record system.
✤ Naming Systems: Domain Names or any controlled namespace.
✤ Basis for Identity Systems and hence Decentralised Social Networking and [Simple] E-Voting.
✤ Digital Document signature and time-stamping systems. e.g. eDiscovery in judicial systems.
✤ eResearch scientific publication and Information Provenance and Distributed Knowledge generally.
12345
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Transaction
Input Transaction Name + Index
Input Script
Output Script
#0 #1 #2
#1 #2#0
Network Computing
19
Swerl's focus is Information Provenance and Distributed Knowledge in the Pervasive Computing era.
Using Blockchains to enable secure complex real-time information flows across organisations and untrusted computing elements.
Blockchains for the Internet-of-Things and everything else - true Networked Computing.
track flow re:use re:purpose
National Animal Identification and Tracing NAIT example reconsidered.
20
✤ Treat Networks as the Computers made up of calculation and communication
✤ An emphasis on Dataflow, where code is executed by fungible peers across networks.
✤ Bringing the Cloud Computing model of provisioning, deployment and execution to the edge.
✤ Architected as a loose collection of Micro-Services operating in a Service Centric Network.
✤ Forms a complex system. To make it tractable and secure we're making things simple and using a formal basis for everything.
✤ Identity, Privacy, Security and Trust baked in from day one. Not an after thought
1010010100100100101001101
Aspects of Network Computing
21
Aspects of Network Computing
22
Blockchains are a fundamental abstraction.
✤ Blockchains are emerging from the shadows of bitcoin as a technological step-change.
✤ Simplistically, think of a blockchain as a shared transaction-oriented database in the network. A Networked Database.
✤ Many possible use cases where Networked Information assurance is a must.
✤ Swerl’s Networked Computing uses Blockchains as a key architectural abstraction.
Summary
23
Questions /Comments
Vikram Kumar Co-founder, Swerl
email: [email protected]: @vikram_nz
™
Copyright © 2015, Swerl IO ltd. This work is licensed under a Creative Commons Attribution-
NonCommercial-NoDerivatives 4.0 International License.
swerl.io
™