Koen Vingerhoets (https://www.slideshare.net/koenvingerhoets) explained (a) the basics of blockchain in its 6 key elements (transparency, ownership, traceability, distributed, trust, smart contracts) and (b) a few technical aspects on blockchain, like hashing, smart and ricardian contracts, bugs in the code, private ledgers, aspects to take into account to govern a (private) blockchain, and the impact of (EU) regulation.
The context was the second (2019) edition of the Computational Law and Blockchain Festival (#CLBFest), Brussels' node.
2. From 7331 to legal: a selection of blockchain discussion topics
3. 5
The Studio – a 100% daughter of Belfius Bank & Insurance
MONETIZATION OF BELFIUS ASSETS & DIGITAL
EXPERTISE
Assess opportunity for Belfius to monetize its digital assets and
expertise by exporting it to other clients and industries
INTERNATIONAL FOOTPRINT
Evaluate the opportunity for Belfius to geographically
expand its footprint by means of technology
ECOSYSTEM STRATEGY
Invest in the development of ecosystems via which we can
ultimately distribute Belfius products and services
INNOVATION
Foster an innovative way of working to quickly test and
assess the potential of new technologies
4. 8
On the menu
• Hashing
• Blockchain for business
• From 7331 to legal
• Conclusion
6. A transaction is
- Declaration of an incident
- Pictures of the accident
- Signed contract
- A proof of payment
- An offer from car repair
- Steps in the RDR wizard
- …
Understanding distributed ledgers Nomen est omen
7. Understanding distributed ledgers
vs
1. Every hash is unique
2. Infinitly reproducable
3. One way traffic
Encryption vs hashing
When you know a
hash is NOT unique
8. Chance to win
1 in 139.838.160
Chance on collision in bitcoin’s hashing algorithm (sha256):
Chance to die in a shark attack:
1 in 300.000.000
Chance to have a meteor land on your house:
1 in 182.000.000.000.000
in 1.460.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000
A hash is NOT unique. How safe is Bitcoin??
19. IN 0,8 BTC
IN 0,6 BTC
OUT 1 BTC
REST 0,4 BTC
Koen receives two payments
- 0,8 BTC from Nicki
- 0,6 BTC from Wim
Koen transfers 1 BTC to Thomas
- 0,8 BTC + 0,2 BTC
- 0,4 BTC is unspent transaction
• (A defined number of) assets are stored
on the blockchain
• Each asset is identified
• Assets are divided
• Assets are transferred (not copied)
=> Clear view on who owns what when.
Ownership : how value is stored
Koen -> ThomasNicki -> Koen
Wim -> Koen
20. Trust
Distributed
Smart contracts
An approach : 6 key elements
Combined and used with other parties, they create a single shared source of truth.
Transparency
Ownership
Traceability
23. Trust
Smart contracts
An approach : 6 key elements
Combined and used with other parties, they create a single shared source of truth.
Transparency
Ownership
Traceability
Distributed
25. Trusted party &
Single point of failure
One level hierarchy : dictator
Several critical points protect each
other from failure
Two level hierarchy : democracy
Everyone is equal
Zero level hierarchy : direct representation
Distributed : (de)centralized & distributed Architecture
Decision making
Logical working
26. Distributed
Smart contracts
An approach : 6 key elements
Combined and used with other parties, they create a single shared source of truth.
Transparency
Ownership
Traceability
Trust
27. Trust : The Jayrun Water Clock, built by Muhammad al-Sa’ati in 1203 AD
29. Trust
Distributed
An approach : 6 key elements
Combined and used with other parties, they create a single shared source of truth.
Transparency
Ownership
Traceability Smart contracts
31. Definition
A smart contract is an agreement whose execution
is both automated and enforceable.
• The actual “transaction” among parties is
expressed through and independently executed
by computer code, no party can block it or
otherwise tamper with.
• It constitutes legally binding rights and
obligations of the involved parties.
Smart contracts
Not smart, not a contract… but it’s code and it runs on the blockchain.
33. Trust
Distributed
Smart contracts
An approach : 6 key elements
Combined and used with other parties, they create a single shared source of truth.
Transparency
Ownership
Traceability
In collaboration with others, Blockchain is…
… the single shared source of truth.
34. 38
On the menu
• Hashing
• Blockchain for business
• From 7331 to legal
• Oracles
• Smart contracts
• Developers
• Private ledgers
• Governance
• EU regulations
• Conclusion
37. FX rate RFID tag Flight time SWIFT Weather
Who or what is in charge?
Uptime / SLA?
Liability?
Security?
Outsourcing alike?
38. 42
On the menu
• Hashing
• Blockchain for business
• From 7331 to legal
• Oracles
• Smart contracts
• Developers
• Private ledgers
• Governance
• EU regulations
• Conclusion
39. “A smart contract is an agreement whose
execution is both automated and enforceable.”
Certainty of execution
No one to bribe, call, threaten,…
No code to update, append, delete,…
No thing to trash, reboot, stop,…
Smart contracts & normalized systems
The good : it will run
41. Combinatorial effects due to
• Technical challenges
• Developer challenges
• Legal challenges
• Systemic challenges
• Organizational challenges
Smart contracts & normalized systems
Why smart contracts are complex and prone to change
42. Smart contracts : report from the trenches
Legal : compliance upfront, justice too
Enforced & automated
- (All) Exceptions foreseen?
- (All) Different scenario’s foreseen?
- (All) Atomic / granular?
- Oracles export the issues
- Fat finger errors?
? How enforced & automated will it be ?
43. 47
On the menu
• Hashing
• Blockchain for business
• From 7331 to legal
• Oracles
• Smart contracts
• Developers
• Private ledgers
• Governance
• EU regulations
• Conclusion
44. “I’m often asked at conferences and workshops
what I consider to be Bitcoin’s greatest challenge in
the future. My answer is always the same: avoiding
catastrophic software bugs,” he wrote.
<…>
Part of the problem was that Bitcoin ABC did not
have a responsible disclosure policy. Additionally,
Fields could not find publicly available encryption
keys for the lead developers at Bitcoin ABC to
whom he could send encrypted message informing
them of the vulnerability without risking it being
viewed by others.
“Because I used my name for the disclosure, hard
proof would exist that I had the knowledge and
means to attack the network. I would have no way
to prove that I was not the attacker. Then consider
that, collectively, billions of dollars could have been
lost as a result of this exploit. People have been
killed for much less,” wrote Fields.
45. What is “the code”? The protocol / source code?
- Usually open source (quite often under MIT license, all caps
clause (“THE SOFTWARE IS PROVIDED "AS IS" etc”))
- (Un)known developers (researchers, policy developers, coders,
code reviewers, etc.)
- Vetted by the community (but still)
What is “the code”? The smart contract?
- Not always readable
- Where the money is made (DAO, cryptokitties,…)
- (Un)known developers
- Tests on Ethereum revealed horrendous quality
What is “the code”? The blockchain itself?
- Data generated by protocol or smart contracts
- Unreadable (but not untinkerable) for developers
- No liability for what people actually do with the code?
46. At least one regulator is attempting to provide clarity regarding the potential liability of actors
who violate regulations through the use of smart contracts. On October 16, 2018,
Commissioner Brian Quintenz of the Commodity Futures Trading Commission
explained his belief.
Commissioner Quintenz identified the parties essential to the functioning of the smart
contract blockchain ecosystem:
1. the core developers of the blockchain software;
2. the miners that validate transactions;
3. the developers of the smart contract applications; and
4. users of the smart contracts.
47. To ascertain the culpability of the smart contract code developers, the “appropriate question is
whether these code developers
- could reasonably foresee,
- at the time they created the code, that it would likely
- be used by U.S. persons in a manner
- violative of CFTC regulations.”
If such a use is foreseeable, Commissioner Quintenz believes that a “strong case could be
made that the code developers aided and abetted violations of CFTC regulations.”
48. 52
On the menu
• Hashing
• Blockchain for business
• From 7331 to legal
• Oracles
• Smart contracts
• Developers
• Private ledgers
• Governance
• EU regulations
• Conclusion
56. 60
On the menu
• Hashing
• Blockchain for business
• From 7331 to legal
• Oracles
• Smart contracts
• Developers
• Private ledgers
• Governance
• EU regulations
• Conclusion
57. Decide how to decide
How to incorporate?
Where to incorporate?
Stakes / evaluation of partners
Onboarding procedure
Offboarding procedure
Liability
Invoicing
Profit distribution
Representation
Agreements on updates/upgrades
Technical demands / downtime
Consensus algorithm
Outsourcing
Cloud data
Code security review
Audit of the system
Code escrow
IP ownership
…
58. What if…
Multiple projects run on the same infrastructure?
Reporting is replaced by real time data access?
Is there a need for…
A Belgian R&D center?
Or an overarching governing entity?
Or a regulatory sandbox?
59. 63
On the menu
• Hashing
• Blockchain for business
• From 7331 to legal
• Oracles
• Smart contracts
• Developers
• Private ledgers
• Governance
• EU regulations
• Conclusion