SlideShare une entreprise Scribd logo
1  sur  62
Télécharger pour lire hors ligne
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?

Contenu connexe

Tendances

Adaptive neural network controller Presentation
Adaptive neural network controller PresentationAdaptive neural network controller Presentation
Adaptive neural network controller Presentation
Nguyen Cong Dan
 
MICROCONTROLADORES II EN C. TEMA 5
MICROCONTROLADORES II EN C. TEMA 5MICROCONTROLADORES II EN C. TEMA 5
MICROCONTROLADORES II EN C. TEMA 5
Luis Zurita
 
GUÍA DE EJERCICIOS RESUELTOS TEMA 4
GUÍA DE EJERCICIOS RESUELTOS TEMA 4GUÍA DE EJERCICIOS RESUELTOS TEMA 4
GUÍA DE EJERCICIOS RESUELTOS TEMA 4
Luis Zurita
 
Quantum computer
Quantum computerQuantum computer
Quantum computer
Nikhil Eg
 
Honeywell is2535-install-guide
Honeywell is2535-install-guideHoneywell is2535-install-guide
Honeywell is2535-install-guide
Alarm Grid
 

Tendances (17)

Caracterización de antenas lineales usando el Método de los Momentos
Caracterización de antenas lineales usando el Método de los MomentosCaracterización de antenas lineales usando el Método de los Momentos
Caracterización de antenas lineales usando el Método de los Momentos
 
Seminar
SeminarSeminar
Seminar
 
Electronica digital
Electronica digitalElectronica digital
Electronica digital
 
Adaptive neural network controller Presentation
Adaptive neural network controller PresentationAdaptive neural network controller Presentation
Adaptive neural network controller Presentation
 
Fundamentals of Quantum Computing
Fundamentals of Quantum ComputingFundamentals of Quantum Computing
Fundamentals of Quantum Computing
 
Introduction to Quantum Computing
Introduction to Quantum ComputingIntroduction to Quantum Computing
Introduction to Quantum Computing
 
Electrodistributeur 5 orifices - Catalogue SMC New SQ1000/2000
Electrodistributeur 5 orifices - Catalogue SMC New SQ1000/2000Electrodistributeur 5 orifices - Catalogue SMC New SQ1000/2000
Electrodistributeur 5 orifices - Catalogue SMC New SQ1000/2000
 
Circuitos integrados l298 y uln2803
Circuitos  integrados l298 y uln2803Circuitos  integrados l298 y uln2803
Circuitos integrados l298 y uln2803
 
MCHW-Vol-1-Series-800-converted.docx
MCHW-Vol-1-Series-800-converted.docxMCHW-Vol-1-Series-800-converted.docx
MCHW-Vol-1-Series-800-converted.docx
 
MICROCONTROLADORES II EN C. TEMA 5
MICROCONTROLADORES II EN C. TEMA 5MICROCONTROLADORES II EN C. TEMA 5
MICROCONTROLADORES II EN C. TEMA 5
 
GUÍA DE EJERCICIOS RESUELTOS TEMA 4
GUÍA DE EJERCICIOS RESUELTOS TEMA 4GUÍA DE EJERCICIOS RESUELTOS TEMA 4
GUÍA DE EJERCICIOS RESUELTOS TEMA 4
 
Quantum Computing
Quantum ComputingQuantum Computing
Quantum Computing
 
Quantum computer
Quantum computerQuantum computer
Quantum computer
 
Qunatum computing
Qunatum computing Qunatum computing
Qunatum computing
 
Seminar
SeminarSeminar
Seminar
 
Quantum Computing
Quantum ComputingQuantum Computing
Quantum Computing
 
Honeywell is2535-install-guide
Honeywell is2535-install-guideHoneywell is2535-install-guide
Honeywell is2535-install-guide
 

Similaire à Metadata in the Blockchain: The OP_RETURN Explosion

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)
Crypto Wallets: A Technical Perspective (Nakov at OpenFest 2018)
Svetlin Nakov
 
Presentation_Topalidis_Giorgos
Presentation_Topalidis_GiorgosPresentation_Topalidis_Giorgos
Presentation_Topalidis_Giorgos
Giorgos Topalidis
 
Unsung heroes Validator & Infra provider.pdf
Unsung heroes Validator & Infra provider.pdfUnsung heroes Validator & Infra provider.pdf
Unsung heroes Validator & Infra provider.pdf
Jiyun Kim
 

Similaire à Metadata in the Blockchain: The OP_RETURN Explosion (20)

Fredericksburg LUG Bitcoin slides
Fredericksburg LUG Bitcoin slidesFredericksburg LUG Bitcoin slides
Fredericksburg LUG Bitcoin slides
 
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)
Crypto Wallets: A Technical Perspective (Nakov at OpenFest 2018)
 
Blockchain, cryptography and tokens — NYC Bar presentation
Blockchain, cryptography and tokens — NYC Bar presentationBlockchain, cryptography and tokens — NYC Bar presentation
Blockchain, cryptography and tokens — NYC Bar presentation
 
J.burke HackMiami6
J.burke HackMiami6J.burke HackMiami6
J.burke HackMiami6
 
Blockchain, Ethereum and Business Applications
Blockchain, Ethereum and Business ApplicationsBlockchain, Ethereum and Business Applications
Blockchain, Ethereum and Business Applications
 
Cryptocurrencies and Blockchain - An opportunity for Startups and Companies
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
 
An Investor's Guide to Web3 / Crypto / Blockchain
An Investor's Guide to Web3 / Crypto / BlockchainAn Investor's Guide to Web3 / Crypto / Blockchain
An Investor's Guide to Web3 / Crypto / Blockchain
 
Blockchain, Bitcoin, Crypto assets, Initial Coin Offer workshop
Blockchain, Bitcoin, Crypto assets, Initial Coin Offer workshopBlockchain, Bitcoin, Crypto assets, Initial Coin Offer workshop
Blockchain, Bitcoin, Crypto assets, Initial Coin Offer workshop
 
WSO2Con USA 2017: Keynote - The Blockchain’s Digital Disruption
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
 
New Business Models enabled by Blockchain
New Business Models enabled by BlockchainNew Business Models enabled by Blockchain
New Business Models enabled by Blockchain
 
Blockchain-enabled Exchange: Architecture, First Experiences and Outlook
Blockchain-enabled Exchange: Architecture, First Experiences and OutlookBlockchain-enabled Exchange: Architecture, First Experiences and Outlook
Blockchain-enabled Exchange: Architecture, First Experiences and Outlook
 
Masterclass on Bitcoin, Ethereum & Cryptoassets
Masterclass on Bitcoin, Ethereum & CryptoassetsMasterclass on Bitcoin, Ethereum & Cryptoassets
Masterclass on Bitcoin, Ethereum & Cryptoassets
 
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?
Meetup 19/12/2016 - Blockchain-as-a-service voor Antwerpen?
 
Presentation_Topalidis_Giorgos
Presentation_Topalidis_GiorgosPresentation_Topalidis_Giorgos
Presentation_Topalidis_Giorgos
 
Presentation topalidis giorgos
Presentation topalidis giorgosPresentation topalidis giorgos
Presentation topalidis giorgos
 
Unsung heroes Validator & Infra provider.pdf
Unsung heroes Validator & Infra provider.pdfUnsung heroes Validator & Infra provider.pdf
Unsung heroes Validator & Infra provider.pdf
 
One library for all Java encryption
One library for all Java encryptionOne library for all Java encryption
One library for all Java encryption
 
Ergo Presentation - Tokyo
Ergo Presentation - TokyoErgo Presentation - Tokyo
Ergo Presentation - Tokyo
 
Blockchain, AI and Machine Learning
Blockchain, AI and Machine LearningBlockchain, AI and Machine Learning
Blockchain, AI and Machine Learning
 
Algorand Educate: Intro to Algorand
Algorand Educate: Intro to AlgorandAlgorand Educate: Intro to Algorand
Algorand Educate: Intro to Algorand
 

Dernier

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Dernier (20)

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

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