Hoe werk je met contracten (smart contracts) op een blockchain?

Gepubliceerd op 10 november 2017
Hoe werk je met contracten (smart contracts) op een blockchain?

In mijn vorige blog over blockchain heb ik jullie uitgelegd hoe een blockchain transacties mogelijk maakt tussen personen, zonder dat daarbij vertrouwen in de tegenpartij nodig is. Met deze blog ga ik in op een ander onderdeel van blockchain. Dit is een veelbelovend onderdeel van deze technologie, namelijk de zogeheten smart contracts.

Een smart contract bestaat uit voorwaarden die aan transacties verbonden zijn en die zijn vastgelegd in een code. Het is dus een soort computerprogramma dat de regels die je met elkaar afspreekt controleert en uitvoert. In het dagelijks leven werken we veel met contracten. We stellen ze op wanneer we niet helemaal zeker weten of we de tegenpartij kunnen vertrouwen. Wanneer één van de partijen na afloop niet tevreden is over de uitvoering van een contract, kan een rechtbank bepalen wie er in zijn recht staat. In een smart contract kun je afspraken, die normaal gesproken op papier worden gezet, vastleggen in een code op een blockchain. Vervolgens kun je het contract zo programmeren dat de regels die je met elkaar bepaalt automatisch worden uitgevoerd.

Een smart contract heeft drie belangrijke eigenschappen. Ten eerste kan een contract autonoom werken. Dit betekent dat wanneer er afspraken worden vastgelegd in een smart contract, hier niemand meer aan te pas hoeft te komen om ervoor te zorgen dat het gecontroleerd en nageleefd wordt. Een smart contract is in deze zin een soort rechtbank die continu online is, maar waarbij geen hoger beroep mogelijk is wanneer je het niet eens bent met een uitspraak.

Ten tweede is een smart contract volledig gedecentraliseerd. Omdat het contract op de blockchain wordt geregistreerd, betekent dit dat het wordt opgeslagen door iedere deelnemer in het blockchainnetwerk. Alle deelnemers kunnen er daardoor op toezien dat de voorwaarden die in de code zijn opgenomen worden nageleefd. Hierdoor is er geen onafhankelijke derde partij nodig die het contract in bewaring heeft en controleert of het wordt nageleefd.

De laatste belangrijke eigenschap van een smart contract is dat het gebruik maakt van een externe objectieve bron. Een smart contract heeft namelijk een objectieve externe databron nodig om op basis daarvan te beoordelen of aan de afspraken is voldaan. Vervolgens kan op basis van deze databron bepaald worden welke acties er genomen moeten worden. Wanneer je bijvoorbeeld een weddenschap hebt met een vriend of vriendin over de uitslag van Ajax vs. Feyenoord, dan kan een externe databron in dat geval een website zijn waarop alle voetbaluitslagen worden gepubliceerd.

Een smart contract kan in de praktijk voor verschillende situaties een oplossing bieden, bijvoorbeeld op het gebied van verzekeringen. Stel je wilt een openluchtfestival organiseren. Aangezien het festival in de open lucht plaatsvindt, kan het alleen doorgaan als het droog is. Omdat het weer moeilijk te voorspellen is, is het mogelijk om hiervoor een verzekering af te sluiten op een blockchain. De premie van de verzekering kan afhankelijk zijn van de weersvoorspelling van de betreffende locatie. Met behulp van smart contracts in combinatie met een externe objectieve bron, zoals een site voor weersvoorspellingen, kan automatisch worden bepaald of het op de dag van het festival regent. Mocht het gaan regenen op de datum van het festival dan keert de verzekering een vergoeding uit. Smart, toch?

Sjaak Schokker

Wij maken tijd

  • De zaken goed op een rij hebben
  • Grip op processen krijgen
  • Betere balans tussen leven en werken
  • Wij maken tijd door te bentaceren!

Alles in de cloud

bentaceraapp

Alles op één plek: de Bentacera cloud!

Meer weten?