Slimme toeleveringsketens met behulp van slimme contracten
Een voordeel van blockchain is onder meer de mogelijkheid om gebruik te maken van de kracht van slimme contracten.
Wat is een slim contract?
Hoewel de term 'smart contract' klinkt als een juridisch instrument, is een smart contract in feite een computerprogramma dat een taak uitvoert wanneer het wordt geactiveerd door een vooraf bepaalde gebeurtenis. Smart contracts staan op de blockchain, die de voorwaarden van het smart contract verwerkt, waardoor het smart contract automatisch de gecodeerde taak kan uitvoeren wanneer de triggerende gebeurtenis plaatsvindt.
Nick Szabo, een computerwetenschapper en cryptograaf die de term 'smart contract' bedacht, vergelijkt een smart contract met een automaat.1 Een consument steekt geld in een automaat (d.w.z. voldoet aan de voorwaarde van het contract) en de automaat geeft automatisch het product af (d.w.z. voldoet aan de voorwaarden van het 'contract').
Oracles
Om de automatische uitvoering van een functie te activeren, maakt het slimme contract gebruik van 'orakels' om informatie van buitenaf te ontvangen.
Inkomende versus uitgaande orakels
Een orakel kan gegevens uit de buitenwereld leveren voor gebruik door het slimme contract op de blockchain (een 'inkomend orakel') of slimme contracten in staat stellen gegevens naar de buitenwereld te sturen (een 'uitgaand orakel'). Een voorbeeld van het laatste is een IoT-slot dat als uitgaand orakel fungeert wanneer het slimme contract het slot automatisch ontgrendelt als een partij een bepaalde betaling via de blockchain verricht.
Soorten orakels
Soorten orakels zijn onder andere hardware, software en mensen:
- Software-orakels. Software fungeert als een orakel door slimme contracten te koppelen aan online gegevensbronnen, zoals temperatuur, grondstofprijzen en transportvertragingen.
- Hardware-orakels. Hardware-orakels omvatten apparatuur die informatie uit de echte wereld doorgeeft aan het slimme contract.RFID-sensoren kunnen bijvoorbeeld veranderingen in de omgeving detecteren die gekoppeld zijn aan blockchain om een slim contract te activeren.
- Menselijke orakels. Mensen fungeren als orakels wanneer ze real-world informatie verstrekken aan een smart contract, vaak met cryptografie om ervoor te zorgen dat de juiste persoon de informatie verstrekt. Een andere menselijke benadering van orakels maakt gebruik van een consensusprotocol, wat betekent dat verschillende mensen stemmen over de input die aan het orakel wordt verstrekt. In elk geval brengt het gebruik van een menselijk orakel het risico van menselijke fouten met zich mee. Een partij kan er niettemin voor kiezen om een menselijk orakel te gebruiken wanneer een beslissing subjectiviteit vereist of wanneer de aard van de triggerende gebeurtenis continue monitoring bemoeilijkt.

Om het vertrouwen in het orakelsysteem te versterken, kunnen leden van de toeleveringsketen een combinatie van orakels gebruiken voor hetzelfde slimme contract.
Voorbeelden van slimme contracten voor de toeleveringsketen
In de toeleveringsketen zijn slimme contracten vooral handig voor het vrijgeven van betalingen, het registreren van grootboekposten en het signaleren van de noodzaak van handmatige interventie.
- Betalingen vrijgeven. Eenpartij kan een slim contract gebruiken om betalingen automatisch vrij te geven wanneer aan een voorwaarde is voldaan. Twee partijen, bijvoorbeeld een fabrikant en een leverancier, kunnen digitale portemonnees en een slim contract opzetten zodat de fabrikant de leverancier kan betalen voor de aankoop van goederen. Nadat de fabrikant de goederen heeft geïnspecteerd en geaccepteerd, zal het slimme contract automatisch cryptovaluta van de digitale portemonnee van de fabrikant naar de digitale portemonnee van de leverancier overmaken om de betaling te effectueren.
- Boekingen in het grootboek vastleggen. Een partij kan een slim contract opstellen om gegevens in een blockchain-grootboek vast te leggen als een bepaalde gebeurtenis zich wel of niet voordoet. Als een IoT-apparaat bijvoorbeeld detecteert dat een container tijdens het transport wordt geopend, kan een slim contract deze informatie automatisch vastleggen. Een partij kan een dergelijke monitoring bijzonder nuttig vinden voor goederen die een strikte bewakingsketen vereisen, zoals bij het vervoer van geneesmiddelen.
- Het signaleren van de noodzaak van handmatige interventie. Slimme contracten zijn ook nuttig om te signaleren wanneer er zich een gebeurtenis voordoet die handmatige interventie vereist. Voor temperatuurgevoelige producten kan een slim contract dat gekoppeld is aan temperatuurmonitoren bijvoorbeeld alle betrokken partijen waarschuwen wanneer de temperatuur buiten het toegestane bereik komt. Zo kunnen de partijen onmiddellijk actie ondernemen om de temperatuur te corrigeren, onderzoek doen naar de oorzaak van de temperatuurafwijking en, indien nodig, de betrokken producten (en alleen de betrokken producten) uit de handel halen.
Wanneer is een slim contract een 'contract' vanuit juridisch perspectief?
Een slim contract kan een wettelijk contract vormen als het de elementen van een geldig aanbod en aanvaarding bevat, evenals een adequate tegenprestatie. De algemene beginselen van het contractenrecht definiëren een aanbod als een blijk van bereidheid om een overeenkomst aan te gaan2 en aanvaarding als een overeenkomst met dat aanbod3 terwijl tegenprestatie verwijst naar iets van waarde dat door de contractpartijen wordt uitgewisseld.4
Om een smart contract als een juridisch bindend contract voor de verkoop van goederen te kunnen beschouwen, moet het contract bovendien voldoen aan de verschillende vereisten van artikel 2 van de Uniform Commercial Code (UCC), waaronder de vereisten inzake fraude en de vereiste dat het contract een hoeveelheid vermeldt om afdwingbaar te zijn.5 Beoefenaars zullen per geval moeten beoordelen of een slim contract aan deze elementen voldoet en dus een bindend juridisch contract voor de verkoop van goederen vormt.
De Uniform Law Commission en het American Law Institute hebben een commissie voor uniforme handelswetgeving en opkomende technologieën opgericht.6 om de UCC te bestuderen en te evalueren in de context van "onder andere gedistribueerde grootboektechnologie, virtuele valuta, elektronische wissels en promessen, andere digitale activa, betalingen en gebundelde transacties", en de Uniform Law Commission heeft een memorandum met kwesties gepubliceerd7 waarin deze onderwerpen worden besproken. Hoewel slimme contracten deel uitmaakten van de discussie, hebben de Uniform Law Commission en het American Law Institute geen formele evaluatie van slimme contracten uitgevoerd, waardoor er ruimte blijft voor duidelijkere richtlijnen in de toekomst over de vraag of een slim contract gelijkstaat aan een wettelijk contract.
Slimme contracten versus slimme juridische contracten
Slimme contracten mogen niet worden verward met slimme juridische contracten. Terwijl een slim contract een computerprogramma is dat is geprogrammeerd om een bepaald resultaat te bewerkstelligen wanneer zich een bepaalde gebeurtenis voordoet, is een slim juridisch contract "een juridisch bindende overeenkomst die digitaal is en waarvan de voorwaarden en de uitvoering van de verplichtingen kunnen worden gekoppeld aan externe gegevensbronnen en softwaresystemen".8 Het Accord Project maakt duidelijk dat, hoewel een slim juridisch contract gebruik kan maken van slimme contracten via blockchaintechnologie, een slim juridisch contract ook kan worden gecreëerd met behulp van traditionele softwaresystemen zonder gebruik te maken van blockchain.9
Kwetsbaarheden
Hoewel goed gecodeerde slimme contracten de efficiëntie in toeleveringsketens aanzienlijk kunnen verhogen, lopen bedrijven het risico dat hun slimme contracten bugs of andere technische problemen bevatten, zoals corruptie van gegevensblokken. Er zijn drie veelvoorkomende soorten kwetsbaarheden die voortkomen uit onjuist gecodeerde slimme contracten: hebzuchtige contracten, verkwistende contracten en suïcidale contracten.10
Daarnaast is een andere complicerende factor voor het gebruik van slimme contracten het onvermogen van een niet-programmeur om te beoordelen of het slimme contract daadwerkelijk doet wat hij of zij wil dat het doet. Ook al hebben de partijen misschien
een traditionele, op tekst gebaseerde overeenkomst die de parameters voor het slimme contract vastlegt, zou de programmeur het slimme contract kunnen coderen op een manier die niet in overeenstemming is met de schriftelijke overeenkomst. Als de ondernemer niet in staat is om code te lezen, heeft hij of zij geen manier om te controleren of het gecodeerde slimme contract overeenkomt met de op tekst gebaseerde overeenkomst.
Ten slotte, omdat het onveranderlijke karakter van blockchain zich ook uitstrekt tot slimme contracten (die op een blockchain staan), verbiedt onveranderlijkheid het toevoegen van nieuwe functies aan het slimme contract zodra een programmeur een slim contract codeert en implementeert. Het upgraden en anderszins wijzigen van slimme contracten is een actief onderzoeksgebied in de blockchain-gemeenschap, en mechanismen voor het wijzigen van slimme contracten en best practices worden nog steeds ontwikkeld.
Hoewel slimme contracten de efficiëntie in de toeleveringsketen kunnen verhogen, bestaat er een reëel risico dat de programmeur het slimme contract onjuist opzet of dat het slimme contract geen rekening houdt met gewijzigde omstandigheden. Bedrijven die slimme contracten willen gebruiken, moeten de voor- en nadelen zorgvuldig afwegen en de risico's dienovereenkomstig verdelen over de deelnemers aan het slimme contract.
——————————————————————————————————————
1 Levi, Stuart D. en Alex B. Lipton, Een inleiding tot slimme contracten en hun potentieel en inherente beperkingen, Harvard Law School Forum on Corporate Governance,
6 Commissie voor uniforme handelswetgeving en opkomende technologieën, Uniform Law Commission, (laatst geraadpleegd op 7 september 2021)
7 Uniforme handelswetgeving en opkomende technologieën, Uniform Law Commission (9-15 juli 2021)
8 Veelgestelde vragen, het Accord Project (laatst geraadpleegd op 22 augustus 2021)
9 Id.
10 Groschopf, Wolfram et al., Slimme contracten voor duurzaam supply chain management: conceptuele kaders voor de evaluatie van de volwassenheid van de supply chain en de beoordeling van de duurzaamheid van slimme contracten, Frontiers in Blockchain (9 april 2021)
