SlideShare a Scribd company logo
1 of 92
Download to read offline
Bitcoin, Blockchain
& Smart Contracts
I n t r o d u c t i e
Kristof Verslype
Smals Onderzoek (smalsresearch.be)
www.cryptov.net
Knowhow Development
Infrastructure Staffing
E-gov award
3
Bitcoin
Blockchain 2.0
Smart Contracts
Blockchain 1.0
Applicaties
Agenda
Bitcoin
Blockchain
5http://uk.businessinsider.com/bitcoin-pizza-day-passes-2000-20-million-2017-5
Op 22 mei 2010 kocht een software
ontwikkelaar 2 pizza’s voor 10 000 bitcoin.
Vandaag zijn 10 000 bitcoins meer dan 40
miljoen dollar waard
Bitcoin prijs
6
16 500 000 BTC in omloop
 Totale waarde: ± 62 miljard $
Alle cryptomunten samen:
±120 miljard $
Traditionele Internationale Transactie
7
Bob Alice
Traditionele Internationale Transactie
8
Bob Alice
Is dit mogelijk zonder vertrouwde partij?
1e gedistribueerde cryptomunt (2009)
Schok doorheen de financiële wereld
Snel aandacht voor Bitcoin/blockchain vanuit de financiële wereld
H o e w e r k t h e t ?
9
Idee
10
Transactions
5,1 BTC →
0,7 BTC →
Transactions
5,1 BTC →
0,7 BTC →
Transactions
5,1 BTC →
0,7 BTC →
Transactions
5,1 BTC →
0,7 BTC →
Ik transfereer 0,4
BTC naar
Ok!
Ok!
Ok!
0,4 BTC →
Bob
Alice
Charlie
Dave
0,4 BTC →
0,4 BTC →
0,4 BTC →
Idea
11
Transactions
5,1 BTC →
0,7 BTC →
Transactions
5,1 BTC →
0,7 BTC →
Transactions
5,1 BTC →
0,7 BTC →
Transactions
5,1 BTC →
0,7 BTC →
I transfer
0,4 BTC to .
Ok!
Ok!
Ok!
0,4 BTC →
Bob
Alice
Charlie
Dave
0,4 BTC →
0,4 BTC →
0,4 BTC →
Blockchain
Atomisch
Iedereen schrijft de transactie in zijn/haar append-only spreadsheet
of niemand → Consensus mechanisme
Geldig
Enkel geldige transacties worden aanvaard door het netwerk
Vb. Bob is eigenaar / heeft het geld niet reeds eerder gespendeerd
Veilig en robuust
Systeem blijft correct werken, zelfs indien deel participanten offline of
kwaadaardig is
Relatief snel
Gedistribueerd
Blockchain
12
Aan vaste frequentie nieuwe blokken gecreëerd
met daarin de meest recente transacties
De blockchain bevat
alle transacties
Transacties in de blockchain
zijn onverwijderbaar
Blockchain = aaneenschakeling van
blokken, die transacties bevatten
Vele entiteiten bezitten dezelfde
kopie van de blockchain
Block 51
Header
Block 52
Header
Block 53
Header Header
Block 54
5,10 BTC →
0,70 BTC →
Blockchain specifiek: 10 minutes in
Bitcoin, 10 seconden in Ethereum,…
0,40 BTC →
Idee
13
Transactions
5,1 BTC →
0,7 BTC →
Transactions
5,1 BTC →
0,7 BTC →
Transactions
5,1 BTC →
0,7 BTC →
Transactions
5,1 BTC →
0,7 BTC →
0,4 BTC →
Bob
Alice
Charlie
Dave
0,4 BTC →
0,4 BTC →
0,4 BTC →
Pseudoniemen & Sleutels
14
0,40 BTC → 0,40 BTC →Niet maar
Blockchain
15
Block 51
Header
Block 52
Header
Block 53
Header Header
Block 54
5,10 BTC →
0,70 BTC →
0,40 BTC →
1Nf311Qb8rLDk
1F1tAaz5x1HUX
3BcMuv1VJqm Bob
Alice
Charlie
Dave
Transacties
16
Header
Block 51
Header
Block 52
Header
Block 53
Header
Block 54
Mijn bitcoins zijn verspreid in de blockchain over meerdere transacties
Transaction Z4R
0,01 BTC →
Transaction 06D
12,6 BTC →
Transaction 83F
1,2 BTC →
Transaction YC0
0,8 BTC →
0,4 BTC →
Output Addr BTC
Z4R[0] 0,01
06D[0] 12,6
83F[0] 1,2
Output Addr BTC
Z4R[0] 0,01
06D[0] 12,6
YCO[0] 0,8
YCO[1] 0,4
I s h e t e f f i c i ë n t ?
17
- Mining
18
‘Miners’ gaan in competitie met elkaar om als
eerste een rekenintensieve cryptografische
puzzel te vinden (per blok).
Bitcoin Mining
19
000000000000000002A386ADBAED073B0
2E66EE8A6A61FD83BA33DF434553671
Header
Hash
(fingerprint)
function
669831a3180f1e77e9e3c904b76d6254
03924303118ff97acff2d8599b9dc91b
bc9e7154309cdc81c5b6203b04531581
07e8d4c4cfe6eeb82fbaddefa345dc7b
015487950321
Eigenschappen
- Moeilijk te vinden
- Makkelijk te verifiëren
- Aanpasbare moeilijkheidsgraad
Winnaar beloond
- Nieuwe bitcoins
- Transactievergoedingen
Disclaimer: in werkelijkheid wordt enkel de header gehasht, die een fingerprint bevat van de transacties
Gelijktijdige Blokcreatie
20
Wat gebeurt er indien twee miners ongeveer gelijktijdig een geldig blok vinden
Langste tak is diegene die aanvaard wordt
Daarom best een aantal blokken wachten
vooralleer transactie als verwerkt te beschouwen
Ecologische Impact
21https://digiconomist.net/bitcoin-energy-consumption
Elektriciteitsverbruik per land
> 70% in China
Zwakke milieuwetgeving
→ Goedkope elektriciteit
(steenkool & waterkracht)
Max. capaciteit
3 transacties / sec.
I s h e t v e i l i g ?
22
Veiligheid
23
Block 51
Header
Block 52
Header
5,10 BTC →
Header
Block 53
0,70 BTC →
Header
Block 54
0,40 BTC →
Header
Block 53
0,70 BTC →
Header
Block 52
Header
Block 54
0,40 BTC →
Hoe ouder de transactie, hoe beter beschermd
Want gevolgd door meer blokken
waarvoor cryptografische puzzel opnieuw opgelost moet worden
Veiligheid
24
Bitcoin is niet alleen een concept…
Gebruiker Software Infrastructuur
Verlies
Diefstal
Misbruik
Informaticus James Howells verloor in 2013 7500 bitcoins door per
ongeluk een oude harde schijf weg te gooien. Die harde schijf bevatte
zijn geheime sleutel…
Het bitcoin protocol is veilig zolang er geen participant meer dan
50% van de rekenkracht bezit
Risico
25
Card Stop
Afhaallimiet
Terugbetaling
Centrale entiteit → individuele gebruiker
→ Soms zijn we blij dat er een centrale partij is
Omgaan met verlies
Hardware Wallets
26
Sleutel fysiek beschermd met hardware token
27
Online Wallets
28
Online
wallet
Beheert jouw bitcoins
Volledig vertrouwen nodig
Enkele gehackte online wallets…
Klanten verloren geld
Pseudoniemen & Sleutels
29
(pseudonym)
Shamir Secret Sharing (1979)
I s h e t s c h a a l b a a r ?
30
Blockchain.info
31
Schaalprobleem
- Alle transacties op blockchain
- 3 transacties / sec. ↔ Visa: 10 000 / sec.
- En blockchain toch al 120GB groot
Schaalprobleem
- Alle transacties in blockchain
- 3 transacties per seconde ↔ Visa: 65 000 / sec.
- En reeds > 132 GB (Blockchain + UTXO, SegWit))
Bitcoin Blockchain Grootte
blockchain.info/charts/blocks-size
Mogelijke aanpassingen korte termijn
- Deel transactie opgeslagen buiten block (SegWit)
- Dubbele blokgrootte (SegWit2X)
=> capaciteit x3-4, opslagvereisten x3-4
Toekomst: Lightening network
W a a r v o o r w o r d t h e t
g e b r u i k t ?
32
Bitcoin & Privacy
33
Fleder, Michael, Michael S. Kester, and Sudeep Pillai. MIT. "Bitcoin transaction graph analysis." arXiv preprint arXiv:1502.01657 (2015).
Goldfeder, Steven, et al. "When the cookie meets the blockchain: Privacy risks of web payments via cryptocurrencies." arXiv preprint arXiv:1708.04748 (2017).
“Geïdentificeerde” personen gelinkt aan
“Op de meeste shop websites ontvangen third party
trackers informatie over aankopen van gebruikers. Dit
voor analyse- en reclamedoeleinden. Wij tonen aan dat
indien de gebruiker betaalt met een cryptomunt,
trackers typisch genoeg informatie hebben over de
aankoop om de transactie op de blockchain uniek te
identificeren, te linken aan de cookie van de gebruiker,
en verder aan de echte identiteit van de gebruiker.”
Graad van privacy op Bitcoin netwerk, maar verre van perfect
34
35
36
Witwassen van Geld
37
Bob’s eBook Shop
https://www.quora.com/How-bitcoin-can-be-used-for-money-laundering
BobAlice Bitcoin Exchange
Bitcoin network
Real world
Anoniem, geen authenticatie
Geen gereguleerde entiteit betrokken
Wettelijke onderzoek bemoeilijk doordat meerdere
jurisdicties betrokken
Waarvoor wordt Bitcoin gebruikt?
38
Onmogelijk om exacte getallen te vinden
Illegale activiteiten
Gokken
Speculatie Bescherming tegen
waardeverlies lokale munt
(V.b. Venezuela)
Internationale
transacties
Transacties voor kleine bedragen soms erg duur
Waarvoor wordt Bitcoin gebruikt?
39
Onmogelijk om exacte getallen te vinden
Illegale activiteiten
Gokken
Speculatie Internationale
transacties
Transacties voor kleine bedragen soms erg duur
Bescherming tegen
waardeverlies lokale munt
(V.b. Venezuela)
Zet je euro’s om in bitcoins en de overheid heeft er geen vat meer op
→ Democratisering van vluchtroutes
Gemiddelde transactiekost in $
40
Volatiel en onvoorspelbaar Gebaseerd op vraag & aanbod
Gebaseerd op grootte (in bytes) van transactie en niet op bedrag
Prijsvolatiliteit
41
Onpraktisch voor handel
Enkele Bedenkingen
42
Bitcoin is een eerste experiment
• Niet perfect en dat mogen we ook niet verwachten
• Gebruik van eenvoudige, oude crypto concepten (jaren ‘70)
Blockchain = nieuwe technologie met potentieel
• In het bijzonder bij samenwerking maar vertrouwensissues
• Jonge technologie met uitdagingen en progressie
Idee distributie vertrouwen m.b.v. technologie
• “Alles dat met een vetrouwde autoriteit gedaan kan
worden, kan ook zonder” - D. Boneh, crypto prof. @ Stanford
• Niet enkel blockchain technologie
43
Bitcoin
Blockchain 2.0
Smart Contracts
Blockchain 1.0
Applicaties
Agenda
44
Blockchain
Applicaties
45
Blockchain Eigenschappen
Inefficiënt / competitie
Bitcoin eigenschappen
Open voor iedereen
Append-only
Sleutels &
Pseudoniemen
Robuust
Consensus
mechanisme
Algemene eigenschappen
Blockchain gaat over
Distributie van Vertrouwen
46
Blockchain Netwerk
Bescherming data Afdwingen regels
Data & Blockchain
47
Transaction
0,01 BTC →
Vertrouwde
entiteit
Transaction
Data
Onwijzigbaar
(integriteit)
Onverwijderbaar
(long-term)
Tijdsstempel
Eigenschappen van data in een blockchain
TransparantAuthentiek
→ Toepassingen verschillend van cryptomunten
met bestaande blockchain of met eigen blockchain
Robuust
(beschikbaarheid)
Voor de eenvoud…
Blockchain Applicaties
48
Diploma
Alice
Master in
Lego Design
KU Leuven
Registratie
feiten
Transfereren
activa
Stroomlijnen
processen
Contracten
Blockchain 1.0 (data)
Blockchain 2.0 (regels)
49
Registratie Feiten
Vaccinatie
IdentiteitDiplomaHuwelijk
Medische
records
Herkomst /
Toeleveringsketen
Rijbewijs
Politieke
mandaten
Officiële
documenten
Historiek/
overzicht
Niet alle data per se op de blockchain zelf
→ Misschien volstaat een unieke vingerafdruk (hash)
Testament
50
Registratie Feiten
Alice
9AF
Werkgever
Alice heeft geen blockchain kopie nodig
In werkelijkheid gewoonlijk meer crypto
(hashing, encryptie, pseudonymen)
Transaction 9AF
Diploma
Alice
Master in
Lego Design
KU Leuven
Alice
51
Registratie Feiten
Alice
9AF
Werkgever
Transaction 9AF
Diploma
Alice
Master in
Lego Design
KU Leuven
Diploma
Alice
Master in
Lego Design
KU Leuven
Beste match met GDPR
Verificatie Certificaten
52https://www.dnvgl.be/certificering/certificaten-in-de-blockchain.html?utm_source=be&utm_medium=persbericht&utm_campaign=be-persbericht-270917
Identiteit
53© blockchainpilots.nl
Identiteit
54© blockchainpilots.nl
Andere (superieure?) technologieën:
Anonieme credentials = Attribute-based credentials
Blockchain Applicaties
55
Diploma
Alice
Master in
Lego Design
KU Leuven
Registratie
feiten
Transfereren
activa
Stroomlijnen
processen
Contracten
Blockchain 1.0 (data)
Blockchain 2.0 (regels)
56
Applicaties: Transfereren Activa
Ticketten
.bitDomeinnamen
Auteursrechten
Bitcoin Monero Ethereum
Cryptomunten
Immateriële
activa
DiamantenWagensKadaster
Materiële
activa
57
Transfereren Activa
Transaction 23F
→
Transaction XP0
→ 9BG
Transaction 9BG
→ 23F
Hypotheekkantoor
(staatsinstelling)
De rechtmatige
eigenaar van
is .
De rechtmatige
eigenaar van
is .
Eigenaar 1 (Bob) Eigenaar 2 (Charlie)
De rechtmatige
eigenaar van
is .
enkel vereist bij
initiële registratie
Volledige historiek
op de blockchain
58
Transfereren Activa
Transaction 23F
→
Hypotheekkantoor
(staatsinstelling)
Eigenaar 1 (Bob) Eigenaar 2 (Charlie)
Geen notaris vereist
om fondsen tijdelijk in
bewaring te houden
Transaction 9BG
→ 23F
→
Transaction XP0
→ 9BG
→
Eigenaar 3 (Alice)
Transactie enkel geldig
indien ondertekend door
zowel als .
Extra regels mogelijk
(Vb. geldig bodemattest
of goedkeuring notaris)
Exact betaalde bedrag moet verborgen blijven
Blockchain Applicaties
59
Diploma
Alice
Master in
Lego Design
KU Leuven
Registratie
feiten
Transfereren
activa
Stroomlijnen
processen
Contracten
Blockchain 1.0
Blockchain 2.0 (smart contracts)
60
Permissionless Permissioned
Toegang & gebruik door hele wereld Extra laag voor toegangscontrole
Volledig transparant Meer controle op wie ziet wat (vb. audit)
Meestal erg onefficiënt Pakken efficiënter
Vertrouwen gedistribueerd Vertrouwen gedecentraliseerd
Cryptomunt vereist Cryptomunt niet steeds vereist
Vb. Verwerking medische voorschriften
- Enkel erkende artsen kunnen nieuwe
voorschriften uitgeven
- Enkel RIZIV bepaalt welke artsen erkend
- 5/7 mutualiteiten valideren transactie
Publiek Enterprise / Consortium
Stroomlijnen Processen
Banken delen blockchain
i.p.v. elk eigen database
Verhuis door burger 1 x
aangeven. Alle
belanghebbenden
geïnformeerd
(electriciteitsleverancier,
post, gemeenten, …)
Geboorte 1 x aangeven,
belang hebbenden
geïnformeerd: lokale
administratie, Kind en
Gezin, bank, verzekering
mutualiteit
Processen tussen overheidsinstellingen
Voordelen
- Geen centrale partij
- Robuust
- Elke stap gevalideerd / volgens regels
- Onwijzigbare audit trail
- Sequentieel → parallel
61
Robuuste Data Services
Apotheker
Apotheker Apotheker
Apotheker
62
Mutualiteit
Mutualiteit
Mutualiteit
Vb. Verzekerbaarheid: Is burger aangesloten bij een ziekenfonds
en heeft hij/zij recht op verhoogde tegemoetkoming?
Robuuste Data Services
Apotheker
Mutualiteit
Apotheker
Mutualiteit
Apotheker
Mutualiteit
Apotheker
Vb. Verzekerbaarheid: Is burger aangesloten bij een ziekenfonds
en heeft hij/zij recht op verhoogde tegemoetkoming?
63
Robuuste Data Services
Apotheker
Mutualiteit
Apotheker Apotheker
Mutualiteit
Apotheker
Geen high availability vereistIedereen steeds meest recente informatie
Mogelijks extra bescherming (cryptografie) vereist→ extra complexiteit
64
Mutualiteit
Vb. Verzekerbaarheid: Is burger aangesloten bij een ziekenfonds
en heeft hij/zij recht op verhoogde tegemoetkoming?
Permissioned Blockchain
65
https://www.hyperledger.org
Uitdagingen
=> Veel onderzoek om deze uitdagingen aan te pakken
Standaardisatie /
best practices
Sleutelbeheer &
bescherming end-
points
Paradigma shift
Privacy &
confidentialiteit
Gebaseerd op
aantal aannames
Schaalbaarheid
Veiligheid Andere
Volatiliteit
wisselkoersen
66
Conclusies
Het gaat over VERTROUWEN
• Veelbelovende technologie voor applicaties die
traditioneel vertrouwen vereisen in centrale partijen.
• Daarom wordt het als disruptief beschouwd
Geen oplossing voor alles
• Het is mogelijk met blockchain ≠ Blockchain is de
beste keuze
Uitdagingen
• Schaalbaarheid, sleutelbeheer, privacy, juridisch, …
• Veel onderzoek (MIT, KU Leuven, TU Delft, IBM, …)
67
68
Bitcoin
Blockchain 2.0
Smart Contracts
Blockchain 1.0
Applicaties
Agenda
Smart Contracts
Blockchain gaat over
Distributie van Vertrouwen
70
Blockchain Netwerk
Bescherming data Afdwingen regels
Smart Contracts (aka chaincode)
71
Regels zijn
- Hardgecodeerd in de
Bitcoin software
- Applicatiespecifiek
→ Niet flexibel
Code die uitgevoerd wordt op het blockchain netwerk, zonder centrale partij
Kan een blockchain netwerk ook op
een flexibele regels afdwingen voor
een diverse set van applicaties?
Smart Contracts (aka chaincode)
72
Regels zijn
- Hardgecodeerd in de
Bitcoin software
- Applicatiespecifiek
→ Niet flexibel
Code die uitgevoerd wordt op het blockchain netwerk, zonder centrale partij
- Smart contract = set
applicatiespecifieke regels
- Blockchain netwerk dwingt regels af,
zorgt voor correcte uitvoering
- Smart contracts kan cryptogeld
ontvangen, bijhouden en uitgeven
Verwerken
voorschriften
Verkiezingen Verzekeringen
Sterke toename potentieel blockchain technologie
Voorbeelden
73
http://dapps.ethercasts.com/
Smart locks (wagen, huis, …)
Blokkeren huurwaarborg
Verkiezingen
Veiling Crowdfunding
Afspraken tussen partijen die elkaar niet vertrouwen
Smart Contracts
74
Contract Auction{
function bid()
function end()
HighestBid: €
HighestBidder:
Beneficiary: Charlie
}
bid(), 20€
end()
bid(), 10€
20€
02010
Bob
Alice
Charlie
Alice
10€
Bob
Smart contract kan cryptogeld tijdelijk blokkeren
Niemand kan de correcte uitvoering beïnvloeden
Smart Contract Blockchain
75
contract c
Header
Block 51
c.bid(), 10€
Header
Block 52
Header
Block 53
c.bid(), 20€
Header
c.end()
Block 54
Publiceren contract
Oproepen functie
Netwerk
76
Miner
Validating (full) node
Light node
Blockchain
append-only
Geschiedenis van smart contracts
Smart contract
Wijzigbaar door
oproepen van functies
77
contract SimpleAuction
{
address public beneficiary;
uint public auctionStart;
uint public biddingTime;
address public highestBidder;
uint public highestBid;
bool ended;
event HighestBidIncreased(address bidder, uint amount);
event AuctionEnded(address winner, uint amount);
function SimpleAuction(uint _biddingTime, address _beneficiary)
{
beneficiary = _beneficiary;
auctionStart = now;
biddingTime = _biddingTime;
}
function bid() payable
Smart Contract Code
Disclaimer: Een Ethereum exploit wordt genegeerd voor de eenvoud
Interpretatie
Code voor meeste mensen moeilijker te begrijpen dan
menselijke taal
Stel, smart contracts meer en meer gebruikt in
huurcontracten, vastgoedtransacties, verzekeringen, …
Moeten juristen leren programmeren?
- Weinigen expert in twee domeinen
- Begrijpen smart contracts meerwaarde
http://solidity.readthedocs.io/en/develop/solidity-by-example.html
78
contract SimpleAuction
{
address public beneficiary;
uint public auctionStart;
uint public biddingTime;
address public highestBidder;
uint public highestBid;
bool ended;
event HighestBidIncreased(address bidder, uint amount);
event AuctionEnded(address winner, uint amount);
function SimpleAuction(uint _biddingTime, address _beneficiary)
{
beneficiary = _beneficiary;
auctionStart = now;
biddingTime = _biddingTime;
}
...
}
6060604052346100005760405161037c3803806
37c833981016040528080518201919050505b5b
3600060006101000a81548173fffffffffffffffffffffff
fffffffffffff021916908373ffffffffffffffffffffffffffffffff
ffff1602179055505b8060019080519060200190
805460018160011615610100020316600290049
600052602060002090601f01602090048101928
01f106100b557805160ff1916838001178555610
3565b828001600101855582156100e357918201
b828111156100e2578251825591602001919060
101906100c7565b5b50905061010891905b8082
1156101045760008160009055506001016100ec
5b5090565b50505b505b6102608061011c60003
6000f30060606040526000357c0100000000000
000000000000000000000000000000000000000
000900463ffffffff16806341c0e1b514610049578
3cfae321714610058575b610000565b34610000
6100566100ee565b005b3461000057610065610
82565b604051808060200182810382528381815
815260200191508051906020019080838360008
Ontwikkelomgeving
Programmeertaal: Solidity
Gecompileerde Ethereum
byte code op blockchain
Turing compleet (↔ Bitcoin scripts). Alles wat te berekenen is
met een computer kan ook in Solidity / Ethereum byte code
Doe dit NOOIT…
79
// Proof of Ownership contract
contract ProofOfOwnership{
mapping(bytes32=>bool) proofs;
//calculate and store the proof for a document
function notarize(string document){
var proof = sha256(document);
proofs[proof] = true;
}
// check if a document has been notarized
function checkDocument(string document) returns (bool){
var proof = calculateProof(document);
return proofs[proof];
}
}
Dit werd als ernstig voorbeeld gegeven op een seminarie door een expert
proofs: c0796844c3cbc… → true
5d5f4926be230… → true
c56d58202b0aa… → true
17f8f6699a8948… → true
…
document VOLLEDIG bewaard in transactie op blockchain
Orakels
80
En wat indien een orakel foute informatie aanlevert?
Contract uitvoering kan niet teruggedraaid worden
Soms heeft een smart contract gegevens nodig uit de reële wereld
Compensatie Verzekering
Vertrouwde leverancier van gegevens uit de reële wereld
Orakel roept telkens contractfunctie aan → Transactie op blockchain
The DAO
81
Investeerders transfereren Ether naar The
DAO and ontvangen daarvoor voting tokens
1
Contractors dienen investeringsvoorstellen in
2
Investeerders stemmen voor / tegen voorstel
3
Smartcontract transfereert al dan niet geld
4
Set van smart contracts gepubliceerd op Ethereum
Een aantal cijfers
$54m gelekt
naar aanvaller
18 000
investeerders
14% van
alle Ether
$168m
verzameld
Volledig transparant:
code, data & historiek public.
Iedereen kan audit doen
Bugs
- “Code is law”?
- Investeerders vertrouwen dat smart
contract doet wat ze verwachten
Ethereum Hard Fork
82
Decentralised Autonomous Organisation (DAO)
DAO verzamelde
$168M (Juni ‘16)
DAO bug exploit –
$54M in Ether lekt
weg (July ‘16)
Ethereum Hard Fork
83
Decentralised Autonomous Organisation (DAO)
DAO verzamelde
$168M (Juni ‘16)
DAO bug exploit –
$54M in Ether lekt
weg (July ‘16)
Verwachting/Hoop
(Steun voor) oude tak verdwijnt volledig
“The DAO bug exploit is nooit gebeurd”
Een deel van het verleden wordt collectief vergeten
Ethereum Hard Fork
84
Decentralised Autonomous Organisation (DAO)
DAO verzamelde
$168M (Juni ‘16)
DAO bug exploit –
$54M in Ether lekt
weg (July ‘16)
Realiteit: beide takken blijven naast elkaar
→ Replay attack mogelijk
Ethereum Hard Fork
85
Tamper-resistance
- Hoe onwijzigbaar is de blockchain?
Niet zo absoluut als beweerd wordt
- Nog aftakkingen (forks)?
Contract split
- Plots niet één, maar twee smart contracts. Welk is geldig?
- Vb. Eén veiling, met twee verschillende winnaars
DAO
86
Decentralised Autonomous Organisation
Algoritme (contract) dat gedistribueerd draait op een
blockchain netwerk en autonoom beslissingen neemt
Geen fysiek adres - Geen menselijke interventie
The DAO
Interessante case
Toekomst
Met artificiële intelligentie
Initial Coin Offerings (ICO)
87https://www.economist.com/news/finance-and-economics/21721425-it-may-also-spawn-valuable-innovations-market-initial-coin-offerings
Publicatie white paper
(Claims meestal niet geaudit)
ICO periode:
Investeerders kopen munten
Gewoonlijk aan vaste prijs
Meestal ongereguleerd
Business operationeel
Gebruik vereist munten
Munten verhandelbaar
Crowdfunding door lanceren nieuwe cryptomunt
Succesvol → meer vraag → hogere waarde
(beperkt aantal munten)
Manier om geld te verdienen aan gedistribueerde protocols
Gedecentraliseerd
platform voor
competitie online game
Gedecentraliseerde
cloud opslag
Conclusies
88
Afdwingen afspraken tussen partijen
die elkaar niet vertrouwen
Mechanisme waarmee ook technisch verplichtingen
afgedwongen kunnen worden
→ Minder afdwingingsproblemen/geschillen
Smart Vs. Traditioneel
- Geen vervanging traditionele contracten/wetgeving
wegens noodzaak menselijke interpretatie
- “Code ondergeschikt aan de wet” en niet “code is wet”
Automatisering & vereenvoudiging
- Vereenvoudiging bestaande processen (zoals huurwaarborg)
- Nieuwe mogelijkheden (V.b. DAO’s, ICO’s)
89
Bitcoin
Blockchain 2.0
Smart Contracts
Blockchain 1.0
Applicaties
Agenda
Conclusies
90
H Y P E H Y P EU i t d a g i n g e n
Erg jonge technologie, in volle ontwikkeling
91© Benjamin Reay
92
Dr. Kristof Verslype
@KristofVerslype
kristof@cryptov.net
be.linkedin.com/in/verslype
www.cryptov.net
Researcher, advisor & speaker
in crypto, privacy & blockchain tech
www.smals.be
@Smals_ICT
www.smalsresearch.be
@SmalsResearch
Contact

More Related Content

What's hot

Blockchain brainstorm 2040
Blockchain brainstorm 2040Blockchain brainstorm 2040
Blockchain brainstorm 2040Jan Ruijgrok
 
Waarom Blockchain een revolutie is voor de samenleving
Waarom Blockchain een revolutie is voor de samenlevingWaarom Blockchain een revolutie is voor de samenleving
Waarom Blockchain een revolutie is voor de samenlevingLykle de Vries
 
PDMA seminar blockchain - Nanning de Jong Berenschot 20171107
PDMA seminar blockchain - Nanning de Jong Berenschot 20171107PDMA seminar blockchain - Nanning de Jong Berenschot 20171107
PDMA seminar blockchain - Nanning de Jong Berenschot 20171107N de Jong
 
2018 01-19 nieuwjaarsbijeenkomst rba
2018 01-19 nieuwjaarsbijeenkomst rba2018 01-19 nieuwjaarsbijeenkomst rba
2018 01-19 nieuwjaarsbijeenkomst rbaLykle de Vries
 
Gemeentelijke Blockchain pilots - lessons learned - Nanning de Jong Berenscho...
Gemeentelijke Blockchain pilots - lessons learned - Nanning de Jong Berenscho...Gemeentelijke Blockchain pilots - lessons learned - Nanning de Jong Berenscho...
Gemeentelijke Blockchain pilots - lessons learned - Nanning de Jong Berenscho...N de Jong
 
Technology update: Blockchain Presentatie Aaron van Wirdum
Technology update: Blockchain Presentatie Aaron van WirdumTechnology update: Blockchain Presentatie Aaron van Wirdum
Technology update: Blockchain Presentatie Aaron van WirdumMedia Perspectives
 
Bitcoin, blockchain, distributed ledger, 10 februari 2016
Bitcoin, blockchain, distributed ledger, 10 februari 2016Bitcoin, blockchain, distributed ledger, 10 februari 2016
Bitcoin, blockchain, distributed ledger, 10 februari 2016Alphons Ranner
 
Blockchain by Sophie Vercruysse
Blockchain by Sophie VercruysseBlockchain by Sophie Vercruysse
Blockchain by Sophie VercruysseSophieVercruysse1
 
2017 09-09 - Blockchain @ Zaandam Valley (ah)
2017 09-09 - Blockchain @ Zaandam Valley (ah) 2017 09-09 - Blockchain @ Zaandam Valley (ah)
2017 09-09 - Blockchain @ Zaandam Valley (ah) Lykle de Vries
 
VUSO Steenwijk: KENNISMAKEN MET BITCOIN EN BLOKCHAIN
VUSO Steenwijk: KENNISMAKEN MET BITCOIN EN BLOKCHAINVUSO Steenwijk: KENNISMAKEN MET BITCOIN EN BLOKCHAIN
VUSO Steenwijk: KENNISMAKEN MET BITCOIN EN BLOKCHAINLykle de Vries
 
2017 05-18 people's academy blockchain
2017 05-18 people's academy blockchain 2017 05-18 people's academy blockchain
2017 05-18 people's academy blockchain Lykle de Vries
 
2018 03-15 qando food 4 thougth Blockchain voor Inkoop
2018 03-15 qando food 4 thougth Blockchain voor Inkoop2018 03-15 qando food 4 thougth Blockchain voor Inkoop
2018 03-15 qando food 4 thougth Blockchain voor InkoopLykle de Vries
 
Caesar blockchain whitepaper blockchain de hype voorbij v1.0 - online print
Caesar blockchain whitepaper   blockchain de hype voorbij v1.0 - online printCaesar blockchain whitepaper   blockchain de hype voorbij v1.0 - online print
Caesar blockchain whitepaper blockchain de hype voorbij v1.0 - online printRick Bouter
 
170928 fex - de geheimen van een praktische blockchain toepassing - valid
170928   fex - de geheimen van een praktische blockchain toepassing - valid170928   fex - de geheimen van een praktische blockchain toepassing - valid
170928 fex - de geheimen van een praktische blockchain toepassing - validFlevum
 
2018 01-12 Blockchain bij Schoenen-Zaken en The Smooth Brothers
2018 01-12 Blockchain bij Schoenen-Zaken en The Smooth Brothers2018 01-12 Blockchain bij Schoenen-Zaken en The Smooth Brothers
2018 01-12 Blockchain bij Schoenen-Zaken en The Smooth BrothersLykle de Vries
 

What's hot (20)

Blockchain brainstorm 2040
Blockchain brainstorm 2040Blockchain brainstorm 2040
Blockchain brainstorm 2040
 
Waarom Blockchain een revolutie is voor de samenleving
Waarom Blockchain een revolutie is voor de samenlevingWaarom Blockchain een revolutie is voor de samenleving
Waarom Blockchain een revolutie is voor de samenleving
 
PDMA seminar blockchain - Nanning de Jong Berenschot 20171107
PDMA seminar blockchain - Nanning de Jong Berenschot 20171107PDMA seminar blockchain - Nanning de Jong Berenschot 20171107
PDMA seminar blockchain - Nanning de Jong Berenschot 20171107
 
2018 01-19 nieuwjaarsbijeenkomst rba
2018 01-19 nieuwjaarsbijeenkomst rba2018 01-19 nieuwjaarsbijeenkomst rba
2018 01-19 nieuwjaarsbijeenkomst rba
 
Gemeentelijke Blockchain pilots - lessons learned - Nanning de Jong Berenscho...
Gemeentelijke Blockchain pilots - lessons learned - Nanning de Jong Berenscho...Gemeentelijke Blockchain pilots - lessons learned - Nanning de Jong Berenscho...
Gemeentelijke Blockchain pilots - lessons learned - Nanning de Jong Berenscho...
 
2017 10-04 becis
2017 10-04 becis2017 10-04 becis
2017 10-04 becis
 
Technology update: Blockchain Presentatie Aaron van Wirdum
Technology update: Blockchain Presentatie Aaron van WirdumTechnology update: Blockchain Presentatie Aaron van Wirdum
Technology update: Blockchain Presentatie Aaron van Wirdum
 
Bitcoin, blockchain, distributed ledger, 10 februari 2016
Bitcoin, blockchain, distributed ledger, 10 februari 2016Bitcoin, blockchain, distributed ledger, 10 februari 2016
Bitcoin, blockchain, distributed ledger, 10 februari 2016
 
Blockchain by Sophie Vercruysse
Blockchain by Sophie VercruysseBlockchain by Sophie Vercruysse
Blockchain by Sophie Vercruysse
 
Bitcoin bluffer of blijver
Bitcoin bluffer of blijverBitcoin bluffer of blijver
Bitcoin bluffer of blijver
 
2017 09-09 - Blockchain @ Zaandam Valley (ah)
2017 09-09 - Blockchain @ Zaandam Valley (ah) 2017 09-09 - Blockchain @ Zaandam Valley (ah)
2017 09-09 - Blockchain @ Zaandam Valley (ah)
 
VUSO Steenwijk: KENNISMAKEN MET BITCOIN EN BLOKCHAIN
VUSO Steenwijk: KENNISMAKEN MET BITCOIN EN BLOKCHAINVUSO Steenwijk: KENNISMAKEN MET BITCOIN EN BLOKCHAIN
VUSO Steenwijk: KENNISMAKEN MET BITCOIN EN BLOKCHAIN
 
2017 05-18 people's academy blockchain
2017 05-18 people's academy blockchain 2017 05-18 people's academy blockchain
2017 05-18 people's academy blockchain
 
Blokchain
BlokchainBlokchain
Blokchain
 
2018 03-15 qando food 4 thougth Blockchain voor Inkoop
2018 03-15 qando food 4 thougth Blockchain voor Inkoop2018 03-15 qando food 4 thougth Blockchain voor Inkoop
2018 03-15 qando food 4 thougth Blockchain voor Inkoop
 
Caesar blockchain whitepaper blockchain de hype voorbij v1.0 - online print
Caesar blockchain whitepaper   blockchain de hype voorbij v1.0 - online printCaesar blockchain whitepaper   blockchain de hype voorbij v1.0 - online print
Caesar blockchain whitepaper blockchain de hype voorbij v1.0 - online print
 
170928 fex - de geheimen van een praktische blockchain toepassing - valid
170928   fex - de geheimen van een praktische blockchain toepassing - valid170928   fex - de geheimen van een praktische blockchain toepassing - valid
170928 fex - de geheimen van een praktische blockchain toepassing - valid
 
Seminar Blockchain 12 juni 2018
Seminar Blockchain 12 juni 2018 Seminar Blockchain 12 juni 2018
Seminar Blockchain 12 juni 2018
 
2018 01-12 Blockchain bij Schoenen-Zaken en The Smooth Brothers
2018 01-12 Blockchain bij Schoenen-Zaken en The Smooth Brothers2018 01-12 Blockchain bij Schoenen-Zaken en The Smooth Brothers
2018 01-12 Blockchain bij Schoenen-Zaken en The Smooth Brothers
 
Block chain
Block chainBlock chain
Block chain
 

Viewers also liked

Blockchain, smart contracts - introduction
Blockchain, smart contracts - introductionBlockchain, smart contracts - introduction
Blockchain, smart contracts - introductionLukasz Jarmulowicz
 
HGF's usage of smart contracts on the ethereum blockchain
HGF's usage of smart contracts on the ethereum blockchainHGF's usage of smart contracts on the ethereum blockchain
HGF's usage of smart contracts on the ethereum blockchainTC Wu
 
BlockChain, Bitcoin and Smart Contracts - Oleg Kudrenko
BlockChain, Bitcoin and Smart Contracts - Oleg KudrenkoBlockChain, Bitcoin and Smart Contracts - Oleg Kudrenko
BlockChain, Bitcoin and Smart Contracts - Oleg KudrenkoOleg Kudrenko
 
Blockchain Smart Contracts - getting from hype to reality
Blockchain Smart Contracts - getting from hype to reality Blockchain Smart Contracts - getting from hype to reality
Blockchain Smart Contracts - getting from hype to reality Capgemini
 
Bitcoin and Blockchain Technology: An Introduction
Bitcoin and Blockchain Technology: An IntroductionBitcoin and Blockchain Technology: An Introduction
Bitcoin and Blockchain Technology: An IntroductionFerdinando Maria Ametrano
 
Bitcoin and Blockchain Technology: Hayek Money
Bitcoin and Blockchain Technology: Hayek MoneyBitcoin and Blockchain Technology: Hayek Money
Bitcoin and Blockchain Technology: Hayek MoneyFerdinando Maria Ametrano
 
Blockchain: The Information Technology of the Future
Blockchain: The Information Technology of the FutureBlockchain: The Information Technology of the Future
Blockchain: The Information Technology of the FutureMelanie Swan
 
Stefano Maestri - Blockchain and smart contracts, what they are and why you s...
Stefano Maestri - Blockchain and smart contracts, what they are and why you s...Stefano Maestri - Blockchain and smart contracts, what they are and why you s...
Stefano Maestri - Blockchain and smart contracts, what they are and why you s...Codemotion
 

Viewers also liked (8)

Blockchain, smart contracts - introduction
Blockchain, smart contracts - introductionBlockchain, smart contracts - introduction
Blockchain, smart contracts - introduction
 
HGF's usage of smart contracts on the ethereum blockchain
HGF's usage of smart contracts on the ethereum blockchainHGF's usage of smart contracts on the ethereum blockchain
HGF's usage of smart contracts on the ethereum blockchain
 
BlockChain, Bitcoin and Smart Contracts - Oleg Kudrenko
BlockChain, Bitcoin and Smart Contracts - Oleg KudrenkoBlockChain, Bitcoin and Smart Contracts - Oleg Kudrenko
BlockChain, Bitcoin and Smart Contracts - Oleg Kudrenko
 
Blockchain Smart Contracts - getting from hype to reality
Blockchain Smart Contracts - getting from hype to reality Blockchain Smart Contracts - getting from hype to reality
Blockchain Smart Contracts - getting from hype to reality
 
Bitcoin and Blockchain Technology: An Introduction
Bitcoin and Blockchain Technology: An IntroductionBitcoin and Blockchain Technology: An Introduction
Bitcoin and Blockchain Technology: An Introduction
 
Bitcoin and Blockchain Technology: Hayek Money
Bitcoin and Blockchain Technology: Hayek MoneyBitcoin and Blockchain Technology: Hayek Money
Bitcoin and Blockchain Technology: Hayek Money
 
Blockchain: The Information Technology of the Future
Blockchain: The Information Technology of the FutureBlockchain: The Information Technology of the Future
Blockchain: The Information Technology of the Future
 
Stefano Maestri - Blockchain and smart contracts, what they are and why you s...
Stefano Maestri - Blockchain and smart contracts, what they are and why you s...Stefano Maestri - Blockchain and smart contracts, what they are and why you s...
Stefano Maestri - Blockchain and smart contracts, what they are and why you s...
 

Similar to 20171003 blockchain and smart contracts sai 2017 kv

Kopen van Bitcoin en handelen in cryptocurrencies
Kopen van Bitcoin en handelen in cryptocurrenciesKopen van Bitcoin en handelen in cryptocurrencies
Kopen van Bitcoin en handelen in cryptocurrenciespetervanrijt
 
2017 01-26 schiphol thirstday blockchain
2017 01-26 schiphol thirstday blockchain2017 01-26 schiphol thirstday blockchain
2017 01-26 schiphol thirstday blockchainLykle de Vries
 
2017 05-31 meimaand matchmaand - blockchain
2017 05-31 meimaand matchmaand - blockchain2017 05-31 meimaand matchmaand - blockchain
2017 05-31 meimaand matchmaand - blockchainLykle de Vries
 
Over Bitcoin en Blockchain voor Becis alumni 20161007
Over Bitcoin en Blockchain voor Becis alumni 20161007Over Bitcoin en Blockchain voor Becis alumni 20161007
Over Bitcoin en Blockchain voor Becis alumni 20161007Lykle de Vries
 
Presentatie mining - Crypto Networking Night 11 jan '18
Presentatie mining - Crypto Networking Night 11 jan '18Presentatie mining - Crypto Networking Night 11 jan '18
Presentatie mining - Crypto Networking Night 11 jan '18YourCoach BVBA
 
Presentatie Blockchain
Presentatie BlockchainPresentatie Blockchain
Presentatie BlockchainEmiel Knepper
 
Is het een blockchain, of niet? tweakers meetup 2017 06-29
Is het een blockchain, of niet? tweakers meetup 2017 06-29Is het een blockchain, of niet? tweakers meetup 2017 06-29
Is het een blockchain, of niet? tweakers meetup 2017 06-29Lykle de Vries
 
Bitcoins: instappen of wegblijven ?
Bitcoins: instappen of wegblijven ?Bitcoins: instappen of wegblijven ?
Bitcoins: instappen of wegblijven ?Simon Lelieveldt
 
181023 fdc - presentatie blockchain, from proof of concept to real world so...
181023   fdc - presentatie blockchain, from proof of concept to real world so...181023   fdc - presentatie blockchain, from proof of concept to real world so...
181023 fdc - presentatie blockchain, from proof of concept to real world so...Flevum
 
Introductie Vincent Everts Dagvandecrypto.nl #dvc18 #dvdc presentatie
Introductie Vincent Everts Dagvandecrypto.nl #dvc18 #dvdc presentatieIntroductie Vincent Everts Dagvandecrypto.nl #dvc18 #dvdc presentatie
Introductie Vincent Everts Dagvandecrypto.nl #dvc18 #dvdc presentatieVincent Everts
 
Bitcoin, blockchain, distributed ledger, 10 februari 2016
Bitcoin, blockchain, distributed ledger, 10 februari 2016Bitcoin, blockchain, distributed ledger, 10 februari 2016
Bitcoin, blockchain, distributed ledger, 10 februari 2016Alphons Ranner
 
Umbraco apr11 en_v1.0_hc
Umbraco apr11 en_v1.0_hcUmbraco apr11 en_v1.0_hc
Umbraco apr11 en_v1.0_hcHenk van Cann
 
Blockchain voor marketeers - Marketing PREPday 2018
Blockchain voor marketeers  - Marketing PREPday 2018Blockchain voor marketeers  - Marketing PREPday 2018
Blockchain voor marketeers - Marketing PREPday 2018Digital Masters Academy
 
Blockchain en smart contracts #pbdag 8 2016 06-27
Blockchain en smart contracts #pbdag 8 2016 06-27Blockchain en smart contracts #pbdag 8 2016 06-27
Blockchain en smart contracts #pbdag 8 2016 06-27Lykle de Vries
 

Similar to 20171003 blockchain and smart contracts sai 2017 kv (15)

Kopen van Bitcoin en handelen in cryptocurrencies
Kopen van Bitcoin en handelen in cryptocurrenciesKopen van Bitcoin en handelen in cryptocurrencies
Kopen van Bitcoin en handelen in cryptocurrencies
 
2017 01-26 schiphol thirstday blockchain
2017 01-26 schiphol thirstday blockchain2017 01-26 schiphol thirstday blockchain
2017 01-26 schiphol thirstday blockchain
 
2017 05-31 meimaand matchmaand - blockchain
2017 05-31 meimaand matchmaand - blockchain2017 05-31 meimaand matchmaand - blockchain
2017 05-31 meimaand matchmaand - blockchain
 
Over Bitcoin en Blockchain voor Becis alumni 20161007
Over Bitcoin en Blockchain voor Becis alumni 20161007Over Bitcoin en Blockchain voor Becis alumni 20161007
Over Bitcoin en Blockchain voor Becis alumni 20161007
 
Presentatie mining - Crypto Networking Night 11 jan '18
Presentatie mining - Crypto Networking Night 11 jan '18Presentatie mining - Crypto Networking Night 11 jan '18
Presentatie mining - Crypto Networking Night 11 jan '18
 
Presentatie Blockchain
Presentatie BlockchainPresentatie Blockchain
Presentatie Blockchain
 
Is het een blockchain, of niet? tweakers meetup 2017 06-29
Is het een blockchain, of niet? tweakers meetup 2017 06-29Is het een blockchain, of niet? tweakers meetup 2017 06-29
Is het een blockchain, of niet? tweakers meetup 2017 06-29
 
Bitcoins: instappen of wegblijven ?
Bitcoins: instappen of wegblijven ?Bitcoins: instappen of wegblijven ?
Bitcoins: instappen of wegblijven ?
 
181023 fdc - presentatie blockchain, from proof of concept to real world so...
181023   fdc - presentatie blockchain, from proof of concept to real world so...181023   fdc - presentatie blockchain, from proof of concept to real world so...
181023 fdc - presentatie blockchain, from proof of concept to real world so...
 
Introductie Vincent Everts Dagvandecrypto.nl #dvc18 #dvdc presentatie
Introductie Vincent Everts Dagvandecrypto.nl #dvc18 #dvdc presentatieIntroductie Vincent Everts Dagvandecrypto.nl #dvc18 #dvdc presentatie
Introductie Vincent Everts Dagvandecrypto.nl #dvc18 #dvdc presentatie
 
Bitonic uv t_masterclass_v02
Bitonic uv t_masterclass_v02Bitonic uv t_masterclass_v02
Bitonic uv t_masterclass_v02
 
Bitcoin, blockchain, distributed ledger, 10 februari 2016
Bitcoin, blockchain, distributed ledger, 10 februari 2016Bitcoin, blockchain, distributed ledger, 10 februari 2016
Bitcoin, blockchain, distributed ledger, 10 februari 2016
 
Umbraco apr11 en_v1.0_hc
Umbraco apr11 en_v1.0_hcUmbraco apr11 en_v1.0_hc
Umbraco apr11 en_v1.0_hc
 
Blockchain voor marketeers - Marketing PREPday 2018
Blockchain voor marketeers  - Marketing PREPday 2018Blockchain voor marketeers  - Marketing PREPday 2018
Blockchain voor marketeers - Marketing PREPday 2018
 
Blockchain en smart contracts #pbdag 8 2016 06-27
Blockchain en smart contracts #pbdag 8 2016 06-27Blockchain en smart contracts #pbdag 8 2016 06-27
Blockchain en smart contracts #pbdag 8 2016 06-27
 

More from Smals

Wat zijn chatbots en waarvoor gebruiken we ze
Wat zijn chatbots en waarvoor gebruiken we zeWat zijn chatbots en waarvoor gebruiken we ze
Wat zijn chatbots en waarvoor gebruiken we zeSmals
 
Wat is augmented reality en waarvoor gebruiken we het nl
Wat is augmented reality en waarvoor gebruiken we het nlWat is augmented reality en waarvoor gebruiken we het nl
Wat is augmented reality en waarvoor gebruiken we het nlSmals
 
Named entity recognition hoe werkt het wat kunnen we er mee doen nl
Named entity recognition hoe werkt het wat kunnen we er mee doen nlNamed entity recognition hoe werkt het wat kunnen we er mee doen nl
Named entity recognition hoe werkt het wat kunnen we er mee doen nlSmals
 
Natural language generation nederlands
Natural language generation nederlandsNatural language generation nederlands
Natural language generation nederlandsSmals
 
Wat is ai en wat kan het nl
Wat is ai en wat kan het nlWat is ai en wat kan het nl
Wat is ai en wat kan het nlSmals
 
Realite augmentee
Realite augmenteeRealite augmentee
Realite augmenteeSmals
 
Internet des objets
Internet des objetsInternet des objets
Internet des objetsSmals
 
Chatbots comment ca marche a quoi ca sert
Chatbots comment ca marche a quoi ca sertChatbots comment ca marche a quoi ca sert
Chatbots comment ca marche a quoi ca sertSmals
 
Analyse predictive comment ca marche a quoi ca sert
Analyse predictive comment ca marche a quoi ca sertAnalyse predictive comment ca marche a quoi ca sert
Analyse predictive comment ca marche a quoi ca sertSmals
 
Traduction vocale quasi instantanee introduction
Traduction vocale quasi instantanee introductionTraduction vocale quasi instantanee introduction
Traduction vocale quasi instantanee introductionSmals
 
Automatisation des processus robotises introduction
Automatisation des processus robotises introductionAutomatisation des processus robotises introduction
Automatisation des processus robotises introductionSmals
 
Interfaces conversationnelle introduction
Interfaces conversationnelle introductionInterfaces conversationnelle introduction
Interfaces conversationnelle introductionSmals
 
Reconnaissance d'entites nommees introduction
Reconnaissance d'entites nommees introductionReconnaissance d'entites nommees introduction
Reconnaissance d'entites nommees introductionSmals
 
Generation automatique de textes
Generation automatique de textesGeneration automatique de textes
Generation automatique de textesSmals
 
Intelligence artificielle etroite introduction
Intelligence artificielle etroite introductionIntelligence artificielle etroite introduction
Intelligence artificielle etroite introductionSmals
 
Named entity recognition hoe werkt het wat kunnen we er mee doen
Named entity recognition hoe werkt het wat kunnen we er mee doenNamed entity recognition hoe werkt het wat kunnen we er mee doen
Named entity recognition hoe werkt het wat kunnen we er mee doenSmals
 
Real time voice translation handig maar hoe ver staat het
Real time voice translation   handig  maar hoe ver staat hetReal time voice translation   handig  maar hoe ver staat het
Real time voice translation handig maar hoe ver staat hetSmals
 
Wat is predictive analytics en waarvoor kun je het gebruiken
Wat is predictive analytics en waarvoor kun je het gebruikenWat is predictive analytics en waarvoor kun je het gebruiken
Wat is predictive analytics en waarvoor kun je het gebruikenSmals
 
Wat is robotic process automation en wat kun je er mee doen
Wat is robotic process automation en wat kun je er mee doenWat is robotic process automation en wat kun je er mee doen
Wat is robotic process automation en wat kun je er mee doenSmals
 
Exemples europeens comme source d inspiration
Exemples europeens comme source d inspirationExemples europeens comme source d inspiration
Exemples europeens comme source d inspirationSmals
 

More from Smals (20)

Wat zijn chatbots en waarvoor gebruiken we ze
Wat zijn chatbots en waarvoor gebruiken we zeWat zijn chatbots en waarvoor gebruiken we ze
Wat zijn chatbots en waarvoor gebruiken we ze
 
Wat is augmented reality en waarvoor gebruiken we het nl
Wat is augmented reality en waarvoor gebruiken we het nlWat is augmented reality en waarvoor gebruiken we het nl
Wat is augmented reality en waarvoor gebruiken we het nl
 
Named entity recognition hoe werkt het wat kunnen we er mee doen nl
Named entity recognition hoe werkt het wat kunnen we er mee doen nlNamed entity recognition hoe werkt het wat kunnen we er mee doen nl
Named entity recognition hoe werkt het wat kunnen we er mee doen nl
 
Natural language generation nederlands
Natural language generation nederlandsNatural language generation nederlands
Natural language generation nederlands
 
Wat is ai en wat kan het nl
Wat is ai en wat kan het nlWat is ai en wat kan het nl
Wat is ai en wat kan het nl
 
Realite augmentee
Realite augmenteeRealite augmentee
Realite augmentee
 
Internet des objets
Internet des objetsInternet des objets
Internet des objets
 
Chatbots comment ca marche a quoi ca sert
Chatbots comment ca marche a quoi ca sertChatbots comment ca marche a quoi ca sert
Chatbots comment ca marche a quoi ca sert
 
Analyse predictive comment ca marche a quoi ca sert
Analyse predictive comment ca marche a quoi ca sertAnalyse predictive comment ca marche a quoi ca sert
Analyse predictive comment ca marche a quoi ca sert
 
Traduction vocale quasi instantanee introduction
Traduction vocale quasi instantanee introductionTraduction vocale quasi instantanee introduction
Traduction vocale quasi instantanee introduction
 
Automatisation des processus robotises introduction
Automatisation des processus robotises introductionAutomatisation des processus robotises introduction
Automatisation des processus robotises introduction
 
Interfaces conversationnelle introduction
Interfaces conversationnelle introductionInterfaces conversationnelle introduction
Interfaces conversationnelle introduction
 
Reconnaissance d'entites nommees introduction
Reconnaissance d'entites nommees introductionReconnaissance d'entites nommees introduction
Reconnaissance d'entites nommees introduction
 
Generation automatique de textes
Generation automatique de textesGeneration automatique de textes
Generation automatique de textes
 
Intelligence artificielle etroite introduction
Intelligence artificielle etroite introductionIntelligence artificielle etroite introduction
Intelligence artificielle etroite introduction
 
Named entity recognition hoe werkt het wat kunnen we er mee doen
Named entity recognition hoe werkt het wat kunnen we er mee doenNamed entity recognition hoe werkt het wat kunnen we er mee doen
Named entity recognition hoe werkt het wat kunnen we er mee doen
 
Real time voice translation handig maar hoe ver staat het
Real time voice translation   handig  maar hoe ver staat hetReal time voice translation   handig  maar hoe ver staat het
Real time voice translation handig maar hoe ver staat het
 
Wat is predictive analytics en waarvoor kun je het gebruiken
Wat is predictive analytics en waarvoor kun je het gebruikenWat is predictive analytics en waarvoor kun je het gebruiken
Wat is predictive analytics en waarvoor kun je het gebruiken
 
Wat is robotic process automation en wat kun je er mee doen
Wat is robotic process automation en wat kun je er mee doenWat is robotic process automation en wat kun je er mee doen
Wat is robotic process automation en wat kun je er mee doen
 
Exemples europeens comme source d inspiration
Exemples europeens comme source d inspirationExemples europeens comme source d inspiration
Exemples europeens comme source d inspiration
 

20171003 blockchain and smart contracts sai 2017 kv

  • 1. Bitcoin, Blockchain & Smart Contracts I n t r o d u c t i e Kristof Verslype Smals Onderzoek (smalsresearch.be) www.cryptov.net
  • 5. 5http://uk.businessinsider.com/bitcoin-pizza-day-passes-2000-20-million-2017-5 Op 22 mei 2010 kocht een software ontwikkelaar 2 pizza’s voor 10 000 bitcoin. Vandaag zijn 10 000 bitcoins meer dan 40 miljoen dollar waard
  • 6. Bitcoin prijs 6 16 500 000 BTC in omloop  Totale waarde: ± 62 miljard $ Alle cryptomunten samen: ±120 miljard $
  • 8. Traditionele Internationale Transactie 8 Bob Alice Is dit mogelijk zonder vertrouwde partij? 1e gedistribueerde cryptomunt (2009) Schok doorheen de financiële wereld Snel aandacht voor Bitcoin/blockchain vanuit de financiële wereld
  • 9. H o e w e r k t h e t ? 9
  • 10. Idee 10 Transactions 5,1 BTC → 0,7 BTC → Transactions 5,1 BTC → 0,7 BTC → Transactions 5,1 BTC → 0,7 BTC → Transactions 5,1 BTC → 0,7 BTC → Ik transfereer 0,4 BTC naar Ok! Ok! Ok! 0,4 BTC → Bob Alice Charlie Dave 0,4 BTC → 0,4 BTC → 0,4 BTC →
  • 11. Idea 11 Transactions 5,1 BTC → 0,7 BTC → Transactions 5,1 BTC → 0,7 BTC → Transactions 5,1 BTC → 0,7 BTC → Transactions 5,1 BTC → 0,7 BTC → I transfer 0,4 BTC to . Ok! Ok! Ok! 0,4 BTC → Bob Alice Charlie Dave 0,4 BTC → 0,4 BTC → 0,4 BTC → Blockchain Atomisch Iedereen schrijft de transactie in zijn/haar append-only spreadsheet of niemand → Consensus mechanisme Geldig Enkel geldige transacties worden aanvaard door het netwerk Vb. Bob is eigenaar / heeft het geld niet reeds eerder gespendeerd Veilig en robuust Systeem blijft correct werken, zelfs indien deel participanten offline of kwaadaardig is Relatief snel Gedistribueerd
  • 12. Blockchain 12 Aan vaste frequentie nieuwe blokken gecreëerd met daarin de meest recente transacties De blockchain bevat alle transacties Transacties in de blockchain zijn onverwijderbaar Blockchain = aaneenschakeling van blokken, die transacties bevatten Vele entiteiten bezitten dezelfde kopie van de blockchain Block 51 Header Block 52 Header Block 53 Header Header Block 54 5,10 BTC → 0,70 BTC → Blockchain specifiek: 10 minutes in Bitcoin, 10 seconden in Ethereum,… 0,40 BTC →
  • 13. Idee 13 Transactions 5,1 BTC → 0,7 BTC → Transactions 5,1 BTC → 0,7 BTC → Transactions 5,1 BTC → 0,7 BTC → Transactions 5,1 BTC → 0,7 BTC → 0,4 BTC → Bob Alice Charlie Dave 0,4 BTC → 0,4 BTC → 0,4 BTC →
  • 14. Pseudoniemen & Sleutels 14 0,40 BTC → 0,40 BTC →Niet maar
  • 15. Blockchain 15 Block 51 Header Block 52 Header Block 53 Header Header Block 54 5,10 BTC → 0,70 BTC → 0,40 BTC → 1Nf311Qb8rLDk 1F1tAaz5x1HUX 3BcMuv1VJqm Bob Alice Charlie Dave
  • 16. Transacties 16 Header Block 51 Header Block 52 Header Block 53 Header Block 54 Mijn bitcoins zijn verspreid in de blockchain over meerdere transacties Transaction Z4R 0,01 BTC → Transaction 06D 12,6 BTC → Transaction 83F 1,2 BTC → Transaction YC0 0,8 BTC → 0,4 BTC → Output Addr BTC Z4R[0] 0,01 06D[0] 12,6 83F[0] 1,2 Output Addr BTC Z4R[0] 0,01 06D[0] 12,6 YCO[0] 0,8 YCO[1] 0,4
  • 17. I s h e t e f f i c i ë n t ? 17
  • 18. - Mining 18 ‘Miners’ gaan in competitie met elkaar om als eerste een rekenintensieve cryptografische puzzel te vinden (per blok).
  • 19. Bitcoin Mining 19 000000000000000002A386ADBAED073B0 2E66EE8A6A61FD83BA33DF434553671 Header Hash (fingerprint) function 669831a3180f1e77e9e3c904b76d6254 03924303118ff97acff2d8599b9dc91b bc9e7154309cdc81c5b6203b04531581 07e8d4c4cfe6eeb82fbaddefa345dc7b 015487950321 Eigenschappen - Moeilijk te vinden - Makkelijk te verifiëren - Aanpasbare moeilijkheidsgraad Winnaar beloond - Nieuwe bitcoins - Transactievergoedingen Disclaimer: in werkelijkheid wordt enkel de header gehasht, die een fingerprint bevat van de transacties
  • 20. Gelijktijdige Blokcreatie 20 Wat gebeurt er indien twee miners ongeveer gelijktijdig een geldig blok vinden Langste tak is diegene die aanvaard wordt Daarom best een aantal blokken wachten vooralleer transactie als verwerkt te beschouwen
  • 21. Ecologische Impact 21https://digiconomist.net/bitcoin-energy-consumption Elektriciteitsverbruik per land > 70% in China Zwakke milieuwetgeving → Goedkope elektriciteit (steenkool & waterkracht) Max. capaciteit 3 transacties / sec.
  • 22. I s h e t v e i l i g ? 22
  • 23. Veiligheid 23 Block 51 Header Block 52 Header 5,10 BTC → Header Block 53 0,70 BTC → Header Block 54 0,40 BTC → Header Block 53 0,70 BTC → Header Block 52 Header Block 54 0,40 BTC → Hoe ouder de transactie, hoe beter beschermd Want gevolgd door meer blokken waarvoor cryptografische puzzel opnieuw opgelost moet worden
  • 24. Veiligheid 24 Bitcoin is niet alleen een concept… Gebruiker Software Infrastructuur Verlies Diefstal Misbruik Informaticus James Howells verloor in 2013 7500 bitcoins door per ongeluk een oude harde schijf weg te gooien. Die harde schijf bevatte zijn geheime sleutel… Het bitcoin protocol is veilig zolang er geen participant meer dan 50% van de rekenkracht bezit
  • 25. Risico 25 Card Stop Afhaallimiet Terugbetaling Centrale entiteit → individuele gebruiker → Soms zijn we blij dat er een centrale partij is Omgaan met verlies
  • 26. Hardware Wallets 26 Sleutel fysiek beschermd met hardware token
  • 27. 27
  • 28. Online Wallets 28 Online wallet Beheert jouw bitcoins Volledig vertrouwen nodig Enkele gehackte online wallets… Klanten verloren geld
  • 30. I s h e t s c h a a l b a a r ? 30
  • 31. Blockchain.info 31 Schaalprobleem - Alle transacties op blockchain - 3 transacties / sec. ↔ Visa: 10 000 / sec. - En blockchain toch al 120GB groot Schaalprobleem - Alle transacties in blockchain - 3 transacties per seconde ↔ Visa: 65 000 / sec. - En reeds > 132 GB (Blockchain + UTXO, SegWit)) Bitcoin Blockchain Grootte blockchain.info/charts/blocks-size Mogelijke aanpassingen korte termijn - Deel transactie opgeslagen buiten block (SegWit) - Dubbele blokgrootte (SegWit2X) => capaciteit x3-4, opslagvereisten x3-4 Toekomst: Lightening network
  • 32. W a a r v o o r w o r d t h e t g e b r u i k t ? 32
  • 33. Bitcoin & Privacy 33 Fleder, Michael, Michael S. Kester, and Sudeep Pillai. MIT. "Bitcoin transaction graph analysis." arXiv preprint arXiv:1502.01657 (2015). Goldfeder, Steven, et al. "When the cookie meets the blockchain: Privacy risks of web payments via cryptocurrencies." arXiv preprint arXiv:1708.04748 (2017). “Geïdentificeerde” personen gelinkt aan “Op de meeste shop websites ontvangen third party trackers informatie over aankopen van gebruikers. Dit voor analyse- en reclamedoeleinden. Wij tonen aan dat indien de gebruiker betaalt met een cryptomunt, trackers typisch genoeg informatie hebben over de aankoop om de transactie op de blockchain uniek te identificeren, te linken aan de cookie van de gebruiker, en verder aan de echte identiteit van de gebruiker.” Graad van privacy op Bitcoin netwerk, maar verre van perfect
  • 34. 34
  • 35. 35
  • 36. 36
  • 37. Witwassen van Geld 37 Bob’s eBook Shop https://www.quora.com/How-bitcoin-can-be-used-for-money-laundering BobAlice Bitcoin Exchange Bitcoin network Real world Anoniem, geen authenticatie Geen gereguleerde entiteit betrokken Wettelijke onderzoek bemoeilijk doordat meerdere jurisdicties betrokken
  • 38. Waarvoor wordt Bitcoin gebruikt? 38 Onmogelijk om exacte getallen te vinden Illegale activiteiten Gokken Speculatie Bescherming tegen waardeverlies lokale munt (V.b. Venezuela) Internationale transacties Transacties voor kleine bedragen soms erg duur
  • 39. Waarvoor wordt Bitcoin gebruikt? 39 Onmogelijk om exacte getallen te vinden Illegale activiteiten Gokken Speculatie Internationale transacties Transacties voor kleine bedragen soms erg duur Bescherming tegen waardeverlies lokale munt (V.b. Venezuela) Zet je euro’s om in bitcoins en de overheid heeft er geen vat meer op → Democratisering van vluchtroutes
  • 40. Gemiddelde transactiekost in $ 40 Volatiel en onvoorspelbaar Gebaseerd op vraag & aanbod Gebaseerd op grootte (in bytes) van transactie en niet op bedrag
  • 42. Enkele Bedenkingen 42 Bitcoin is een eerste experiment • Niet perfect en dat mogen we ook niet verwachten • Gebruik van eenvoudige, oude crypto concepten (jaren ‘70) Blockchain = nieuwe technologie met potentieel • In het bijzonder bij samenwerking maar vertrouwensissues • Jonge technologie met uitdagingen en progressie Idee distributie vertrouwen m.b.v. technologie • “Alles dat met een vetrouwde autoriteit gedaan kan worden, kan ook zonder” - D. Boneh, crypto prof. @ Stanford • Niet enkel blockchain technologie
  • 45. 45 Blockchain Eigenschappen Inefficiënt / competitie Bitcoin eigenschappen Open voor iedereen Append-only Sleutels & Pseudoniemen Robuust Consensus mechanisme Algemene eigenschappen
  • 46. Blockchain gaat over Distributie van Vertrouwen 46 Blockchain Netwerk Bescherming data Afdwingen regels
  • 47. Data & Blockchain 47 Transaction 0,01 BTC → Vertrouwde entiteit Transaction Data Onwijzigbaar (integriteit) Onverwijderbaar (long-term) Tijdsstempel Eigenschappen van data in een blockchain TransparantAuthentiek → Toepassingen verschillend van cryptomunten met bestaande blockchain of met eigen blockchain Robuust (beschikbaarheid) Voor de eenvoud…
  • 48. Blockchain Applicaties 48 Diploma Alice Master in Lego Design KU Leuven Registratie feiten Transfereren activa Stroomlijnen processen Contracten Blockchain 1.0 (data) Blockchain 2.0 (regels)
  • 50. 50 Registratie Feiten Alice 9AF Werkgever Alice heeft geen blockchain kopie nodig In werkelijkheid gewoonlijk meer crypto (hashing, encryptie, pseudonymen) Transaction 9AF Diploma Alice Master in Lego Design KU Leuven Alice
  • 51. 51 Registratie Feiten Alice 9AF Werkgever Transaction 9AF Diploma Alice Master in Lego Design KU Leuven Diploma Alice Master in Lego Design KU Leuven Beste match met GDPR
  • 54. Identiteit 54© blockchainpilots.nl Andere (superieure?) technologieën: Anonieme credentials = Attribute-based credentials
  • 55. Blockchain Applicaties 55 Diploma Alice Master in Lego Design KU Leuven Registratie feiten Transfereren activa Stroomlijnen processen Contracten Blockchain 1.0 (data) Blockchain 2.0 (regels)
  • 56. 56 Applicaties: Transfereren Activa Ticketten .bitDomeinnamen Auteursrechten Bitcoin Monero Ethereum Cryptomunten Immateriële activa DiamantenWagensKadaster Materiële activa
  • 57. 57 Transfereren Activa Transaction 23F → Transaction XP0 → 9BG Transaction 9BG → 23F Hypotheekkantoor (staatsinstelling) De rechtmatige eigenaar van is . De rechtmatige eigenaar van is . Eigenaar 1 (Bob) Eigenaar 2 (Charlie) De rechtmatige eigenaar van is . enkel vereist bij initiële registratie Volledige historiek op de blockchain
  • 58. 58 Transfereren Activa Transaction 23F → Hypotheekkantoor (staatsinstelling) Eigenaar 1 (Bob) Eigenaar 2 (Charlie) Geen notaris vereist om fondsen tijdelijk in bewaring te houden Transaction 9BG → 23F → Transaction XP0 → 9BG → Eigenaar 3 (Alice) Transactie enkel geldig indien ondertekend door zowel als . Extra regels mogelijk (Vb. geldig bodemattest of goedkeuring notaris) Exact betaalde bedrag moet verborgen blijven
  • 59. Blockchain Applicaties 59 Diploma Alice Master in Lego Design KU Leuven Registratie feiten Transfereren activa Stroomlijnen processen Contracten Blockchain 1.0 Blockchain 2.0 (smart contracts)
  • 60. 60 Permissionless Permissioned Toegang & gebruik door hele wereld Extra laag voor toegangscontrole Volledig transparant Meer controle op wie ziet wat (vb. audit) Meestal erg onefficiënt Pakken efficiënter Vertrouwen gedistribueerd Vertrouwen gedecentraliseerd Cryptomunt vereist Cryptomunt niet steeds vereist Vb. Verwerking medische voorschriften - Enkel erkende artsen kunnen nieuwe voorschriften uitgeven - Enkel RIZIV bepaalt welke artsen erkend - 5/7 mutualiteiten valideren transactie Publiek Enterprise / Consortium
  • 61. Stroomlijnen Processen Banken delen blockchain i.p.v. elk eigen database Verhuis door burger 1 x aangeven. Alle belanghebbenden geïnformeerd (electriciteitsleverancier, post, gemeenten, …) Geboorte 1 x aangeven, belang hebbenden geïnformeerd: lokale administratie, Kind en Gezin, bank, verzekering mutualiteit Processen tussen overheidsinstellingen Voordelen - Geen centrale partij - Robuust - Elke stap gevalideerd / volgens regels - Onwijzigbare audit trail - Sequentieel → parallel 61
  • 62. Robuuste Data Services Apotheker Apotheker Apotheker Apotheker 62 Mutualiteit Mutualiteit Mutualiteit Vb. Verzekerbaarheid: Is burger aangesloten bij een ziekenfonds en heeft hij/zij recht op verhoogde tegemoetkoming?
  • 63. Robuuste Data Services Apotheker Mutualiteit Apotheker Mutualiteit Apotheker Mutualiteit Apotheker Vb. Verzekerbaarheid: Is burger aangesloten bij een ziekenfonds en heeft hij/zij recht op verhoogde tegemoetkoming? 63
  • 64. Robuuste Data Services Apotheker Mutualiteit Apotheker Apotheker Mutualiteit Apotheker Geen high availability vereistIedereen steeds meest recente informatie Mogelijks extra bescherming (cryptografie) vereist→ extra complexiteit 64 Mutualiteit Vb. Verzekerbaarheid: Is burger aangesloten bij een ziekenfonds en heeft hij/zij recht op verhoogde tegemoetkoming?
  • 66. Uitdagingen => Veel onderzoek om deze uitdagingen aan te pakken Standaardisatie / best practices Sleutelbeheer & bescherming end- points Paradigma shift Privacy & confidentialiteit Gebaseerd op aantal aannames Schaalbaarheid Veiligheid Andere Volatiliteit wisselkoersen 66
  • 67. Conclusies Het gaat over VERTROUWEN • Veelbelovende technologie voor applicaties die traditioneel vertrouwen vereisen in centrale partijen. • Daarom wordt het als disruptief beschouwd Geen oplossing voor alles • Het is mogelijk met blockchain ≠ Blockchain is de beste keuze Uitdagingen • Schaalbaarheid, sleutelbeheer, privacy, juridisch, … • Veel onderzoek (MIT, KU Leuven, TU Delft, IBM, …) 67
  • 70. Blockchain gaat over Distributie van Vertrouwen 70 Blockchain Netwerk Bescherming data Afdwingen regels
  • 71. Smart Contracts (aka chaincode) 71 Regels zijn - Hardgecodeerd in de Bitcoin software - Applicatiespecifiek → Niet flexibel Code die uitgevoerd wordt op het blockchain netwerk, zonder centrale partij Kan een blockchain netwerk ook op een flexibele regels afdwingen voor een diverse set van applicaties?
  • 72. Smart Contracts (aka chaincode) 72 Regels zijn - Hardgecodeerd in de Bitcoin software - Applicatiespecifiek → Niet flexibel Code die uitgevoerd wordt op het blockchain netwerk, zonder centrale partij - Smart contract = set applicatiespecifieke regels - Blockchain netwerk dwingt regels af, zorgt voor correcte uitvoering - Smart contracts kan cryptogeld ontvangen, bijhouden en uitgeven Verwerken voorschriften Verkiezingen Verzekeringen Sterke toename potentieel blockchain technologie
  • 73. Voorbeelden 73 http://dapps.ethercasts.com/ Smart locks (wagen, huis, …) Blokkeren huurwaarborg Verkiezingen Veiling Crowdfunding Afspraken tussen partijen die elkaar niet vertrouwen
  • 74. Smart Contracts 74 Contract Auction{ function bid() function end() HighestBid: € HighestBidder: Beneficiary: Charlie } bid(), 20€ end() bid(), 10€ 20€ 02010 Bob Alice Charlie Alice 10€ Bob Smart contract kan cryptogeld tijdelijk blokkeren Niemand kan de correcte uitvoering beïnvloeden
  • 75. Smart Contract Blockchain 75 contract c Header Block 51 c.bid(), 10€ Header Block 52 Header Block 53 c.bid(), 20€ Header c.end() Block 54 Publiceren contract Oproepen functie
  • 76. Netwerk 76 Miner Validating (full) node Light node Blockchain append-only Geschiedenis van smart contracts Smart contract Wijzigbaar door oproepen van functies
  • 77. 77 contract SimpleAuction { address public beneficiary; uint public auctionStart; uint public biddingTime; address public highestBidder; uint public highestBid; bool ended; event HighestBidIncreased(address bidder, uint amount); event AuctionEnded(address winner, uint amount); function SimpleAuction(uint _biddingTime, address _beneficiary) { beneficiary = _beneficiary; auctionStart = now; biddingTime = _biddingTime; } function bid() payable Smart Contract Code Disclaimer: Een Ethereum exploit wordt genegeerd voor de eenvoud Interpretatie Code voor meeste mensen moeilijker te begrijpen dan menselijke taal Stel, smart contracts meer en meer gebruikt in huurcontracten, vastgoedtransacties, verzekeringen, … Moeten juristen leren programmeren? - Weinigen expert in twee domeinen - Begrijpen smart contracts meerwaarde http://solidity.readthedocs.io/en/develop/solidity-by-example.html
  • 78. 78 contract SimpleAuction { address public beneficiary; uint public auctionStart; uint public biddingTime; address public highestBidder; uint public highestBid; bool ended; event HighestBidIncreased(address bidder, uint amount); event AuctionEnded(address winner, uint amount); function SimpleAuction(uint _biddingTime, address _beneficiary) { beneficiary = _beneficiary; auctionStart = now; biddingTime = _biddingTime; } ... } 6060604052346100005760405161037c3803806 37c833981016040528080518201919050505b5b 3600060006101000a81548173fffffffffffffffffffffff fffffffffffff021916908373ffffffffffffffffffffffffffffffff ffff1602179055505b8060019080519060200190 805460018160011615610100020316600290049 600052602060002090601f01602090048101928 01f106100b557805160ff1916838001178555610 3565b828001600101855582156100e357918201 b828111156100e2578251825591602001919060 101906100c7565b5b50905061010891905b8082 1156101045760008160009055506001016100ec 5b5090565b50505b505b6102608061011c60003 6000f30060606040526000357c0100000000000 000000000000000000000000000000000000000 000900463ffffffff16806341c0e1b514610049578 3cfae321714610058575b610000565b34610000 6100566100ee565b005b3461000057610065610 82565b604051808060200182810382528381815 815260200191508051906020019080838360008 Ontwikkelomgeving Programmeertaal: Solidity Gecompileerde Ethereum byte code op blockchain Turing compleet (↔ Bitcoin scripts). Alles wat te berekenen is met een computer kan ook in Solidity / Ethereum byte code
  • 79. Doe dit NOOIT… 79 // Proof of Ownership contract contract ProofOfOwnership{ mapping(bytes32=>bool) proofs; //calculate and store the proof for a document function notarize(string document){ var proof = sha256(document); proofs[proof] = true; } // check if a document has been notarized function checkDocument(string document) returns (bool){ var proof = calculateProof(document); return proofs[proof]; } } Dit werd als ernstig voorbeeld gegeven op een seminarie door een expert proofs: c0796844c3cbc… → true 5d5f4926be230… → true c56d58202b0aa… → true 17f8f6699a8948… → true … document VOLLEDIG bewaard in transactie op blockchain
  • 80. Orakels 80 En wat indien een orakel foute informatie aanlevert? Contract uitvoering kan niet teruggedraaid worden Soms heeft een smart contract gegevens nodig uit de reële wereld Compensatie Verzekering Vertrouwde leverancier van gegevens uit de reële wereld Orakel roept telkens contractfunctie aan → Transactie op blockchain
  • 81. The DAO 81 Investeerders transfereren Ether naar The DAO and ontvangen daarvoor voting tokens 1 Contractors dienen investeringsvoorstellen in 2 Investeerders stemmen voor / tegen voorstel 3 Smartcontract transfereert al dan niet geld 4 Set van smart contracts gepubliceerd op Ethereum Een aantal cijfers $54m gelekt naar aanvaller 18 000 investeerders 14% van alle Ether $168m verzameld Volledig transparant: code, data & historiek public. Iedereen kan audit doen Bugs - “Code is law”? - Investeerders vertrouwen dat smart contract doet wat ze verwachten
  • 82. Ethereum Hard Fork 82 Decentralised Autonomous Organisation (DAO) DAO verzamelde $168M (Juni ‘16) DAO bug exploit – $54M in Ether lekt weg (July ‘16)
  • 83. Ethereum Hard Fork 83 Decentralised Autonomous Organisation (DAO) DAO verzamelde $168M (Juni ‘16) DAO bug exploit – $54M in Ether lekt weg (July ‘16) Verwachting/Hoop (Steun voor) oude tak verdwijnt volledig “The DAO bug exploit is nooit gebeurd” Een deel van het verleden wordt collectief vergeten
  • 84. Ethereum Hard Fork 84 Decentralised Autonomous Organisation (DAO) DAO verzamelde $168M (Juni ‘16) DAO bug exploit – $54M in Ether lekt weg (July ‘16) Realiteit: beide takken blijven naast elkaar → Replay attack mogelijk
  • 85. Ethereum Hard Fork 85 Tamper-resistance - Hoe onwijzigbaar is de blockchain? Niet zo absoluut als beweerd wordt - Nog aftakkingen (forks)? Contract split - Plots niet één, maar twee smart contracts. Welk is geldig? - Vb. Eén veiling, met twee verschillende winnaars
  • 86. DAO 86 Decentralised Autonomous Organisation Algoritme (contract) dat gedistribueerd draait op een blockchain netwerk en autonoom beslissingen neemt Geen fysiek adres - Geen menselijke interventie The DAO Interessante case Toekomst Met artificiële intelligentie
  • 87. Initial Coin Offerings (ICO) 87https://www.economist.com/news/finance-and-economics/21721425-it-may-also-spawn-valuable-innovations-market-initial-coin-offerings Publicatie white paper (Claims meestal niet geaudit) ICO periode: Investeerders kopen munten Gewoonlijk aan vaste prijs Meestal ongereguleerd Business operationeel Gebruik vereist munten Munten verhandelbaar Crowdfunding door lanceren nieuwe cryptomunt Succesvol → meer vraag → hogere waarde (beperkt aantal munten) Manier om geld te verdienen aan gedistribueerde protocols Gedecentraliseerd platform voor competitie online game Gedecentraliseerde cloud opslag
  • 88. Conclusies 88 Afdwingen afspraken tussen partijen die elkaar niet vertrouwen Mechanisme waarmee ook technisch verplichtingen afgedwongen kunnen worden → Minder afdwingingsproblemen/geschillen Smart Vs. Traditioneel - Geen vervanging traditionele contracten/wetgeving wegens noodzaak menselijke interpretatie - “Code ondergeschikt aan de wet” en niet “code is wet” Automatisering & vereenvoudiging - Vereenvoudiging bestaande processen (zoals huurwaarborg) - Nieuwe mogelijkheden (V.b. DAO’s, ICO’s)
  • 90. Conclusies 90 H Y P E H Y P EU i t d a g i n g e n Erg jonge technologie, in volle ontwikkeling
  • 92. 92 Dr. Kristof Verslype @KristofVerslype kristof@cryptov.net be.linkedin.com/in/verslype www.cryptov.net Researcher, advisor & speaker in crypto, privacy & blockchain tech www.smals.be @Smals_ICT www.smalsresearch.be @SmalsResearch Contact