Blockchain:
Use cases for the future
by Bruno Lowagie
CFO Conferenz
22 November 2018
iText booth, JavaOne, San Francisco
Hashing
Los Gatos, California
Hashing
Creating a
“message digest”
A Cryptographic Hash function is a mathematical transformation algorithm
that takes an input of arbitrary length (“message”) and returns a fixed-size
byte sequence (the “message digest” or “hash”).
Example:
▪ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Facilisi morbi tempus
iaculis urna id volutpat. Cras tincidunt lobortis feugiat vivamus at augue
eget arcu dictum. Ac feugiat sed lectus vestibulum mattis. Hac habitasse
platea dictumst quisque.
- 318 bytes
▪ SHA-2, 256-bit (or 32 bytes):
A2EF46F63E8D8E093E1A263206692A973D332826A33E11270F37708C8C47FAED
Integrity check
“fingerprint” of
digital content
▪ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Facilisi morbi tempus
iaculis urna id volutpat. Cras tincidunt lobortis feugiat vivamus at augue
eget arcu dictum. Ac feugiat sed lectus vestibulum mattis. Hac habitasse
platea dictumst quisque.
▪ SHA-2, 256-bit (or 32 bytes):
A2EF46F63E8D8E093E1A263206692A973D332826A33E11270F37708C8C47FAED
▪ Lorem ipsum dolor sit amet, consectetur adipiscing elit. sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Facilisi morbi tempus
iaculis urna id volutpat. Cras tincidunt lobortis feugiat vivamus at augue
eget arcu dictum. Ac feugiat sed lectus vestibulum mattis. Hac habitasse
platea dictumst quisque.
▪ SHA-2, 256-bit (or 32 bytes):
2A0B6BEC62FC3038086854439839ED51DE0FF61EE0F4DFFA6D14D1E358EC6092
Requirements ▪ Deterministic: The same message always results in the same
digest
▪ Irreversible: The output doesn’t contain any info about the
input. E.g. Belgian National Number contains birth date and
last digit indicates the gender  should be a hash!
▪ Computationally efficient: It shouldn’t take a long time to
compute the hash.
▪ Random output: It should be unpredictable, as if someone
rolled dice. E.g. it should be very unlikely to get a hash like
0000000000000000000000000012345678abcdef
▪ Collision resistant: It should be extremely difficult to find two
inputs resulting in the same digest.
Distributed Ledger Technology
Oracle, Redwood Shores
Distributed
Ledger
Technology
DLT is a type of distributed database technology with the
following characteristics:
▪ The records can be replicated over different nodes in a network
(decentralized environment),
▪ New records can be added by each node, upon consensus reached by
other nodes (ranging from one specific authoritative node to potentially
every node),
▪ Existing records can be validated for integrity, authenticity, and non-
repudiation,
▪ Existing records can’t be removed, nor can their order be changed,
▪ The different nodes can act as independent participants that don’t
necessarily need to trust each other.
Combined, these characteristics make DLT a great way to keep a
ledger of records in a trustless environment.
Blockchain
Caltrain station, Redwood City
“
hash
Block 0
hash
Block 1
hash
Block 2
hash
Block 3
node
node
node
node
node
node
Records are broadcasted over the network, with the goal to organize them in a block
node
node
node
node
node
node
Nodes need to reach consensus before they can add a block
node
node
node
node
node
node
When consensus is reached, all nodes add the same block
Cryptocurrency
Bull of Wall Street, New York
Bitcoin
Cryptocurrency
👦👩 50 BTC
Carol  10 BTC  Alice
David  30 BTC  Alice
Erin  20 BTC  Alice
🔑 B  50 BTC
🔑 A  9 BTC
Sign hash with🔑A
1 BTC for the Miner
who succeeds in solving the PoW puzzle
and ensures Alice doesn’t spend a BTC twice
Similar to lines in a ledger
A has 60 BTC to spend
🔑A🔑 🔑B🔑
wallet wallet
Bitcoin
Mining
Solving the puzzle
in 10 minutes
together!
T1 T2 T3 T4 T5 T6 T7 TM
hash hash hash hash
hash hash
hash
👤 miner Mike
“Merkle Tree” proof
00000a5f4c8687d78ef…68b
40 leading bits must be zero: difficult!
240 attempts needed on average (~1 trillion)
Testing proof is very easy
Miner gets reward:
• Sum of fees
• Newly created coin
Bitcoin
creation
▪ The system looks at the time to generate 2016 blocks:
- If > 2 weeks: proof of work is made easier
- If < 2 weeks: proof of work is made more difficult
- 6 (1 hour) x 24 (1 day) x 14 (2 weeks): 2016
▪ Miners get a reward if they succeed in solving the puzzle
- Reward decreases over time
- Cut in half every 210,000 blocks
- About every 4 year (208 weeks)
- Upper limit 21,000,000 BTC
https://www.investopedia.com/tech/how-does-bitcoin-mining-work/
- Fractional coins exist: 0,00000001 BTC = 1 Satoshi (named after
Satoshi Nakamoto)
Smart Contracts
Ferry, Hong Kong
Predefined
Contract
• All counterparties agree on the terms (e.g. terms & conditions for a sale)
• Known conditions for execution (e.g. 10% down-payment; full payment upon delivery)
• Expressed in source code stored in the blockchain
Events
• An event triggers contract execution
• An event can refer to:
• The initiation of a transaction (e.g. a down-payment)
• Information that is received (e.g. a parcel has been delivered)
Execute
• Terms of contract dictate movement of value based on conditions met
• E.g. a down-payment: a parcel is sent in the real world
• E.g. a parcel is received: the payment is processed
Settlement
• On-chain assets: e.g. cryptocurrency (for instance “paid with Bitcoin”)
• Off-chain assets: e.g. the parcel (for instance “a work of art”)
• The value bearing item resides outside (“off”) the blockchain; It has a digital counterpart in the blockchain (e.g. identified using an RFID tag)
• Lifecycle events of the item are mirrored in the blockchain: the blockchain contains the “rights” (e.g. owner’s claim to a work of art)
Smart contract: example
Allow artists
to keep a
percentage of
their work
(and get more
royalties)
Recipes for the future
San Francisco Bay
https://t-mining.be/
http://www.internationalsupermarketnews.com/juicy-details-albert-heijn-uses-blockchain-to-make-orange-juice-production-transparent/
http://www.dfamilk.com/newsroom/press-releases/dfa-explores-blockchain-technology
Registering
documents in
the Blockchain
Document ID: [<ABCDEF>, <ABCDEF>]
Timestamp
Signed Document hash
Compressed property list with metadata:
- Status: e.g. “unpaid”, “paid”
- Location(s)
Certificate of signer
• Identity
• Public key
Adapted
viewer
Upon opening an invoice, the viewer can inform you:
▪ This document was registered in blockchain XYZ
- Do you trust this blockchain?
- Do you want to check the document in this blockchain?
▪ A blockchain service can return the following info:
- The ID is not found:
- This is a ghost invoice!
- The ID is found, but the hash doesn’t correspond:
- This is a forged invoice!
- The ID is found and the hash corresponds:
- This is a genuine invoice
- It was originally signed by vendor ABC
- Bank XYZ registered it as paid
Implemented
in China!
In its official release, the bank said it completed the development of blockchain electronic invoice
system in just over a month, and connected it to the blockchain platform of Shenzhen Tax Bureau.
According to CMB, blockchain electronic invoices connect each invoice stakeholder to facilitate
tracing invoice’s sources, authenticity and reimbursement information. It will help address a
number of issues that plague existing processes including false declaration and over-reporting
of one vote and can significantly reduce operating costs and tax risks.
“For the tax authorities, the life cycle of the invoice can be monitored in real time, intelligent tax
management can be realized, and the tax can be guaranteed to be paid in full and on time,” the
bank said. “Compared with traditional paper invoices, the introduction of blockchain technology
electronic invoices highlights its unique advantages of risk management control, convenient
operation and full chain processing.”
[<1234>,<5678>]
SignedByBob[#DEF1]
Status=quote
[<1234>,<1234>]
SignedByAlice[#ABCD]
Status=quoterequestnode
Alice
(customer)
node
Bob
(vendor)
[<1234>,<5A6E>]
SignedByAlice[#EF23]
Status=accepted
[<1234>,<ABCD>]
SignedByAlice[#1234]
Status=PO
[<1234>,<5A6E>]
SignedByCarol[#EF23]
Status=shipment
Carol
(courier)
node
Dave
(bank)
node
[<1234>,<F458>]
SignedByDave[#B798]
Status=paid
Possible Application in Sales processes
Document
Retrieval
what if we store the
URI of the document
along with the signed
hash?
▪ An alternative for doi.org to avoid Link Rot,
▪ A way to make sure you always look at the most recent
document (e.g. in the context of agreements),
▪ A way to know which documents exist:
- Criminal records spread over different courts,
- Medical records spread over different hospitals,
- Prescriptions for drugs that can only be retrieved by
pharmacists,
- Birth certificates, marriage certificates, death certificates
that can only be retrieved by City Hall,
- …
Long-term
validation
e.g. Last Will &
Testament
▪ Suppose that I write my last will and testament today, and
I digitally sign it using today’s state-of-the-art technology,
would my digital signature survive me?
▪ I surely hope not:
- I hope I survive my signing certificate,
- I hope I survive the time-stamping certificate,
- I hope I survive the algorithms.
▪ A last will and testament is usually a document of which
the content may change over time, and of which the
content remains a secret until it needs to be executed.
▪ This is a good use case for blockchain.
<ABC,
ABC>👦
<ABC,
ABC>
Service Provider Document storage (Adobe, Amazon, Box, Dropbox,...)
Public Permissioned Blockchain
<ABC, ABC>
<ABC,
XYZ>
<ABC,
XYZ>
<ABC, XYZ><ABC, ABC> <ABC, XYZ>
<ABC,
XYZ>
<ABC,
XYZ>
Smart contract:
• Author
or
• Notary
• Death certificate
👪
Bruno Lowagie
mail: bruno@lowagie.com
Web: https://lowagie.com
Twitter: @bruno1970
iText headquarters, Gentbrugge

Bruno Lowagie (iText) #cfoconferenz

  • 1.
    Blockchain: Use cases forthe future by Bruno Lowagie CFO Conferenz 22 November 2018 iText booth, JavaOne, San Francisco
  • 2.
  • 3.
    Hashing Creating a “message digest” ACryptographic Hash function is a mathematical transformation algorithm that takes an input of arbitrary length (“message”) and returns a fixed-size byte sequence (the “message digest” or “hash”). Example: ▪ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Facilisi morbi tempus iaculis urna id volutpat. Cras tincidunt lobortis feugiat vivamus at augue eget arcu dictum. Ac feugiat sed lectus vestibulum mattis. Hac habitasse platea dictumst quisque. - 318 bytes ▪ SHA-2, 256-bit (or 32 bytes): A2EF46F63E8D8E093E1A263206692A973D332826A33E11270F37708C8C47FAED
  • 4.
    Integrity check “fingerprint” of digitalcontent ▪ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Facilisi morbi tempus iaculis urna id volutpat. Cras tincidunt lobortis feugiat vivamus at augue eget arcu dictum. Ac feugiat sed lectus vestibulum mattis. Hac habitasse platea dictumst quisque. ▪ SHA-2, 256-bit (or 32 bytes): A2EF46F63E8D8E093E1A263206692A973D332826A33E11270F37708C8C47FAED ▪ Lorem ipsum dolor sit amet, consectetur adipiscing elit. sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Facilisi morbi tempus iaculis urna id volutpat. Cras tincidunt lobortis feugiat vivamus at augue eget arcu dictum. Ac feugiat sed lectus vestibulum mattis. Hac habitasse platea dictumst quisque. ▪ SHA-2, 256-bit (or 32 bytes): 2A0B6BEC62FC3038086854439839ED51DE0FF61EE0F4DFFA6D14D1E358EC6092
  • 5.
    Requirements ▪ Deterministic:The same message always results in the same digest ▪ Irreversible: The output doesn’t contain any info about the input. E.g. Belgian National Number contains birth date and last digit indicates the gender  should be a hash! ▪ Computationally efficient: It shouldn’t take a long time to compute the hash. ▪ Random output: It should be unpredictable, as if someone rolled dice. E.g. it should be very unlikely to get a hash like 0000000000000000000000000012345678abcdef ▪ Collision resistant: It should be extremely difficult to find two inputs resulting in the same digest.
  • 6.
  • 7.
    Distributed Ledger Technology DLT is atype of distributed database technology with the following characteristics: ▪ The records can be replicated over different nodes in a network (decentralized environment), ▪ New records can be added by each node, upon consensus reached by other nodes (ranging from one specific authoritative node to potentially every node), ▪ Existing records can be validated for integrity, authenticity, and non- repudiation, ▪ Existing records can’t be removed, nor can their order be changed, ▪ The different nodes can act as independent participants that don’t necessarily need to trust each other. Combined, these characteristics make DLT a great way to keep a ledger of records in a trustless environment.
  • 8.
  • 9.
  • 10.
    node node node node node node Records are broadcastedover the network, with the goal to organize them in a block
  • 11.
    node node node node node node Nodes need toreach consensus before they can add a block
  • 12.
    node node node node node node When consensus isreached, all nodes add the same block
  • 13.
  • 14.
    Bitcoin Cryptocurrency 👦👩 50 BTC Carol 10 BTC  Alice David  30 BTC  Alice Erin  20 BTC  Alice 🔑 B  50 BTC 🔑 A  9 BTC Sign hash with🔑A 1 BTC for the Miner who succeeds in solving the PoW puzzle and ensures Alice doesn’t spend a BTC twice Similar to lines in a ledger A has 60 BTC to spend 🔑A🔑 🔑B🔑 wallet wallet
  • 15.
    Bitcoin Mining Solving the puzzle in10 minutes together! T1 T2 T3 T4 T5 T6 T7 TM hash hash hash hash hash hash hash 👤 miner Mike “Merkle Tree” proof 00000a5f4c8687d78ef…68b 40 leading bits must be zero: difficult! 240 attempts needed on average (~1 trillion) Testing proof is very easy Miner gets reward: • Sum of fees • Newly created coin
  • 16.
    Bitcoin creation ▪ The systemlooks at the time to generate 2016 blocks: - If > 2 weeks: proof of work is made easier - If < 2 weeks: proof of work is made more difficult - 6 (1 hour) x 24 (1 day) x 14 (2 weeks): 2016 ▪ Miners get a reward if they succeed in solving the puzzle - Reward decreases over time - Cut in half every 210,000 blocks - About every 4 year (208 weeks) - Upper limit 21,000,000 BTC https://www.investopedia.com/tech/how-does-bitcoin-mining-work/ - Fractional coins exist: 0,00000001 BTC = 1 Satoshi (named after Satoshi Nakamoto)
  • 17.
  • 18.
    Predefined Contract • All counterpartiesagree on the terms (e.g. terms & conditions for a sale) • Known conditions for execution (e.g. 10% down-payment; full payment upon delivery) • Expressed in source code stored in the blockchain Events • An event triggers contract execution • An event can refer to: • The initiation of a transaction (e.g. a down-payment) • Information that is received (e.g. a parcel has been delivered) Execute • Terms of contract dictate movement of value based on conditions met • E.g. a down-payment: a parcel is sent in the real world • E.g. a parcel is received: the payment is processed Settlement • On-chain assets: e.g. cryptocurrency (for instance “paid with Bitcoin”) • Off-chain assets: e.g. the parcel (for instance “a work of art”) • The value bearing item resides outside (“off”) the blockchain; It has a digital counterpart in the blockchain (e.g. identified using an RFID tag) • Lifecycle events of the item are mirrored in the blockchain: the blockchain contains the “rights” (e.g. owner’s claim to a work of art) Smart contract: example
  • 19.
    Allow artists to keepa percentage of their work (and get more royalties)
  • 20.
    Recipes for thefuture San Francisco Bay
  • 21.
  • 22.
  • 23.
  • 24.
    Registering documents in the Blockchain DocumentID: [<ABCDEF>, <ABCDEF>] Timestamp Signed Document hash Compressed property list with metadata: - Status: e.g. “unpaid”, “paid” - Location(s) Certificate of signer • Identity • Public key
  • 26.
    Adapted viewer Upon opening aninvoice, the viewer can inform you: ▪ This document was registered in blockchain XYZ - Do you trust this blockchain? - Do you want to check the document in this blockchain? ▪ A blockchain service can return the following info: - The ID is not found: - This is a ghost invoice! - The ID is found, but the hash doesn’t correspond: - This is a forged invoice! - The ID is found and the hash corresponds: - This is a genuine invoice - It was originally signed by vendor ABC - Bank XYZ registered it as paid
  • 27.
    Implemented in China! In itsofficial release, the bank said it completed the development of blockchain electronic invoice system in just over a month, and connected it to the blockchain platform of Shenzhen Tax Bureau. According to CMB, blockchain electronic invoices connect each invoice stakeholder to facilitate tracing invoice’s sources, authenticity and reimbursement information. It will help address a number of issues that plague existing processes including false declaration and over-reporting of one vote and can significantly reduce operating costs and tax risks. “For the tax authorities, the life cycle of the invoice can be monitored in real time, intelligent tax management can be realized, and the tax can be guaranteed to be paid in full and on time,” the bank said. “Compared with traditional paper invoices, the introduction of blockchain technology electronic invoices highlights its unique advantages of risk management control, convenient operation and full chain processing.”
  • 28.
  • 29.
    Document Retrieval what if westore the URI of the document along with the signed hash? ▪ An alternative for doi.org to avoid Link Rot, ▪ A way to make sure you always look at the most recent document (e.g. in the context of agreements), ▪ A way to know which documents exist: - Criminal records spread over different courts, - Medical records spread over different hospitals, - Prescriptions for drugs that can only be retrieved by pharmacists, - Birth certificates, marriage certificates, death certificates that can only be retrieved by City Hall, - …
  • 30.
    Long-term validation e.g. Last Will& Testament ▪ Suppose that I write my last will and testament today, and I digitally sign it using today’s state-of-the-art technology, would my digital signature survive me? ▪ I surely hope not: - I hope I survive my signing certificate, - I hope I survive the time-stamping certificate, - I hope I survive the algorithms. ▪ A last will and testament is usually a document of which the content may change over time, and of which the content remains a secret until it needs to be executed. ▪ This is a good use case for blockchain.
  • 31.
    <ABC, ABC>👦 <ABC, ABC> Service Provider Documentstorage (Adobe, Amazon, Box, Dropbox,...) Public Permissioned Blockchain <ABC, ABC> <ABC, XYZ> <ABC, XYZ> <ABC, XYZ><ABC, ABC> <ABC, XYZ> <ABC, XYZ> <ABC, XYZ> Smart contract: • Author or • Notary • Death certificate 👪
  • 32.
    Bruno Lowagie mail: bruno@lowagie.com Web:https://lowagie.com Twitter: @bruno1970 iText headquarters, Gentbrugge