Geweldige diepe duik door @paramonoww over hoe TEE, MPC, FHE en ZKP elkaar aanvullen.
Phala is er trots op de TEE-basislaag te zijn die projecten zoals @0xfairblock, @primus_labs, enz. mogelijk maakt om de veiligheid en privacy in Web3 te verbeteren.
TEE, MPC, FHE en ZKP zijn geen concurrenten. Het zijn vrienden.
In discussies wordt deze technologie vaak vergeleken om te bepalen welke superieur is.
In werkelijkheid sluiten deze technologieën elkaar niet uit en kunnen ze samen functioneren en elkaar aanvullen.
1. Elke oplossing heeft compromissen, maar ze hebben niets met elkaar te maken
> MPC heeft geen single point of failure, maar vereist zware gegevensuitwisseling
Een MPC-protocol ontvouwt zich doorgaans in drie fasen.
1. Gebruikers delen hun privé-invoer in geheimen, sturen versleutelde gegevens naar computerknooppunten en zorgen voor veiligheid door niet-collusie of een volledig drempelmodel (alle knooppunten moeten samenspannen).
2. Knooppunten berekenen deze geheime shares.
3. Knooppunten geven hun aandeel in de output terug aan gebruikers, die het resultaat reconstrueren.
MPC werkt het beste met goed verbonden nodes, maar de kosten komen voort uit de zware gegevensuitwisseling tussen hen, dus we hebben vooral te maken met overhead bij communicatieproblemen.
In veel standaard MPC-protocollen communiceert elk knooppunt met elk ander knooppunt voor bewerkingen zoals vermenigvuldigingspoorten.
Dit resulteert in kwadratische communicatiecomplexiteit O(n²). Wat betekent het?
• Bijvoorbeeld, met 10 nodes en een rekencomplexiteit van 1 KB is de gegevensuitwisseling ongeveer 100 GB.
• Met 100 nodes bereikt het ongeveer 10 TB.
De gegevensuitwisseling van MPC beperkt praktische toepassingen tot 2-10 knooppunten vanwege de communicatie-overhead. Dus, in tegenstelling tot blockchain, is een snelle MPC met honderden nodes nog niet haalbaar.
> FKE vereist minder gegevens, maar meer rekenkracht
FHE pakt een al lang bestaande uitdaging aan: hoe maak je veilige berekeningen op versleutelde gegevens mogelijk zonder dat decodering nodig is?
Een gebruiker kan zijn gevoelige gegevens versleutelen, uploaden naar een server en de server kan berekeningen uitvoeren op deze cijfertekst (versleuteld bericht).
De resulterende output, nog steeds versleuteld, kan vervolgens door de gebruiker worden gedecodeerd met behulp van zijn privésleutel, in tegenstelling tot traditionele end-to-end encryptie (E2EE) waarbij berekening op versleutelde gegevens niet haalbaar is.
FHE gebruikt minder gegevensoverdracht dan MPC, maar vereist aanzienlijk meer berekeningen aan de serverzijde.
Dit maakt FHE over het algemeen langzamer dan MPC, behalve in situaties met extreem trage netwerken of een zeer krachtige computerinfrastructuur.
• Eenvoudige databasequery die niet-versleutelde milliseconden duurt, kan met FKE oplopen tot 2-10 seconden
• AI-inferentie met FHE duurt seconden tot minuten in vergelijking met milliseconden voor niet-versleutelde bewerkingen
> ZK gaat niet over algemene berekeningen en heeft een privacyprobleem
Hoewel al deze technologieën privéberekeningen mogelijk maken, genereren ZKP's specifiek bewijzen met "waar" of "onwaar" (booleaanse) resultaten.
Zoals de meeste mensen weten, worden ZKP's veel gebruikt in zk-rollups, dit zijn beknopte bewijzen met een kleine, vaste grootte en snelle verificatie, ideaal voor gebruik in de keten.
Zk-rollups maken echter gebruik van de degelijkheid en beknoptheid van, maar niet van hun zk-eigenschap.
Hoewel ZKP's ervoor zorgen dat een valse proefdruk niet geldig kan lijken (deugdelijkheid) en dat iedereen een proef kan verifiëren, doet zich een privacyprobleem voor in zk-rollups.
De entiteit die het zk-circuit beheert, heeft volledige toegang tot de invoergegevens tijdens de berekening, d.w.z. gevoelige gegevens die zichtbaar zijn voor de bewijzer. Dit brengt de privacy van privé-gebruikersinvoer in gevaar.
> TEE is goedkoop en snel, maar ook kwetsbaar voor side-channel aanvallen
In tegenstelling tot andere privacytechnologieën vertrouwen TEE's op specifieke hardware, zoals Intel's SGX.
Het beveiligingsmodel van TEE's is minder transparant dan andere methoden en er zijn kwetsbaarheden geïdentificeerd in verschillende TEE-implementaties.
2. Verschillende compromissen - verschillende manieren om ze aan te vullen
Elke technologie lijdt aan verschillende problemen en heeft ook verschillende voordelen, dus om te zeggen dat de ene technologie veel beter is dan de andere zonder enige context te geven, is zeker onjuist.
Elke optie kan in bepaalde situaties niet beter presteren dan andere opties en vice versa.
Om een voorbeeld te geven:
• Collusieprobleem heeft op geen enkele manier betrekking op TEE, omdat er alleen een geïsoleerde omgeving is waar collusie onmogelijk is
• ZKP's kunnen op geen enkele manier betrekking hebben op MPC of FKE in termen van berekeningen, omdat ZK-technologie alleen gerelateerd is aan het genereren van booleaanse bewijzen
• De belangrijkste vertrouwensaanname van TEE is dat hardware wordt gehackt, terwijl het grootste probleem met hardware in FKE is dat het snel genoeg en performant moet zijn
• We hebben het over hetzelfde onderwerp (hardware), maar er zijn absoluut polaire punten om over na te denken
Volgens deze logica heb ik besloten om hier dieper op in te gaan en te kijken waar verschillende technologieën elkaar kunnen aanvullen en een betere oplossing kunnen bieden.
3. Synergieën en complementaire rollen
Laten we TEE als een bepaalde basis nemen en kijken hoe verschillende combinaties kunnen werken en hoe we de problemen in die opties kunnen oplossen.
> TEE + MPC
Probleem: TEE's vertrouwen voor privacy op hardwaregebaseerde sleutels, waardoor problemen ontstaan met de overdraagbaarheid van gegevens en mogelijke censuur.
Oplossing: MPC kan dit oplossen door hardwaresleutels te vervangen en te dienen als sleutelbeheerservice voor TEE's.
MPC-oplossingen kunnen berekeningen uitvoeren binnen TEE's om ervoor te zorgen dat de activiteiten van elke partij geïsoleerd en veilig zijn, waardoor het nog veiliger wordt, en er zijn al meerdere protocollen die dit doen.
• Als we het van de andere kant bekijken en zien hoe TEE kan profiteren van MPC, dan is dat door geïsoleerde omgevingen te repliceren, waardoor ze meer gedistribueerd worden
• In plaats van te vertrouwen op één TEE om alles af te handelen, verdeelt MPC de verantwoordelijkheid over meerdere TEE's
• TEE kan het vertrouwen verdelen over meerdere beveiligde enclaves en de afhankelijkheid van één enkele TEE-instantie verminderen
• Elke enclave draagt bij aan de berekening zonder de andere volledig te hoeven vertrouwen vanwege de cryptografische garanties van MPC.
> TEE + FKE
Problemen met TEE (side-channel attacks) en FHE (huge computation resources) zijn verschillend, net als de technieken die ze met zich meebrengen.
Het uitvoeren van code in een geïsoleerde omgeving is niet hetzelfde als het hebben van technologie om berekeningen uit te voeren op gedecodeerde gegevens.
Hier lijkt TEE een overhead, omdat pure code wordt uitgevoerd in een geïsoleerde machine en decodering vereist, terwijl FHE ontwikkelaars in staat stelt berekeningen uit te voeren op reeds versleutelde gegevens.
Hoewel het in zekere zin waar kan zijn dat TEE technologische overhead is, heeft het gebruik van FHE nog een overhead van echt hoge rekenkracht.
Bij gebruik van TEE is er ongeveer 5% overhead, terwijl bij gebruik van FHE de overhead ongeveer 1,000,000x is.
Hoewel het lijkt alsof TEE's en FHE overhead voor elkaar kunnen creëren, onderzoek ik het gebruik van TEE's om decoderingssleutels veilig te beheren of prestatie-intensieve taken uit te voeren waar FHE mee worstelt.
Als we het op een andere manier bekijken, kan FHE TEE toestaan om versleutelde gegevens rechtstreeks te verwerken, terwijl TEE de sleutels beheert.
> TEE + ZK
Er is ook een voorbeeld van hoe efficiënt het gebruik van TEE en ZK is door TEE te gebruiken voor het bewijzen van zkVM's.
Probleem: het uitbesteden van zkVM aan een ander apparaat is problematisch, omdat de privacy in gevaar komt omdat de bewijzer doorgaans toegang tot invoer nodig heeft.
Oplossing: Als we zkVM in een TEE uitvoeren, vindt de berekening plaats in een beveiligde enclave en voorkomt dat de host toegang heeft tot de gegevens.
De TEE levert een bevestiging dat het bewijs correct is gegenereerd.
@PhalaNetwork gebruikt bijvoorbeeld TEE-GPU's om SP1 zkVM uit te voeren, waardoor minder dan 20% overhead wordt bereikt voor complexe workloads zoals zkEVM's.
4. Phala als Stichting TEE
Phala bouwt de gedecentraliseerde TEE-cloud in crypto, zodat iedereen TEE kan gebruiken en het voor hun doeleinden kan gebruiken, inclusief teams waarvan het belangrijkste productaanbod MPC, FHE of ZK is.
Ik wilde meer leren en de teams verkennen die Phala voor deze doeleinden gebruiken.
> Phala + MPC
@0xfairblock doet vertrouwelijk computergebruik om gecentraliseerde risico's te beperken en informatielekken en manipulatie in apps te voorkomen, waarvan hun belangrijkste technologie MPC is.
Ze kunnen echter nog steeds profiteren van TEE's:
• Phala's TEE-enclave genereert privésleutels, die vervolgens op de drempel worden versleuteld en worden opgesplitst in shares voor opslag in de MPC van Fairblock
• Slimme contracten bewaken TEE-operaties door regelmatige indiening van versleutelde sleutels te vereisen en fungeren in feite als een mechanisme voor het detecteren van storingen
• Als TEE faalt, activeren slimme contracten de MPC van Fairblock om de sleutels privé te reconstrueren en te ontcijferen om de vertrouwelijkheid van het delen te behouden.
In een dergelijke setting blijven sleutels te allen tijde versleuteld binnen TEE's, waarbij MPC ervoor zorgt dat geen enkele partij toegang heeft tot de volledige sleutel.
Geautomatiseerde herstelmechanismen beschermen tegen gegevensverlies als gevolg van systeemcrashes of opnieuw opstarten.
> Phala + zkTLS
Er zijn veel zk-protocollen die Phala gebruiken, maar ik wil er @primus_labs benadrukken, omdat hun kernaanbod rond zkTLS draait.
Ik heb al een uitgebreid artikel over zkTLS geschreven, maar het belangrijkste dat je moet weten is dat in zkTLS de attestor dient als een validator die naar versleutelde datastromen kijkt om hun authenticiteit te verifiëren.
Moeilijkheid: vermindering van het vertrouwen op de betrouwbaarheid van de attestor.
• Met behulp van Phala's Dstack kunnen attestors in Primus de attestaties in een TEE uitvoeren om ervoor te zorgen dat elke ZKP wordt ondersteund door attestatie die in een TEE is uitgegeven.
• In dat geval kan iedereen het bewijs verifiëren met behulp van een attestverkenner.
TEE houdt de latentie laag en brengt geen tijdoverhead met zich mee.
> Phala + FKE
@sporedotfun gebruikt zowel FKE aan de @mindnetwork_xyz kant als TEE aan de Phala kant.
In het staking-to-vote-systeem van Spore kunnen aanvallers tokens inzetten vóór deadlines om kiezers te misleiden, en vervolgens resultaten en markten ongedaan te maken en te verstoren.
Moeilijkheid: een evenwicht vinden tussen transparantie en veiligheid om ervoor te zorgen dat bestuursbeslissingen in overeenstemming zijn met de bedoelingen van de contribuanten op de lange termijn.
• Om stemsniping tegen te gaan, adopteert Spore FHE via Mind Network en maakt blind stemmen mogelijk dat de privacy van de kiezer beschermt.
• FHE houdt stemmen versleuteld om te voorkomen dat sluipschutters kwaadwillig kunnen stemmen.
• TEE biedt een zero-trust omgeving voor het samenvoegen en publiceren van stemmen vóór de definitieve publicatie.
5. De mogelijkheden zijn oneindig, maar het is de moeite waard om rekening te houden met de risico's en prestatie-overhead
Zoals ik al eerder zei, zijn er veel use cases mogelijk met TEE foundation, dus de mogelijkheden zijn oneindig.
De belangrijkste overweging is deze:
• De industrie ervaart momenteel een groeiende vraag naar complexe berekeningen, voornamelijk gedreven door AI
• De snelle expansie van de AI-sector verhoogt de prestatie-eisen.
• Naarmate de prestatie-eisen toenemen, moeten we niet alleen rekening houden met de prestatie- en beveiligingskenmerken van specifieke technologieën, maar ook met hun kosten.
Om bij benadering schattingen van de overhead te geven aan de hand van ruwe cijfers, zijn de volgende prognoses:
• TEE — 5% overhead
• MPC — 100x overhead
• ZK — 1.000x overhead
• FKE — 1.000.000x overhead
Zoals we kunnen zien, introduceert TEE zeer weinig overhead in elk systeem en is het in feite de meest performante en kosteneffectieve omgeving voor complexe berekeningen zoals AI-inferentie.
In de huidige systemen, en nog meer in toekomstige systemen, zouden ontwikkelaars TEE moeten beschouwen als een van de onderdelen van het uiteindelijke systeemontwerp, zelfs als het kernaanbod niet rond TEE's draait.
TEE verzacht niet alleen individuele compromissen tussen MPC, FHE of ZK, maar ontsluit ook veel mogelijkheden voor ontwikkelaars en gebruikers.
102
11,28K
De inhoud op deze pagina wordt geleverd door derden. Tenzij anders vermeld, is OKX niet de auteur van het (de) geciteerde artikel(en) en claimt geen auteursrecht op de materialen. De inhoud is alleen bedoeld voor informatieve doeleinden en vertegenwoordigt niet de standpunten van OKX. Het is niet bedoeld als een goedkeuring van welke aard dan ook en mag niet worden beschouwd als beleggingsadvies of een uitnodiging tot het kopen of verkopen van digitale bezittingen. Voor zover generatieve AI wordt gebruikt om samenvattingen of andere informatie te verstrekken, kan deze door AI gegenereerde inhoud onnauwkeurig of inconsistent zijn. Lees het gelinkte artikel voor meer details en informatie. OKX is niet verantwoordelijk voor inhoud gehost op sites van een derde partij. Het bezitten van digitale activa, waaronder stablecoins en NFT's, brengt een hoge mate van risico met zich mee en de waarde van deze activa kan sterk fluctueren. Overweeg zorgvuldig of de handel in of het bezit van digitale activa geschikt voor je is in het licht van je financiële situatie.