Wat eist de bestuursrechter met betrekking tot smart contracts? In ieder geval dat gemaakte keuzes, gegevens en aannames volledig, tijdig én op 'passende wijze' openbaar worden gemaakt.
Zoals (misschien) bekend, zijn smart contracts niet ‘smart’ (want deterministisch) en geen ‘contracts’ (geen overeenkomsten). Smart contracts zijn deterministisch computerprogramma’s die op een blockchain worden gerepliceerd en uitgevoerd.
Smart contracts maken het bijvoorbeeld mogelijk om online automatische (al dan niet economische) transacties uit te voeren, zodra het programma vaststelt dat aan bepaalde, vooraf in de code vastgelegde, voorwaarden is voldaan. Uitgangspunt is dat de inhoud van smart contracts (de code) niet (achteraf) kan worden gemanipuleerd en dat de uitvoering ervan niet kan worden tegenhouden.
Hoewel het niet per definitie contracten zijn, kunnen smart contracts verschijningsvormen hebben die een juridische handeling vertegenwoordigen, of die betekenis kunnen hebben voor de rechtsorde of de rechtsrelatie waarin het smart contract wordt ingezet. Zo is het goed denkbaar dat bij publiekrechtelijke besluitvorming gebruik wordt gemaakt van smart contracts. Publiekrechtelijke besluiten zijn, zoals de lezer van iBestuur ongetwijfeld zal weten, afkomstig van bestuursorganen (zoals colleges van Burgemeester en Wethouders, ministers en belastinginspecteurs) en worden beheerst door het bestuursrecht.
Elektronische besluitvorming wordt, ten eerste, beheerst door afdeling 2.3 van de Algemene wet bestuursrecht. Deze afdeling, die betrekking heeft op elektronisch bestuurlijk verkeer, zal in de nabije toekomst worden gemoderniseerd door de Wet modernisering elektronisch bestuurlijk verkeer. Op dit moment kan een bericht van het bestuur dat tot een of meer geadresseerden is gericht, elektronisch worden verzonden voor zover de geadresseerde kenbaar heeft gemaakt dat hij langs deze weg voldoende bereikbaar is (art. 2:14, eerste lid, Awb). Publiekrechtelijke besluiten vallen onder deze ‘berichten’. Elektronische besluitvorming, al dan niet door inzet van smart contract, is dus mogelijk (hoewel de Algemene Verordening Gegevensbescherming (AVG) daaraan wel enige eisen stelt, waarop in een volgende blog zal worden ingegaan).
In de praktijk zullen smart contracts vooral goed inzetbaar zijn bij zogenaamde gebonden besluiten. Dat zijn besluiten waarin de beoordelingsruimte van bestuursorganen beperkt is; de stappen in het beoordelingsproces en de denkbare uitkomsten zijn daardoor makkelijker te voorspellen en (dus) eenvoudig(er) in code te vangen. Naarmate de beoordelingsruimte van het bestuur – vooraf, los van het individuele geval – groter wordt, zal het steeds lastiger zijn die ruimte in individuele gevallen in de code van een smart contract te vangen. Dit probleem kan mogelijk worden opgelost door de inzet van oracles – zogenaamde externe bronnen die in smart contracts als informatiebron worden gebruikt. Maakt de overheid gebruik van smart contracts, dan zal tevens moeten worden voldaan aan de algemene beginselen van behoorlijk bestuur, zoals het zorgvuldigheids- en motiveringsbeginsel.
Eisen van de bestuursrechter
Over de toepassingen van de algemene beginselen van behoorlijk bestuur bij geautomatiseerd besluitvormingsprocessen heeft de Afdeling bestuursrechtspraak van de Raad van State op 17 mei 2017 een belangrijke uitspraak gedaan. De Afdeling heeft in die uitspraak geoordeeld dat in een situatie van een geautomatiseerd besluitvormingsproces een gebrek aan inzicht in de gemaakte keuzes en gebruikte gegevens en aannames ertoe kan leiden dat er een ongelijkwaardige procespositie van partijen kan ontstaan. Dat zal aan de orde zijn, als de burgers niet kunnen controleren op basis waarvan tot een besluit wordt gekomen. De geautomatiseerde besluitvorming op basis van een programma is van hun perspectief dan te beschouwen als een black box. Om dit te voorkomen rust in die gevallen op de overheid de verplichting om de gemaakte keuzes en de gebruikte gegevens en aannames volledig, tijdig en uit eigener beweging openbaar te maken, zodat deze voor burger toegankelijk zijn. Dit moet bovendien op een passende wijze gebeuren, aldus de Afdeling. Voldoet de overheid hieraan, dan is het voor alle partijen, inclusief de burgers, mogelijk de gemaakte keuze en gebruikte gegevens en aannames te beoordelen of te laten beoordelen en zo nodig gemotiveerd te betwisten. Alleen op deze wijze is in de optiek van de bestuursrechter reële rechtsbescherming mogelijk.
Hoe kan een bestuursorgaan aan de eisen van de bestuursrechter voldoen?
De vraag is hoe een bestuursorgaan aan deze eisen van de Afdeling kan voldoen als hij gebruik maakt van smart contracts. Met andere woorden: op welke wijze kunnen de in een smart contract gemaakte keuzes, gebruikte gegevens en aannames volledig, tijdig, uit eigener beweging én op passende wijze openbaar worden gemaakt?
Er zijn zo op het eerste oog drie manieren denkbaar.
Broncode open source
Ten eerste is denkbaar dat het gehele smart contract, dus de broncode, open source aan een ieder, of aan de burger die rechtsbescherming zoekt, ter beschikking wordt gesteld. Dat zou betekenen dat de burger die code zou kunnen beoordelen en daarover een standpunt kan innemen. Het nadeel van deze manier is dat de terbeschikkingstelling nog steeds in code plaatsvindt; een ‘normale’ burger kan die code niet ontcijferen. Wel wordt hij op deze wijze in staat gesteld om een derde (deskundige) te vragen de code te onderzoeken. Het noodzakelijkerwijs inschakelen van een derde (deskundige) teneinde de geautomatiseerde besluitvorming ‘aan te vallen’, verhoudt zich evenwel slecht met de laagdrempelige rechtsbescherming die de Algemene wet bestuursrecht biedt en waarin uitgangspunt is dat de burger zonder bijstand van een adviseur een bestuursrechtelijke procedure moet kunnen voeren. Anderzijds spreekt de Afdeling zelf over het ‘laten beoordelen’ van de gemaakte keuze en gebruikte gegevens en aannames. Alles afwegende lijkt me dit niet de ‘passende wijze’ waarop de Afdeling in haar uitspraak van mei 2017 het oog zal hebben gehad.
Programma ter beschikking stellen
De tweede manier is dat de burger die de uitkomst van smart contract betwist het recht krijgt om zelfstandig gebruik te maken van het door de overheid gebruikte smart contract. Dat zou kunnen betekenen dat hij kan experimenteren met de invoer in het door de overheid gebruikte programma en zodoende kan onderzoeken of de uitkomst op de juiste manier is bepaald. Dat heeft weliswaar tot gevolg dat de burger kan volgen wat de overheid heeft gedaan, maar hij zal nog steeds op de juistheid van de code in het smart contract moeten vertrouwen. De burger kan die code immers, zoals we zojuist ook al zagen, niet ‘lezen’. Bovendien is het in de praktijk niet goed voorstelbaar dat er vrijelijk geëxperimenteerd kan worden met smart contracts en de burger vrijelijk toe te laten in door de overheid gebruikte blockchains. Dit lijkt me daarom ook niet de ‘passende wijze’ waarop de Afdeling in haar uitspraak van mei 2017 het oog zal hebben gehad.
Van code naar begrijpelijke mensentaal
De derde manier is dat de stappen, aannames en uitgangspunten die aan Smart Contracts ten grondslag liggen in begrijpelijke mensentaal door de overheid aan de burgers ter beschikking worden gesteld. Velen denken dat dit een gemakkelijke exercitie is, omdat de code (naar alle waarschijnlijkheid) een vertaling zal zijn van (in taal gegoten) wet- en regelgeving en (analoge) besluitvormingsprocessen. “Lees de wet en begrijp de code”, zou dan het devies zijn. Het probleem is evenwel – en Anne Meuwese schreef daar in 2017 al over in haar preadvies voor de Vereniging voor Bestuursrecht – dat in de ontwikkelingsfase van smart contracts gedetailleerde(re) keuzes worden gemaakt dan in de geldende wet- en regelgeving en dat de wet- en regelgeving moet worden geïnterpreteerd ten behoeve van een eenduidige uitvoering. Het in begrijpelijke mensentaal weergeven van die gedetailleerde(re) keuze en interpretaties gaat dus verder dan het ter beschikking stellen van de wet- en regelgeving die aan smart contracts ten grondslag ligt.
Onder de noemer ‘Regelbeheersing’ is al veel ervaring opgedaan met het uitwerken van juridische normen in specificaties voor de geautomatiseerde uitvoering en het vastleggen van die specificaties op een niveau die het midden houdt tussen de juridische normen en de smart contracts. Op deze manier wordt het mogelijk de vertaalslag van taal naar code na te lopen en te controleren. Dat is echter niet voldoende. Toepassing van een smart contract ten behoeve van publiekrechtelijke besluitvorming zal immers leiden tot een uitkomst, de geïndividualiseerde besluitvorming. Deze geïndividualiseerde besluitvorming zal, naast de algemene weergave van de werking van de code, evenzeer in begrijpelijke mensentaal ter beschikbaar moeten worden gesteld. Het geheel van deze stappen levert een cyclische vertaalslag op, waarbij taal wordt omgezet in code en de code weer moet worden ‘doorvertaald’ naar taal, opdat de burger kan controleren op basis waarvan tot een besluit is gekomen.
In mijn optiek zal deze derde manier in ieder geval (maar niet uitsluitend) als ‘passend’ in de zin van de uitspraak van de Afdeling kunnen worden aangemerkt. Het loont echter wel om te onderzoeken of deze ‘doorvertaling’ van code naar begrijpelijke mensentaal ook geautomatiseerd kan plaatsvinden. Het lijkt immers ondoenlijk om alle (toekomstige) smart contracts (en andere geautomatiseerde besluitvormingsprogramma’s) handmatig van code in begrijpelijke mensentaal te vertalen.
Sandra van Heukelom-Verhage is partner bij Pels Rijcken & Droogleever Fortuijn en geeft daar leiding aan het team Digitale Transformatie.
Sandra, Met alle respect, maar als deze column een ding duidelijk maakt is het wel dat het onbegrijpelijke zich moeilijk laat vertalen in iets wat wel te begrijpen valt. Te begrijpen, wel te verstaan, niet alleen door deskundige lezers maar ook door “modale justitiabelen” t.a.v. wie door de overheid beslissingen worden genomen die hij of zij evenzeer wil kunnen begrijpen. Dat de overheid overweegt haar vele besluitvormingsprocessen te vereenvoudigen met gebruikmaking van blockchains en smart contracts, is 1 (vooralsnog tamelijk onbezonnen) ding. Dat justitiabelen die besluiten ook dan zonder onnodige poespas moeten kunnen begrijpen en desgewenst aanvechten, een ander. Daarvan uitgaande waag ik te voorspellen dat geen van 3 door jou genoemde mogelijkheden (ook niet de doorvertaling van de code in mensentaal) zelfs maar in de buurt komt van de strenge eisen die de Afdeling Bestuursrechtspraak Raad van State pleegt te stellen aan de motivering van overheidsbesluiten. En eerlijk gezegd hoop ik dat ook van harte.
Regelbeheersing leidt echter tot beslismodellen, welke bij de geïndividualiseerde besluitvorming worden ‘doorlopen’ door middel van beslisservices. Dit betekent dat op basis van de input (gegevens van het individuele geval) en het beslismodel exact is na te gaan hoe een individuele beslissing tot stand is gekomen. Door in begrijpelijke taal uit te leggen hoe de regels uit het beslismodel ‘omgaan’ met de gegevens, is de geïndividualiseerde besluitvorming transparant uitlegbaar. Dit vergt uiteraard inbreng van communicatie experts.
Om bovenstaande in de huidige praktijk mogelijk te maken – ook nu worden er digitaal geïndividualiseerde besluiten genomen – kan gebruik gemaakt worden van rule engines, waarbij exact gerapporteerd kan worden welke regels ‘gevuurd’ hebben op basis van de ingevoerde gegevens. En aangezien het beslismodel dat door Regelbeheersing tot stand is gekomen één-op-één omgezet wordt naar regels in een beslisservice, is de geïndividualiseerde besluitvorming direct uitlegbaar.
Een rule engine tool dat smart contract code genereert zou bovenstaande ook voor smart contracts mogelijk kunnen maken. Wij gebruiken voor Javascript al een dergelijke omgeving en aangezien Solidity op Javascript lijkt, lijkt dit een haalbare oplossing.
Beste Sandra,
Deze uiteenzetting over de standpunten van de (bestuurs)rechtspraak heb ik met veel belangstelling gelezen.
Nu deze uitspraak een eerste handvat biedt voor definitieve adoptie van blockchain kan er over toepasbaar beleid gedacht worden. Toepasbaar in die zin dat, in tegenstelling tot de
Algemene wet Bestuursrecht, het waarschijnlijk is dat dit specifiek per blockchain(toepassing) en per bestuursorgaan ontwikkeld wordt.
De registratie hondenbelasting zal immers anders van opzet en structuur zijn dan kavelregistratie van het Kadaster en aan andere processen en protocollen onderhavig zijn.
Anderzijds is het voor de wetgever natuurlijk wenselijk dat beleid zoveel als mogelijk uniform is, zoals de uitspraak gedaan door de Afdeling.
Deze ogenschijnlijk tegengestelde belangen spelen elkaar echter in de kaart in een variant op de derde optie die u beschrijft.
Ik veronderstel dat een groot deel van de technische processen die plaatsvinden voor verificatie en verwerking ‘in’ de blockchain niet allemaal vertaald hoeven te worden wanneer deze door de wetgever geformaliseerd worden.
Wanner blijkt dat volwaardige adoptie van blockchain door lokale bestuursorganen alsmede het Rijk plaats gaat vinden kan er (vanuit het Rijk?) een ‘in-house’ consencus-protocol ontwikkeld worden, welke vervolgens getoetst (ISO-xxxx) en vastgesteld wordt in een formele wet. Zo zijn alle technische handelingen uniform en niet per toepassing verschillend. De burger kan de wet raadplegen voor details over het protocol en alleen nog de feitelijke stappen binnen het proces moeten aan de burger duidelijk gemaakt worden.
In algemene zin moet een nieuwe toepassing (van blockchain) ontwikkeld worden vanuit het bestaande proces. Bij implementatie hoeven de stappen die men neemt in een werkproces niet wezenlijk veranderen, bij voorkeur geheel niet.
In dit licht is ontwikkelen van een uniform-protocol nog aantrekkelijker, dat betekent namelijk dat er qua informatievoorziening tevens niet veel hoeft te veranderen.
Goededag verder,
PS. Een geautomatieseerde smart-contract generator zoals de heer Janssen hierboven voorstelt lijkt me geenszins een goed idee. Dit brengt de betrouwbaarheid van de contracten sterk omlaag.