PACE: Policy-Bound Multi-Party Authorization with State-Consistent Execution for Smart Contracts
Dit artikel introduceert PACE, een framework voor smart contracts dat door collectieve beslissingen te koppelen aan actieve beleidsregels en executiecontexten via een tweerondens roostergebaseerd signature-schema, een staat-consistente multi-party autorisatie waarborgt, waardoor consistentie tussen beleid, besluit, verzoek en executie wordt gegarandeerd terwijl stabiele verificatiekosten behouden blijven.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
In de digitale wereld van smart contracts fungeert code als de wet, waarbij overeenkomsten automatisch worden uitgevoerd wanneer aan bepaalde voorwaarden wordt voldaan. Deze programma's beheren vaak waardevolle activa of gevoelige machtigingen, wat strikte regels vereist over wie wat mag doen. Traditioneel kan één persoon of een eenvoudig wachtwoord toegang verlenen, maar voor beslissingen met een hoge inzet waarbij meerdere organisaties betrokken zijn, is een enkel punt van goedkeuring vaak te riskant. In plaats daarvan moet een groep vertrouwde partijen gezamenlijk instemmen voordat een actie kan plaatsvinden. Dit staat bekend als multi-party autorisatie. Er bestaat echter een aanzienlijke kloof tussen het moment waarop een groep instemt met een verzoek en het moment waarop het contract het daadwerkelijk uitvoert. Tussen deze twee momenten kunnen de regels veranderen, kan het verzoek worden gewijzigd, of kan de machtiging twee keer worden gebruikt. Als het systeem de overeenkomst niet nauw verbonden houdt aan de specifieke actie en de huidige regels, kan een geldige handtekening van een groep worden misbruikt om iets te autoriseren dat zij nooit bedoeld hadden, of om een transactie uit te voeren nadat de regels al waren gewijzigd.
Onderzoekers hebben een nieuw framework ontwikkeld genaamd PACE om dit probleem van losse verbindingen in digitale autorisatie op te lossen. Het team, onder leiding van Yaowei Sun en collega's, heeft een systeem gecreëerd dat ervoor zorgt dat de door een groep autoriteiten verleende toestemming perfect verbonden blijft met het specifieke verzoek, de huidige set regels en het exacte moment van uitvoering. Stel je voor dat een groep bankmanagers een cheque ondertekent; met PACE is de handtekening niet alleen een teken van goedkeuring, maar een digitaal zegel dat de handtekening vastlegt aan het exacte bedrag, de specifieke bankvestiging en de huidige datum, waardoor het onmogelijk wordt om de details te wijzigen of de handtekening op een andere dag te gebruiken. De onderzoekers hebben een prototype gebouwd om dit idee te testen, waarbij ze een scenario simuleerden waarin meerdere autoriteiten moeten instemmen voordat een smart contract een beschermde operatie uitvoert. Hun werk toont aan dat door de goedkeuring te koppelen aan een specifieke beleidsversie en een unieke sessie, zij ongeoorloofde acties kunnen voorkomen, zelfs als de regels veranderen of als een kwaadwillende actor probeert een oude machtiging te hergebruiken.
De kern van het PACE-systeem is een driestaps-proces dat de mensen, de regels en de actie in een enkele, onbreekbare keten verbindt. Ten eerste stelt het systeem een beleidsgebonden configuratie vast. Dit betekent dat voordat een groep toestemming kan geven, het systeem precies vastlegt welke regels actief zijn en welke specifieke personen gemachtigd zijn om te ondertekenen. Als de regels later veranderen, gaat het systeem over naar een nieuwe "epoch", of versie, en worden oude handtekeningen uit de vorige versie ongeldig. Dit voorkomt dat een groep een oude overeenkomst gebruikt om nieuwe beperkingen te omzeilen. Ten tweede gaan de autoriteiten een contextgebonden gezamenlijke autorisatie aan. Wanneer er een verzoek binnenkomt, beoordeelt elke geautoriseerde persoon de exacte details van het verzoek — het specifieke contract dat aangeroepen moet worden, de gegevens die verzonden moeten worden en de tijdslimiet. Vervolgens werken zij samen om een enkel stuk cryptografisch bewijs te genereren. Dit bewijs is niet slechts een verzameling individuele handtekeningen; het is een verenigd bewijs dat de gehele groep instemde met deze specifieke set details op dit specifieke tijdstip. Het systeem maakt gebruik van geavanceerde wiskundige technieken gebaseerd op roosterstructuren (lattice structures), die beveiligd zijn, zelfs tegen toekomstige quantumcomputers, om dit gezamenlijke bewijs te creëren.
Ten slotte voert het systeem een staat-consistente uitvoering uit. Wanneer het verzoek bij het smart contract aankomt, controleert het contract niet alleen of de handtekening geldig lijkt. Het voert een reeks strikte controles uit om te verzekeren dat alles overeenkomt. Het verifieert dat de regels die actief zijn op het moment van uitvoering dezelfde zijn als de regels waarmee de groep heeft ingestemd. Het controleert of het verzoek dat wordt uitgevoerd identiek is aan het verzoek dat de groep heeft beoordeeld. Het bevestigt dat de machtiging niet is verlopen en niet eerder is gebruikt. Cruciaal is dat het systeem het verbruik van de machtiging aan de uitvoering van de actie koppelt in één enkele, atomische stap. Dit betekent dat als de actie om welke reden dan ook mislukt, de machtiging niet is verbruikt, en als de machtiging wordt gebruikt, de actie moet slagen. Er is geen gat waar een machtiging verbruikt kan worden zonder een bijbehorend resultaat, of waar een resultaat kan optreden zonder dat de machtiging correct is verbruikt.
Om te testen hoe goed dit systeem werkt, hebben de onderzoekers een simulatie gebouwd met behulp van een standaard computerprocessor en een specifieke set wiskundige parameters die ontworpen zijn om tot zesendertig verschillende autoriteiten te kunnen verwerken. Ze voerden duizenden tests uit om te zien hoe het systeem zich gedraagt onder verschillende omstandigheden, zoals het veranderen van het aantal mensen in de groep of de omvang van de te verwerken gegevens. De resultaten lieten zien dat het systeem alle beoogde regels succesvol afdwong. Wanneer de onderzoekers probeerden het systeem te misleiden door een oude machtiging in te dienen, de details van het verzoek te wijzigen of te proberen een machtiging twee keer te gebruiken, wees het systeem de poging correct af. De tests bevestigden dat de controles voor beleidsconsistentie, verzoekbinding en autorisatiestatus volgens ontwerp werkten. In scenario's waarin de doelactie mislukte, draaide het systeem het hele proces correct terug, waardoor werd gegarandeerd dat er geen gedeeltelijke statuswijzigingen achterbleven.
De studie mat ook de kosten van het draaien van dit systeem in termen van tijd en gegevens. Het meest tijdrovende deel van het proces was het gezamenlijk ondertekenen en het aggregeren van het bewijs, wat het grootste deel van de rekentijd in beslag nam. Naarmate het aantal autoriteiten toenam, groeide de tijd die nodig was om het gezamenlijke bewijs te genereren, maar de tijd die nodig was voor het contract om het uiteindelijke resultaat te verifiëren bleef relatief stabiel. Bijvoorbeeld, met zesendertig autoriteiten duurde het proces van het genereren van het gezamenlijke bewijs ongeveer acht seconden, terwijl de verificatie aan de kant van het contract minder dan een seconde in beslag nam. De hoeveelheid gegevens die tussen de autoriteiten uitgewisseld moest worden, groeide eveneassen met het aantal deelnemers, waarbij meer dan honderd megabyte werd bereikt voor een groep van zesendertig, maar het uiteindelijke bewijsstuk dat bij het contract werd ingediend, bleef klein en van vaste omvang. Dit suggereert dat hoewel het systeem aanzienlijke coördinatie tussen de groep vereist, de last voor de uiteindelijke uitvoeringstap beheersbaar is.
De onderzoekers verkenden ook hoe het systeem omgaat met het wiskundige "rejection sampling"-proces, een methode die wordt gebruikt om de veiligheid van de handtekeningen te waarborgen door af en toe pogingen te verwerpen die niet aan strikte statistische criteria voldoen. Ze ontdekten dat door een paar pogingen toe te staan, het systeem het autorisatieproces met een zeer hoge waarschijnlijkheid succesvol kon voltooien. Zelfs met een grote groep autoriteiten was het systeem in bijna alle gevallen in staat de taak succesvol te voltooien wanneer een redelijk aantal pogingen werd gegeven. Dit geeft aan dat het systeem robuust genoeg is om de incidentele wiskundige hapering op te vangen zonder te falen in het leveren van een geldige autorisatie. De studie concludeert dat PACE een solide fundament biedt voor veilige, multi-party controle over smart contracts, waarbij het gat tussen goedkeuring en uitvoering effectief wordt gedicht. Hoewel de huidige versie een vertrouwde setup en een specifiek type groepsafstemming veronderstelt, laten de resultaten zien dat de kernidee van het samen binden van beleid, verzoek en staat een levensvatbaar pad is naar veiligere digitale governance.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.