Wat is Secure Multiparty Computation (MPC)?
Secure Multiparty Computation is een manier waarop meerdere partijen samen iets berekenen zonder hun individuele invoer prijs te geven. Iedereen draagt bij, niemand gluurt mee, en het uiteindelijke resultaat verschijnt veilig. Denk aan vrienden die een rekening verdelen waarbij de app vertelt wat jij moet betalen zonder dat iemand jouw bestel totaal ziet.
MPC is "trager en minder veilig dan één sleutel." Dat klopt niet. Het verwijdert het risico van één beheerder door vertrouwen over meerdere personen of apparaten te spreiden, en moderne MPC is snel genoeg voor echte wallets en exchanges.
Hoe Secure Multiparty Computation (MPC) werkt
Kort verhaal. Een schatkist heeft een handtekening nodig om gelden te verplaatsen. Verschillende teamleden hebben elk een deel van het geheim. Ze voeren een kort protocol uit en er verschijnt een geldige handtekening op de keten. De twist: ze reconstrueren nooit één privésleutel.
- Uitnodigen: Iemand zet de groep op, kiest hoeveel goedkeuringen nodig zijn en voegt apparaten toe.
- Verdelen: Het geheim wordt in delen gesplitst en verdeeld zodat alleen een drempel aantal delen kan goedkeuren.
- Berekenen: Wanneer een transactie goedkeuring nodig heeft, voert elke partij een korte uitwisseling van berichten uit om partiële handtekeningen te maken.
- Verifiëren: Het systeem controleert dat de partiële handtekeningen geldig zijn en van de juiste personen of apparaten komen.
- Ondertekenen: De partiële handtekeningen worden gecombineerd tot één standaardhandtekening die de keten accepteert, zonder dat één apparaat ooit het hele geheim ziet.
Dat is het doel: controle zonder het geheim prijs te geven.
Waarom Secure Multiparty Computation (MPC) belangrijk is
Wat levert het op?
- Voordeel: Minder gevallen van falen door één beheerder en minder nachtmerries met herstelzinnen, terwijl je toch zelfbeheer behoudt.
- Perspectief: Het past bij de huidige kijk op beveiliging: deel verantwoordelijkheid, beperk de impact en houd herstel mogelijk.
- Relevantie: Je ziet MPC in wallets, exchanges en DAOs. Het werkt ook samen met privacylagen om Privétransacties mogelijk te maken zonder afbreuk te doen aan standaardhandtekeningen.
Als je een Secure Multiparty Computation (MPC) wallet test, plaats delen op verschillende apparaten en netwerken, stel een redelijke drempel in en voer een paar proefruns uit met kleine bedragen. Je wilt dat oefengoedkeuringen saai aanvoelen.
Belangrijkste kenmerken van Secure Multiparty Computation (MPC)
Wat het onderscheidt:
- Geheimhouding: Geen enkele partij ziet ooit het hele geheim, en toch produceert de groep een geldig resultaat.
- Drempels: Je kunt elke combinatie vereisen zoals twee van drie of drie van vijf voor flexibele goedkeuringen.
- Veerkracht: Verlies één apparaat en je wordt niet buitengesloten als de drempel nog haalbaar is.
- Draagbaar: De uiteindelijke output is een standaardhandtekening die ketens al accepteren.
- Schaalbaarheid: Efficiëntie telt. Zie Schaalbaarheid voor hoe batching en beveiligde enclaves de latentie laag houden.
- Beleid: Je kunt regels toevoegen zoals bestedingslimieten, tijdsloten of extra goedkeuringen voor grote transacties.
Varianten
MPC komt in enkele varianten die je kunt tegenkomen:
- TSS: Threshold signature schemes die één normale handtekening maken uit meerdere partiële handtekeningen.
- Shamir: Geheimdeling die een geheim verdeelt in meerdere stukken met een gekozen drempel om te reconstrueren.
- Garbled: Circuitgebaseerde MPC voor algemene privéberekeningen, niet alleen voor ondertekenen.
- Hybride: MPC gecombineerd met hardware enclaves of veilige elementen voor extra bescherming.
- Netwerk: Meerdere organisaties waarbij delen bij verschillende teams of bewaarnemers liggen.
Secure Multiparty Computation (MPC) vermindert het risico van één beheerder, maar het maakt blockchainactiviteit niet onzichtbaar. En als je een dienst runt, zorg dat je goedkeuringsregels overeenkomen met je auditbehoeften en regelgeving.
Voorbeeld
Een exchange stelt drie onafhankelijke teams aan om opnames goed te keuren; zodra twee ervan goedkeuren, genereert Secure Multiparty Computation (MPC) een geldige handtekening en wordt de transactie uitgevoerd.
Leuk weetje
MPC is ontstaan uit Andrew Yao's Millionairesprobleem in de jaren tachtig, een geestige gedachteoefening over twee mensen die willen weten wie rijker is zonder hun vermogen te onthullen.
Samenvatting
Kort gezegd: deel het vertrouwen, houd de wiskunde intact en voorkom dat één apparaat het enige kwetsbare punt wordt.
