Wat zijn smart contracts? De contracten op de blockchain

smart contracts

Smart contracts is een veelgebruikte term in de crypto wereld. Maar de term is al bedacht voordat Bitcoin überhaupt bestond. De term is voor het eerst genoemd en bedacht door Nick Szabo in 1994.

Smart contracts lijken erg op de alledaagse contracten zoals wij die kennen. Op de ‘normale’ contracten staan vaak voorwaarden en regels, maar ook wat hier tegenover staat. Smart contracts zijn nagenoeg hetzelfde, met een aantal belangrijke verschillen.

Wat zijn smart contracts?

Smart contracts of slimme contracten zijn kleine computer programmaatjes die worden opgeslagen in de blockchain. Smart contracts vertaling eigenlijk zakelijke logica naar code. En deze smart contracts hebben drie duidelijke functies:

  • Het opslaan van regels/voorwaarden
  • Het verifiëren van deze regels/voorwaarden
  • Het zelfstandig uitvoeren van de regels/voorwaarden

Een voorbeeld van hoe een smart contract zou kunnen werken is bijvoorbeeld kickstarter. Kickstarter is een organisatie waar mensen projecten aan kunnen maken. Consumenten kunnen geld doneren voor dit project en zodra het beoogde bedrag binnen is krijgt het project dit uitgekeerd.

In dit geval is kickstarter een tussenpersoon voor deze handeling. En het distribueren van het geld is volledig afhankelijk van kickstarter.

Maar met smart contracts zou dit zelfstandig uitgevoerd kunnen worden. Een regel in dit slimme contract zou bijvoorbeeld kunnen zijn dat er €1000 opgehaald moet worden. Op het moment dat aan deze voorwaarde voldaan is wordt door de smart contract automatisch het project gesloten en het geld uitgedeeld aan de mensen achter het project.

De tussenpersoon is in dit geval volledig weggevallen. Door middel van een smart contract is het niet meer nodig om te vertrouwen op een tussenpersoon. Het is mogelijk om zelf de voorwaarden te bepalen en op het moment dat aan alle voorwaarden is voldaan voert het smart contract deze voorwaarden automatisch zelf uit. Aan deze uitvoering komt geen menselijke handeling meer te pas.

Voorbeeld smart contracts

Een ander voorbeeld van de werking van een smart contract is de vergelijking met een drinkautomaat.

Een drinkautomaat wordt ergens neergezet en werkt volledig op zichzelf. In deze drinkautomaat zijn regels geprogrammeerd. Bijvoorbeeld dat een blikje cola €2 kost.

Op het moment dat ik mijn €2 in de automaat gooi, raadpleegt de automaat zijn regels. Een regel is hierbij: knop A op de automaat = cola. Een andere regel is: cola = €2.

De automaat gaat nu kijken of aan alle voorwaarden is voldaan. Ja, er is €2 in de automaat gegooid. Ja, er is op knop A gedrukt. Omdat nu aan alle voorwaarden voldaan is gaat de automaat deze regels automatisch en zonder tussenkomst van iemand anders uitvoeren. Dit betekent dat de automaat het blikje cola zal vrijgeven.

Dit is in feite ook hoe een smart contract werkt. Het contract checkt eerst alle regels en verifieert de voorwaarden. Klopt alles? Dan zal het smart contract uitgevoerd worden.

Toepassingen van smart contracts

Met het bovenstaande voorbeeld in het achterhoofd zijn er enorm veel toepassingen te bedenken die wij zouden kunnen gebruiken.

Een van de bekendste voorbeelden is misschien wel de ICO. Dit is een manier van fondsenwerving voor start ups in de Bitcoin wereld. Ze bieden een nog niet bestaand product of token aan in ruil voor bestaande crypto, zoals bijvoorbeeld Ethereum. Ze doen de belofte om in ruil voor de Ethereum jouw een gedeelte van de nieuwe token toe te sturen zodra dit ontwikkeld is.

Met behulp van Smart contracts kan dit volledig geautomatiseerd worden. Regel 1: 1 ETH = 500 Nieuwe Tokens. Op het moment dat jij dan 1 ETH overmaakt naar het daarvoor bestemde adres zal de smart contract noteren dat jij jouw gedeelte van het contract nagekomen bent.

Regel 2 kan zijn dat er 500 nieuwe tokens gestort zullen worden op jouw adres op de eerst volgende 1 januari als aan regel 1 is voldaan.

Heb jij aan regel 1 voldaan? Dan ziet het smart contract dit. Zijn er genoeg nieuwe tokens beschikbaar, dan zal het smart contract jou dit automatisch overmaken op de eerst volgende 1 januari.

Maar staan er niet genoeg nieuwe tokens op de balans op het moment dat het smart contract uitgevoerd moet worden? Dan ziet het smart contract dit ook en zal het jouw je ETH terugsturen. Er is namelijk wel voldaan aan regel 1, maar niet aan regel 2 waardoor het contract ongeldig is. Ook hierbij is het vertrouwen ingeprogrammeerd en ben je niet meer afhankelijk van die tussenpersoon die voor jouw de transactie hoort te regelen.

smart contracts

Toepassing smart contract in het ziekenhuis

En zo zijn er nog tal van andere voorbeelden te bedenken waar wij baat bij kunnen hebben. Zo is een ander voorbeeld die van een orgaan transplantatie.

Op dit moment kan het soms jaren duren voordat er een geschikte donor is gevonden. Dit heeft er mee te maken dat het donor orgaan moet matchen met de patiënt. Maar ook de geografische afstand is soms een probleem.

Wat toegestaan is is dat er geruild mag worden met organen. Persoon A heeft iemand gevonden die een orgaan wil afstaan, maar ze matchen niet. Persoon B zit in dezelfde situatie. Het is dan mogelijk om een wissel te doen, zodat persoon A gebruik kan maken van orgaan donor B en andersom.

Alleen het logistieke verhaal om dit te faciliteren is erg moeilijk. Met smart contracts zou de connectie tussen geschikte donoren en patiënten veel sneller gelegd kunnen worden. Een regel is het betreffende orgaan, een andere regel is bijvoorbeeld de bloedgroep van de patiënt en alle andere belangrijke eigenschappen waaraan de donor moet voldoen.

Een smart contract kan dan volledig automatisch op zoek gaan naar geschikte donoren en hiervan bericht doen als er een match is gevonden. Zo zou in theorie het doneren van organen een stuk soepeler kunnen verlopen.

Ethereum en smart contracts

Sinds de opkomst van Bitcoin wordt er ook steeds vaker geëxperimenteerd met smart contracts. De ene blockchain is hier beter voor ingericht dan de andere.

Ethereum is een voorbeeld van een project in de crypto wereld dat smart contracts volledig omarmt heeft. Het project is zelfs specifiek bedacht en ontwikkeld om smart contracts op te draaien. Er is zelfs een volledig nieuwe programmeertaal voor ontwikkeld, namelijk Solidity.

Conclusie

Smart contracts zijn een erg interessante ontwikkeling. En naar mijn idee zullen we hier in de toekomst nog veel meer over horen. De toepassingen zijn oneindig en daarom zal het waarschijnlijk op de achtergrond bij veel processen gebruikt worden. Het zorgt ervoor dat vertrouwen in een tussenpersoon niet meer nodig is. De smart contracts faciliteren het vertrouwen. Daarnaast zal het er ook voor zorgen dat veel processen geautomatiseerd kunnen worden.