Metadata in the Blockchain: The OP_RETURN Explosion

Coin Sciences Ltd
Coin Sciences LtdCoin Sciences Ltd
Metadata in the Blockchain:
The OP_RETURN Explosion
Coin Sciences Ltd
http://coinspark.org/
If Bitcoin = Gold 2.0 then …
What is the intrinsic
value of a bitcoin?
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
What has gone wrong? (1)
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Early Internet growth
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
http://homes.cs.washington.edu/~lazowska/faculty.lecture/
innovation/hpcc/internet/hosts.html
What has gone wrong? (2)
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Gartner hype cycle
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
What has gone wrong? (3)
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
3% (PayPal)
What is bitcoin for?
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
A hypothesis…
Bitcoin as communication
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
What can we send?
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
An expensive way to encode information
Fake addresses
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Permanent burden on unspent output list
Multisig addresses (1 of …)
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Temporary burden on unspent output list
The OP_RETURN decision
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
https://bitcoinfoundation.org/2013/10/core-development-update-5/
OP_RETURNs
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Provably prunable, no unspent output
OP_RETURN size limit
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
OP_RETURNs vs TCP/IP
OP_RETURNs TCP/IP Ratio
Address space 2160 (collisions) 232 → 2128 1×
Latency 5 seconds 1 second 5×
Packet size 40 bytes 1.5 KB 36×
Bandwidth ~100 bytes/s
(50% of network!)
5 MB/s
(50% of 100 Mbps)
50,000×
Cost $850,000/GB
(at $315/BTC)
$0.10/GB 10,000,000×
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
So why use bitcoin?
Asynchronicity?
Bitcoin TCP/IP Email
Asynchronous Synchronous Asynchronous
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Notarization
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Bitcoin TCP/IP
Blockchain None
Message chaining
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Bitcoin TCP/IP
Directed acyclic
graph
Request-response
only
Privacy
Bitcoin TCP/IP
Addresses
Pseudonymous
but transaction
chain analysis
IP geolocation,
traceable to
individual via ISP
Payloads Naked in public
Private but seen
by ISPs, switches
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Payment model
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Bitcoin TCP/IP
Per message,
with message
Subscription or pay-
per-use, separate
So bitcoin is suitable for…
•  Tiny payload
•  High value
– Hashes in general
•  Public broadcast
•  Permanently recorded
•  Non-instant
•  Pay-as-you-go
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Financial transactions
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Document notarization
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Bitproof, BlockSign, La Preuve, ProveBit,
Proof of Existence, Stampd, Stampery
Historical records
•  Blog post about stuff in blockchain
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Lots more: http://www.righto.com/2014/02/
ascii-bernanke-wikileaks-photographs.html
Email with scarcity?
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Universal family tree?
•  Show a family tree (DAG)
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
http://recursivediscursion.blogspot.com/2011/04/gentle-introduction-to-graph-theory.html
0
5
10
15
20
25xxxx
26xxxx
27xxxx
28xxxx
29xxxx
30xxxx
31xxxx
32xxxx
33xxxx
34xxxx
35xxxx
36xxxx
37xxxx
Bitcoin block numbers (each column ~70 days)
OP_RETURNs per block
Bitcoin 0.9 released
19th March 2014
More at:
coinsecrets.org
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
OP_RETURNs to block 375000
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
27%
17%
9%
3%2%
2%
40%
Open%Assets%
Blockchain%ID%
CoinSpark%
Ascribe%
Proof%of%Existence%
Factom%
Other%
CoinSpark
CoinSpark
•  Rich OP_RETURN protocol
– Multiple metadata per OP_RETURN
•  Version 1.0 — September 2014
– Assets = lightweight scalable colored coins
– Payment references
•  Version 2.0 — February 2015
– Transaction attachments / messaging
•  Version 3.0: simpler addressing, …
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
CoinSpark assets
•  Assets via OP_RETURN metadata
– Not connected to bitcoin quantity
•  Genesis metadata:
– Quantity, issuer transaction fees
– Compressed web page URL
– Hash of contract and key params
•  Transfer metadata:
– Reference to genesis, quantity, outputs
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
CoinSpark assets for users
•  Lightweight wallet
•  Asset web page
– View in browser
– Hidden metadata
– Domain authenticates issuer
•  Asset contract
– Ready US + UK templates
– Customizable
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
SparkBit wallet
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Asset web page
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Asset contract
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Bitcoin transaction model
Signed by Alice
Alice 10.000
Bob 2.000
Alice 7.999
Miner 0.001
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
CoinSpark asset model
•  Multiple assets per output
– Low burden on network
– No accidental loss
•  Default: all assets to last output
•  Metadata sends to other outputs
– 40 bytes: up to 3 assets, unlimited outputs
•  Asset independence ⇒ scalability
– Issuer provides tracking server for SPV
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Example asset transaction
Signed by Alice
Alice 0.007
Bob 0.001
Alice 0.005
OP_RETURN
Miner 0.001
A
B
C
B
A
C
B
Output 1
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
150
60
60
90
CoinSpark messages
•  Attach text and/or files to a bitcoin or
CoinSpark asset transaction
•  Message discovery via OP_RETURN
– Compressed URL / IP of delivery server
– Outputs for which message intended
– Hash of message + salt
•  Open source delivery server
– Federated, non-centralized model
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
CoinSpark messages vs email
•  Hash proves message authenticity
•  Notarization of message on blockchain
– Contracts, invoices, digital delivery
•  Also: public messages
– Broadcast content + proof of existence
•  Future: message encryption
– Requires public key, not just bitcoin address
•  Challenge: identity (Openname?)
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
CoinSpark OP_RETURN format
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
53	
   50	
   4B	
   CoinSpark marker (“SPK”)
61	
   FF	
  — Last metadata opcode
···· Last metadata (until end of script)
01	
   60	
   Length of this metadata section—
61	
   FF	
  — Metadata opcode
···· Metadata (up to 95 bytes)
*
Metadata opcodes
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
61	
   7F	
  —
67	
  
72	
  
74	
  
80	
   EF	
  —
Reserved for CoinSpark
Asset genesis (“g”)
Payment reference (“r”)
Asset transfer (“t”)
Your application?
6D	
   Message pointer (“m”)
Every byte is sacred
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Every byte is sacred
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Only encode surprises
000 = omit fields. If this is the first color transfer, assume input and output indices of 0.
Otherwise take the indices from the previous color transfer.
001 = omit fields. If this is the first color transfer, assume input index 0 and output index
1. Otherwise take the indices from the previous color transfer and increment the output
index only.
010 = omit fields. If this is the first color transfer, assume input index 1 and output index
0. Otherwise take the indices from the previous color transfer and increment the input
index only.
011 = omit input index and use 1 byte for output index. If this is the first color transfer,
assume input index 0. Otherwise use the same input index as the previous color transfer.
100 = omit output index and use 1 byte for input index. If this is the first color transfer,
assume output index 0. Otherwise use the same output index as the previous color
transfer.
101 = use 1 byte for input index, 1 byte for output index.
110 = use 1 byte for input index, 2 bytes for output index.
111 = use 2 bytes for input index, 2 bytes for output index.
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Mantissa and exponent
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
625 trillion = 625×1012
??11001001110001	
  
Common domain strings
www.	
  
.at	
  
.au	
  
.be	
  
.biz	
  
.br	
  
.ca	
  
.ch	
  
.cn	
  
.co.jp	
  
.co.kr	
  
.co.uk	
  
.co.za	
  
.co	
  
.com.ar	
  
.com.au	
  
.com.br	
  
.com.cn	
  
.com.mx	
  
.com.tr	
  
.com.tw	
  
.com.ua	
  
.com	
  
.cz	
  
.de	
  
.dk	
  
.edu	
  
.es	
  
.eu	
  
.fr	
  
.gov	
  
.gr	
  
.hk	
  
.hu	
  
.il	
  
.in	
  
.info	
  
.ir	
  
.it	
  
.jp	
  
.kr	
  
.me	
  
.mx	
  
.net	
  
.nl	
  
.no	
  
.org	
  
.pl	
  
.ps	
  
.ro	
  
.ru	
  
.se	
  
.sg	
  
.tr	
  
.tv	
  
.tw	
  
.ua	
  
.uk	
  
.us	
  
.vn	
  
	
  
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
More domain name compression
•  38 valid characters
– 0 to 9, a to z, -­‐ .	
  
•  Two terminator characters ⇒ 40
– http:// vs https://	
  
•  403 = 64000 < 65536 = 216
– So 3 characters per byte pair
•  Special case: IPv4 address
– Obvious encoding in 4 bytes
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Variable hash length ≥ 96 bits
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
350,000,000 × 109 × 86400 × 365 × 7178 = 296
CoinSpark for Developers
•  Fully open source (MIT/AGPL)
•  Multilingual libraries
– C/C++, Go, Java, JS, PHP, Python, Ruby
•  Fully decentralized
– Server-side elements federated
• Let’s do for bitcoin what
the web did for TCP/IP
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Back to the start…
What is the intrinsic
value of a bitcoin?
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
0.0
0.2
0.4
0.6
0.8
1.0
1.2
2011 2012 2013 2014 2015 2016 2017 2018 2019
Average block size (MB)
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Current limit: 1 MB
Economic
prehistory
Economic
reality
What happens then?
•  Transactions compete for confirmation
– Bidding via miner fee, paid only in bitcoin
•  Real price discovery
– Econ 101: until supply = demand
•  If enough transactions (notarization?) are
worth $10 to sender, all will cost that
– No more cups of coffee!
•  Increasing block size limit just delays this
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
So: bitcoin = global
bidding power for
embedding data in
the blockchain.
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
More from Coin Sciences
MultiChain
•  Private blockchain platform
– Targeted at financial sector
– Drop-in replacement for Bitcoin Core
•  Easy and quick deployment
– Custom network parameters
•  Permission management
•  Native asset support
•  Stable alpha now available
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
Coin Secrets – coinsecrets.org
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
php|python-OP_RETURN
Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
•  Send OP_RETURN using Bitcoin Core
– Doing it yourself is hard work!
•  Store and retrieve any data in blockchain
– Uses OP_RETURNs in chained transactions
– Returns reference like 356115-052075 for
easy and fast retrieval
•  Use on command line or library
– PHP and Python now, Ruby to come
Questions?
1 of 62

Recommended

DDoS Mitigation Tools and Techniques by
DDoS Mitigation Tools and TechniquesDDoS Mitigation Tools and Techniques
DDoS Mitigation Tools and TechniquesBabak Farrokhi
2.2K views40 slides
6lowpan introduction by
6lowpan introduction6lowpan introduction
6lowpan introductionMartin Abraham
943 views23 slides
FastNetMon Advanced DDoS detection tool by
FastNetMon Advanced DDoS detection toolFastNetMon Advanced DDoS detection tool
FastNetMon Advanced DDoS detection toolPavel Odintsov
1.6K views22 slides
Blind Signature Scheme by
Blind Signature SchemeBlind Signature Scheme
Blind Signature SchemeKelum Senanayake
16K views13 slides
System and web security by
System and web securitySystem and web security
System and web securitychirag patil
529 views36 slides
IPV4 vs IPV6 by
IPV4 vs IPV6IPV4 vs IPV6
IPV4 vs IPV6Devang Doshi
4.8K views19 slides

More Related Content

What's hot

Mathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan by
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.SrinivasanMathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasanmunicsaa
14.9K views62 slides
FastNetMon - ENOG9 speech about DDoS mitigation by
FastNetMon - ENOG9 speech about DDoS mitigationFastNetMon - ENOG9 speech about DDoS mitigation
FastNetMon - ENOG9 speech about DDoS mitigationPavel Odintsov
8.4K views21 slides
E mail image spam filtering techniques by
E mail image spam filtering techniquesE mail image spam filtering techniques
E mail image spam filtering techniquesranjit banshpal
5.5K views28 slides
Border Gateway Protocol by
Border Gateway ProtocolBorder Gateway Protocol
Border Gateway ProtocolKashif Latif
14.9K views11 slides
Qr codes by
Qr codesQr codes
Qr codesniyaj ahmed
2.6K views32 slides
NETWORK LAYER - Logical Addressing by
NETWORK LAYER - Logical AddressingNETWORK LAYER - Logical Addressing
NETWORK LAYER - Logical AddressingPankaj Debbarma
333 views45 slides

What's hot(18)

Mathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan by municsaa
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.SrinivasanMathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan
municsaa14.9K views
FastNetMon - ENOG9 speech about DDoS mitigation by Pavel Odintsov
FastNetMon - ENOG9 speech about DDoS mitigationFastNetMon - ENOG9 speech about DDoS mitigation
FastNetMon - ENOG9 speech about DDoS mitigation
Pavel Odintsov8.4K views
E mail image spam filtering techniques by ranjit banshpal
E mail image spam filtering techniquesE mail image spam filtering techniques
E mail image spam filtering techniques
ranjit banshpal5.5K views
Border Gateway Protocol by Kashif Latif
Border Gateway ProtocolBorder Gateway Protocol
Border Gateway Protocol
Kashif Latif14.9K views
NETWORK LAYER - Logical Addressing by Pankaj Debbarma
NETWORK LAYER - Logical AddressingNETWORK LAYER - Logical Addressing
NETWORK LAYER - Logical Addressing
Pankaj Debbarma333 views
Secure Hash Algorithm (SHA-512) by DUET
Secure Hash Algorithm (SHA-512)Secure Hash Algorithm (SHA-512)
Secure Hash Algorithm (SHA-512)
DUET52.8K views
Routing algorithm by TechStudent1
Routing algorithmRouting algorithm
Routing algorithm
TechStudent113.4K views
Internet Traffic Engineering by jonassm
Internet Traffic EngineeringInternet Traffic Engineering
Internet Traffic Engineering
jonassm2.5K views
Switching techniques by Amit Kumar
Switching techniquesSwitching techniques
Switching techniques
Amit Kumar5K views
Vtu network security(10 ec832) unit 2 notes.. by Jayanth Dwijesh H P
Vtu network security(10 ec832) unit 2 notes..Vtu network security(10 ec832) unit 2 notes..
Vtu network security(10 ec832) unit 2 notes..
Jayanth Dwijesh H P2.4K views
Network Management Devices by Rahul P
Network Management DevicesNetwork Management Devices
Network Management Devices
Rahul P573 views
Internet Protocol Version 6 by sandeepjain
Internet Protocol Version 6Internet Protocol Version 6
Internet Protocol Version 6
sandeepjain2.9K views
NS-3(Network Simulator 3) 소개 by 공학코드
NS-3(Network Simulator 3) 소개NS-3(Network Simulator 3) 소개
NS-3(Network Simulator 3) 소개
공학코드 211 views

Similar to Metadata in the Blockchain: The OP_RETURN Explosion

Fredericksburg LUG Bitcoin slides by
Fredericksburg LUG Bitcoin slidesFredericksburg LUG Bitcoin slides
Fredericksburg LUG Bitcoin slidesAlex Akselrod
2.1K views22 slides
Crypto Wallets: A Technical Perspective (Nakov at OpenFest 2018) by
Crypto Wallets: A Technical Perspective (Nakov at OpenFest 2018)Crypto Wallets: A Technical Perspective (Nakov at OpenFest 2018)
Crypto Wallets: A Technical Perspective (Nakov at OpenFest 2018)Svetlin Nakov
1.2K views27 slides
Blockchain, cryptography and tokens — NYC Bar presentation by
Blockchain, cryptography and tokens — NYC Bar presentationBlockchain, cryptography and tokens — NYC Bar presentation
Blockchain, cryptography and tokens — NYC Bar presentationPaperchain
597 views44 slides
J.burke HackMiami6 by
J.burke HackMiami6J.burke HackMiami6
J.burke HackMiami6Jesse Burke
567 views48 slides
Blockchain, Ethereum and Business Applications by
Blockchain, Ethereum and Business ApplicationsBlockchain, Ethereum and Business Applications
Blockchain, Ethereum and Business ApplicationsMatthias Zimmermann
2.7K views61 slides
Cryptocurrencies and Blockchain - An opportunity for Startups and Companies by
Cryptocurrencies and Blockchain - An opportunity for Startups and CompaniesCryptocurrencies and Blockchain - An opportunity for Startups and Companies
Cryptocurrencies and Blockchain - An opportunity for Startups and CompaniesMarco Vasapollo
208 views50 slides

Similar to Metadata in the Blockchain: The OP_RETURN Explosion(20)

Fredericksburg LUG Bitcoin slides by Alex Akselrod
Fredericksburg LUG Bitcoin slidesFredericksburg LUG Bitcoin slides
Fredericksburg LUG Bitcoin slides
Alex Akselrod2.1K views
Crypto Wallets: A Technical Perspective (Nakov at OpenFest 2018) by Svetlin Nakov
Crypto Wallets: A Technical Perspective (Nakov at OpenFest 2018)Crypto Wallets: A Technical Perspective (Nakov at OpenFest 2018)
Crypto Wallets: A Technical Perspective (Nakov at OpenFest 2018)
Svetlin Nakov1.2K views
Blockchain, cryptography and tokens — NYC Bar presentation by Paperchain
Blockchain, cryptography and tokens — NYC Bar presentationBlockchain, cryptography and tokens — NYC Bar presentation
Blockchain, cryptography and tokens — NYC Bar presentation
Paperchain597 views
J.burke HackMiami6 by Jesse Burke
J.burke HackMiami6J.burke HackMiami6
J.burke HackMiami6
Jesse Burke567 views
Blockchain, Ethereum and Business Applications by Matthias Zimmermann
Blockchain, Ethereum and Business ApplicationsBlockchain, Ethereum and Business Applications
Blockchain, Ethereum and Business Applications
Matthias Zimmermann2.7K views
Cryptocurrencies and Blockchain - An opportunity for Startups and Companies by Marco Vasapollo
Cryptocurrencies and Blockchain - An opportunity for Startups and CompaniesCryptocurrencies and Blockchain - An opportunity for Startups and Companies
Cryptocurrencies and Blockchain - An opportunity for Startups and Companies
Marco Vasapollo208 views
An Investor's Guide to Web3 / Crypto / Blockchain by Bernard Leong
An Investor's Guide to Web3 / Crypto / BlockchainAn Investor's Guide to Web3 / Crypto / Blockchain
An Investor's Guide to Web3 / Crypto / Blockchain
Bernard Leong452 views
Blockchain, Bitcoin, Crypto assets, Initial Coin Offer workshop by Next Space Pvt. Ltd
Blockchain, Bitcoin, Crypto assets, Initial Coin Offer workshopBlockchain, Bitcoin, Crypto assets, Initial Coin Offer workshop
Blockchain, Bitcoin, Crypto assets, Initial Coin Offer workshop
Next Space Pvt. Ltd1.2K views
WSO2Con USA 2017: Keynote - The Blockchain’s Digital Disruption by WSO2
WSO2Con USA 2017: Keynote - The Blockchain’s Digital DisruptionWSO2Con USA 2017: Keynote - The Blockchain’s Digital Disruption
WSO2Con USA 2017: Keynote - The Blockchain’s Digital Disruption
WSO21.9K views
New Business Models enabled by Blockchain by Slash
New Business Models enabled by BlockchainNew Business Models enabled by Blockchain
New Business Models enabled by Blockchain
Slash518 views
Blockchain-enabled Exchange: Architecture, First Experiences and Outlook by Sergey Ivliev
Blockchain-enabled Exchange: Architecture, First Experiences and OutlookBlockchain-enabled Exchange: Architecture, First Experiences and Outlook
Blockchain-enabled Exchange: Architecture, First Experiences and Outlook
Sergey Ivliev1.4K views
Meetup 19/12/2016 - Blockchain-as-a-service voor Antwerpen? by Digipolis Antwerpen
Meetup 19/12/2016 - Blockchain-as-a-service voor Antwerpen?Meetup 19/12/2016 - Blockchain-as-a-service voor Antwerpen?
Meetup 19/12/2016 - Blockchain-as-a-service voor Antwerpen?
Unsung heroes Validator & Infra provider.pdf by Jiyun Kim
Unsung heroes Validator & Infra provider.pdfUnsung heroes Validator & Infra provider.pdf
Unsung heroes Validator & Infra provider.pdf
Jiyun Kim101 views
One library for all Java encryption by Dan Cvrcek
One library for all Java encryptionOne library for all Java encryption
One library for all Java encryption
Dan Cvrcek181 views
Blockchain, AI and Machine Learning by Tao Wang
Blockchain, AI and Machine LearningBlockchain, AI and Machine Learning
Blockchain, AI and Machine Learning
Tao Wang297 views
Algorand Educate: Intro to Algorand by TinaBregovi
Algorand Educate: Intro to AlgorandAlgorand Educate: Intro to Algorand
Algorand Educate: Intro to Algorand
TinaBregovi369 views

Recently uploaded

Five Things You SHOULD Know About Postman by
Five Things You SHOULD Know About PostmanFive Things You SHOULD Know About Postman
Five Things You SHOULD Know About PostmanPostman
27 views43 slides
Special_edition_innovator_2023.pdf by
Special_edition_innovator_2023.pdfSpecial_edition_innovator_2023.pdf
Special_edition_innovator_2023.pdfWillDavies22
16 views6 slides
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze by
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng TszeDigital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng TszeNUS-ISS
19 views47 slides
DALI Basics Course 2023 by
DALI Basics Course  2023DALI Basics Course  2023
DALI Basics Course 2023Ivory Egg
14 views12 slides
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor... by
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...Vadym Kazulkin
75 views64 slides
Understanding GenAI/LLM and What is Google Offering - Felix Goh by
Understanding GenAI/LLM and What is Google Offering - Felix GohUnderstanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix GohNUS-ISS
41 views33 slides

Recently uploaded(20)

Five Things You SHOULD Know About Postman by Postman
Five Things You SHOULD Know About PostmanFive Things You SHOULD Know About Postman
Five Things You SHOULD Know About Postman
Postman27 views
Special_edition_innovator_2023.pdf by WillDavies22
Special_edition_innovator_2023.pdfSpecial_edition_innovator_2023.pdf
Special_edition_innovator_2023.pdf
WillDavies2216 views
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze by NUS-ISS
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng TszeDigital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
NUS-ISS19 views
DALI Basics Course 2023 by Ivory Egg
DALI Basics Course  2023DALI Basics Course  2023
DALI Basics Course 2023
Ivory Egg14 views
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor... by Vadym Kazulkin
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
Vadym Kazulkin75 views
Understanding GenAI/LLM and What is Google Offering - Felix Goh by NUS-ISS
Understanding GenAI/LLM and What is Google Offering - Felix GohUnderstanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix Goh
NUS-ISS41 views
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV by Splunk
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV
Splunk88 views
The Importance of Cybersecurity for Digital Transformation by NUS-ISS
The Importance of Cybersecurity for Digital TransformationThe Importance of Cybersecurity for Digital Transformation
The Importance of Cybersecurity for Digital Transformation
NUS-ISS27 views
RADIUS-Omnichannel Interaction System by RADIUS
RADIUS-Omnichannel Interaction SystemRADIUS-Omnichannel Interaction System
RADIUS-Omnichannel Interaction System
RADIUS15 views
Business Analyst Series 2023 - Week 3 Session 5 by DianaGray10
Business Analyst Series 2023 -  Week 3 Session 5Business Analyst Series 2023 -  Week 3 Session 5
Business Analyst Series 2023 - Week 3 Session 5
DianaGray10209 views
Data-centric AI and the convergence of data and model engineering: opportunit... by Paolo Missier
Data-centric AI and the convergence of data and model engineering:opportunit...Data-centric AI and the convergence of data and model engineering:opportunit...
Data-centric AI and the convergence of data and model engineering: opportunit...
Paolo Missier34 views
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica... by NUS-ISS
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
NUS-ISS16 views
.conf Go 2023 - Data analysis as a routine by Splunk
.conf Go 2023 - Data analysis as a routine.conf Go 2023 - Data analysis as a routine
.conf Go 2023 - Data analysis as a routine
Splunk93 views
The details of description: Techniques, tips, and tangents on alternative tex... by BookNet Canada
The details of description: Techniques, tips, and tangents on alternative tex...The details of description: Techniques, tips, and tangents on alternative tex...
The details of description: Techniques, tips, and tangents on alternative tex...
BookNet Canada121 views
Black and White Modern Science Presentation.pptx by maryamkhalid2916
Black and White Modern Science Presentation.pptxBlack and White Modern Science Presentation.pptx
Black and White Modern Science Presentation.pptx
maryamkhalid291614 views
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors by sugiuralab
TouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective SensorsTouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective Sensors
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors
sugiuralab15 views

Metadata in the Blockchain: The OP_RETURN Explosion

  • 1. Metadata in the Blockchain: The OP_RETURN Explosion Coin Sciences Ltd http://coinspark.org/
  • 2. If Bitcoin = Gold 2.0 then … What is the intrinsic value of a bitcoin? Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 3. What has gone wrong? (1) Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 4. Early Internet growth Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ http://homes.cs.washington.edu/~lazowska/faculty.lecture/ innovation/hpcc/internet/hosts.html
  • 5. What has gone wrong? (2) Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 6. Gartner hype cycle Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 7. What has gone wrong? (3) Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ 3% (PayPal)
  • 8. What is bitcoin for? Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 10. Bitcoin as communication Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 11. What can we send? Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ An expensive way to encode information
  • 12. Fake addresses Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ Permanent burden on unspent output list
  • 13. Multisig addresses (1 of …) Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ Temporary burden on unspent output list
  • 14. The OP_RETURN decision Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ https://bitcoinfoundation.org/2013/10/core-development-update-5/
  • 15. OP_RETURNs Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ Provably prunable, no unspent output
  • 16. OP_RETURN size limit Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 17. OP_RETURNs vs TCP/IP OP_RETURNs TCP/IP Ratio Address space 2160 (collisions) 232 → 2128 1× Latency 5 seconds 1 second 5× Packet size 40 bytes 1.5 KB 36× Bandwidth ~100 bytes/s (50% of network!) 5 MB/s (50% of 100 Mbps) 50,000× Cost $850,000/GB (at $315/BTC) $0.10/GB 10,000,000× Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 18. So why use bitcoin?
  • 19. Asynchronicity? Bitcoin TCP/IP Email Asynchronous Synchronous Asynchronous Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 20. Notarization Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ Bitcoin TCP/IP Blockchain None
  • 21. Message chaining Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ Bitcoin TCP/IP Directed acyclic graph Request-response only
  • 22. Privacy Bitcoin TCP/IP Addresses Pseudonymous but transaction chain analysis IP geolocation, traceable to individual via ISP Payloads Naked in public Private but seen by ISPs, switches Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 23. Payment model Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ Bitcoin TCP/IP Per message, with message Subscription or pay- per-use, separate
  • 24. So bitcoin is suitable for… •  Tiny payload •  High value – Hashes in general •  Public broadcast •  Permanently recorded •  Non-instant •  Pay-as-you-go Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 25. Financial transactions Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 26. Document notarization Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ Bitproof, BlockSign, La Preuve, ProveBit, Proof of Existence, Stampd, Stampery
  • 27. Historical records •  Blog post about stuff in blockchain Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ Lots more: http://www.righto.com/2014/02/ ascii-bernanke-wikileaks-photographs.html
  • 28. Email with scarcity? Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 29. Universal family tree? •  Show a family tree (DAG) Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ http://recursivediscursion.blogspot.com/2011/04/gentle-introduction-to-graph-theory.html
  • 30. 0 5 10 15 20 25xxxx 26xxxx 27xxxx 28xxxx 29xxxx 30xxxx 31xxxx 32xxxx 33xxxx 34xxxx 35xxxx 36xxxx 37xxxx Bitcoin block numbers (each column ~70 days) OP_RETURNs per block Bitcoin 0.9 released 19th March 2014 More at: coinsecrets.org Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 31. OP_RETURNs to block 375000 Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ 27% 17% 9% 3%2% 2% 40% Open%Assets% Blockchain%ID% CoinSpark% Ascribe% Proof%of%Existence% Factom% Other%
  • 33. CoinSpark •  Rich OP_RETURN protocol – Multiple metadata per OP_RETURN •  Version 1.0 — September 2014 – Assets = lightweight scalable colored coins – Payment references •  Version 2.0 — February 2015 – Transaction attachments / messaging •  Version 3.0: simpler addressing, … Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 34. CoinSpark assets •  Assets via OP_RETURN metadata – Not connected to bitcoin quantity •  Genesis metadata: – Quantity, issuer transaction fees – Compressed web page URL – Hash of contract and key params •  Transfer metadata: – Reference to genesis, quantity, outputs Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 35. CoinSpark assets for users •  Lightweight wallet •  Asset web page – View in browser – Hidden metadata – Domain authenticates issuer •  Asset contract – Ready US + UK templates – Customizable Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 36. SparkBit wallet Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 37. Asset web page Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 38. Asset contract Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 39. Bitcoin transaction model Signed by Alice Alice 10.000 Bob 2.000 Alice 7.999 Miner 0.001 Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 40. CoinSpark asset model •  Multiple assets per output – Low burden on network – No accidental loss •  Default: all assets to last output •  Metadata sends to other outputs – 40 bytes: up to 3 assets, unlimited outputs •  Asset independence ⇒ scalability – Issuer provides tracking server for SPV Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 41. Example asset transaction Signed by Alice Alice 0.007 Bob 0.001 Alice 0.005 OP_RETURN Miner 0.001 A B C B A C B Output 1 Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ 150 60 60 90
  • 42. CoinSpark messages •  Attach text and/or files to a bitcoin or CoinSpark asset transaction •  Message discovery via OP_RETURN – Compressed URL / IP of delivery server – Outputs for which message intended – Hash of message + salt •  Open source delivery server – Federated, non-centralized model Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 43. CoinSpark messages vs email •  Hash proves message authenticity •  Notarization of message on blockchain – Contracts, invoices, digital delivery •  Also: public messages – Broadcast content + proof of existence •  Future: message encryption – Requires public key, not just bitcoin address •  Challenge: identity (Openname?) Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 44. CoinSpark OP_RETURN format Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ 53   50   4B   CoinSpark marker (“SPK”) 61   FF  — Last metadata opcode ···· Last metadata (until end of script) 01   60   Length of this metadata section— 61   FF  — Metadata opcode ···· Metadata (up to 95 bytes) *
  • 45. Metadata opcodes Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ 61   7F  — 67   72   74   80   EF  — Reserved for CoinSpark Asset genesis (“g”) Payment reference (“r”) Asset transfer (“t”) Your application? 6D   Message pointer (“m”)
  • 46. Every byte is sacred Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 47. Every byte is sacred Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 48. Only encode surprises 000 = omit fields. If this is the first color transfer, assume input and output indices of 0. Otherwise take the indices from the previous color transfer. 001 = omit fields. If this is the first color transfer, assume input index 0 and output index 1. Otherwise take the indices from the previous color transfer and increment the output index only. 010 = omit fields. If this is the first color transfer, assume input index 1 and output index 0. Otherwise take the indices from the previous color transfer and increment the input index only. 011 = omit input index and use 1 byte for output index. If this is the first color transfer, assume input index 0. Otherwise use the same input index as the previous color transfer. 100 = omit output index and use 1 byte for input index. If this is the first color transfer, assume output index 0. Otherwise use the same output index as the previous color transfer. 101 = use 1 byte for input index, 1 byte for output index. 110 = use 1 byte for input index, 2 bytes for output index. 111 = use 2 bytes for input index, 2 bytes for output index. Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 49. Mantissa and exponent Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ 625 trillion = 625×1012 ??11001001110001  
  • 50. Common domain strings www.   .at   .au   .be   .biz   .br   .ca   .ch   .cn   .co.jp   .co.kr   .co.uk   .co.za   .co   .com.ar   .com.au   .com.br   .com.cn   .com.mx   .com.tr   .com.tw   .com.ua   .com   .cz   .de   .dk   .edu   .es   .eu   .fr   .gov   .gr   .hk   .hu   .il   .in   .info   .ir   .it   .jp   .kr   .me   .mx   .net   .nl   .no   .org   .pl   .ps   .ro   .ru   .se   .sg   .tr   .tv   .tw   .ua   .uk   .us   .vn     Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 51. More domain name compression •  38 valid characters – 0 to 9, a to z, -­‐ .   •  Two terminator characters ⇒ 40 – http:// vs https://   •  403 = 64000 < 65536 = 216 – So 3 characters per byte pair •  Special case: IPv4 address – Obvious encoding in 4 bytes Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 52. Variable hash length ≥ 96 bits Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ 350,000,000 × 109 × 86400 × 365 × 7178 = 296
  • 53. CoinSpark for Developers •  Fully open source (MIT/AGPL) •  Multilingual libraries – C/C++, Go, Java, JS, PHP, Python, Ruby •  Fully decentralized – Server-side elements federated • Let’s do for bitcoin what the web did for TCP/IP Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 54. Back to the start… What is the intrinsic value of a bitcoin? Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 55. 0.0 0.2 0.4 0.6 0.8 1.0 1.2 2011 2012 2013 2014 2015 2016 2017 2018 2019 Average block size (MB) Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ Current limit: 1 MB Economic prehistory Economic reality
  • 56. What happens then? •  Transactions compete for confirmation – Bidding via miner fee, paid only in bitcoin •  Real price discovery – Econ 101: until supply = demand •  If enough transactions (notarization?) are worth $10 to sender, all will cost that – No more cups of coffee! •  Increasing block size limit just delays this Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 57. So: bitcoin = global bidding power for embedding data in the blockchain. Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 58. More from Coin Sciences
  • 59. MultiChain •  Private blockchain platform – Targeted at financial sector – Drop-in replacement for Bitcoin Core •  Easy and quick deployment – Custom network parameters •  Permission management •  Native asset support •  Stable alpha now available Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 60. Coin Secrets – coinsecrets.org Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/
  • 61. php|python-OP_RETURN Coin Sciences Ltd Metadata in the Blockchain http://coinspark.org/ •  Send OP_RETURN using Bitcoin Core – Doing it yourself is hard work! •  Store and retrieve any data in blockchain – Uses OP_RETURNs in chained transactions – Returns reference like 356115-052075 for easy and fast retrieval •  Use on command line or library – PHP and Python now, Ruby to come