KEM-IND-CCA-Preserving Compilation of Jasmin's ML-KEM
Dit artikel presenteert een volledig gemachiniseerd bewijs in de Rocq-prover dat de Jasmin-compiler zowel functionele correctheid als KEM-IND-CCA-beveiliging behoudt voor de hooggeoptimaliseerde ML-KEM-implementatie die door Signal wordt gebruikt, bereikt door middel van een nieuw spelgebaseerd beveiligingsframework, interactieboom-semantiek die probabilistische berekeningen ondersteunt, en een relationele Hoare-logica.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://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 hooggespannen wereld van digitale beveiliging fungeert cryptografie als het onzichtbare slot dat alles beschermt, van privéberichten tot financiële transacties. Decennialang hebben experts vertrouwd op wiskundige bewijzen om te garanderen dat deze sloten onbreekbaar zijn, maar er is een kritische kloof gebleven tussen de elegante wiskunde op papier en de rommelige realiteit van de computercode die ze uitvoert. Zelfs wanneer een cryptografisch schema in theorie veilig is bewezen, kan het proces van het vertalen van die theorie naar de specifieke instructies die een computerprocessor begrijpt, subtiele fouten introduceren. Deze fouten, vaak geïntroduceerd door de compilers die de vertaling uitvoeren, kunnen kwetsbaarheden creëren waar aanvallers misbruik van maken. Terwijl de wereld zich voorbereidt op de overgang naar nieuwe, kwantumresistente encryptiestandaarden om toekomstige dreigingen tegen te gaan, is het waarborgen dat deze nieuwe systemen veilig blijven tot diep in de machinecode niet langer slechts een theoretische zorg; het is een noodzaak voor de veiligheid van wereldwijde communicatienetwerken.
Een team van onderzoekers heeft nu deze kloof gedicht voor een van de belangrijkste nieuwe encryptiestandaarden, bekend als ML-KEM, die al wordt gebruikt in populaire veilige berichtendiensten zoals Signal. Hun werk demonstreert dat de specifieke softwaretool die wordt gebruikt om de hoogwaardige beveiligingscode te vertalen naar machine-instructies, niet per ongeluk de beveiligingsgaranties verbreekt. In essentie hebben zij bewezen dat de beveiligingseigenschappen die zijn vastgesteld voor de oorspronkelijke, voor mensen leesbare code, perfect behouden blijven in de uiteindelijke, geoptimaliseerde assembly-code die de computer daadwerkelijk uitvoert. Deze prestatie is significant omdat het de noodzaak wegneemt om de compiler te vertrouwen als een "black box" die verborgen bugs zou kunnen bevatten; in plaats daarvan is de compiler zelf wiskundig geverifieerd als een veilige brug tussen de abstracte beveiligingsbewijzen en de fysieke hardware.
De uitdaging waarmee de onderzoekers werden geconfronteerd, was uniek voor de aard van moderne encryptie. Het specifieke algoritme dat zij bestudeerden, ML-KEM, vertrouwt op een techniek genaamd rejection sampling, waarbij de computer herhaaldelijk willekeurige getallen probeert totdat hij er een vindt die aan een specif patroon voldoet. Dit proces betekent dat het programma niet altijd een vaste hoeveelheid tijd draait; het kan snel klaar zijn, of het kan veel meer pogingen nemen dan verwacht. Eerdere methoden voor het verifiëren van compilers waren ontworpen voor programma's die in een voorspelbare, vaste sequentie van stappen draaien. Ze hadden moeite met het afhandelen van dit soort probabilistisch gedrag, waarbij het pad dat de code neemt afhangt van toeval. Als een tool voor compilerverificatie deze willekeurige lussen niet kan verantwoorden, kan het niet garanderen dat de gecompileerde machinecode zich op dezelfde manier gedraagt als het oorspronkelijke ontwerp, waardoor er een potentieel gat in de beveiligingsketen ontstaat.
Om dit op te lossen, bouwden de onderzoekers een nieuw framework om te begrijpen hoe deze programma's zich gedragen. Ze beschouwden de uitvoering van de code niet als een eenvoudige lijst met instructies, maar als een boom van mogelijke interacties, waarbij elke willekeurige keuze en elke interactie met de buitenwereld een tak in de boom is. Deze aanpak stelde hen in staat om de "bijna zekere" terminatie van het programma te modelleren — wat betekent dat het uiteindelijk met een waarschijnlijkheid van één zal eindigen, zelfs als de exacte tijd onvoorspelbaar is. Door dit nieuwe model te gebruiken, waren zij in staat om te definiëren wat het betekent voor een compiler om correct te zijn in een probabilistische setting. Ze bewezen dat voor elk mogelijk pad dat de oorspronkelijke code kan nemen, de gecompileerde code een overeenkomstig pad neemt, waarbij exact dezelfde distributie van uitkomsten behouden blijft.
Het team paste dit framework toe op de Jasmin-compiler, een tool die specifiek is ontworpen voor het schrijven van hoogwaardige cryptografische code. Ze richtten zich op de implementatie van ML-KEM die wordt gebruikt in Signal, een messenger-app met miljoenen gebruikers. Met behulp van een krachtige proof assistant, een softwaretool die wiskundige argumenten met absolute strengheid controleert, hebben zij geverifieerd dat de compiler de broncode correct vertaalt naar assemblytaal zonder de beveiligingseigenschappen te wijzigen. Hun bewijs dekt het gehele compilatieproces, van de initiële hoogwaardige beschrijving tot de uiteindelijke machine-instructies. Het resultaat is een garantie dat de beveiliging van de encryptie, die voorheen alleen voor de broncode bewezen was, nu ook geldt voor de werkelijke code die op het apparaat van de gebruiker draait.
Dit werk maakt deel uit van een grotere inspanning om de hoogste niveaus van zekerheid te brengen naar de post-kwantum transitie, een wereldwijde verschuiving naar encryptiemethoden die bestand zijn tegen aanvallen van toekomstige kwantumcomputers. Hoewel de onderzoekers hun bewijs nog niet hebben uitgebreid om side-channel aanvallen te dekken — waarbij een aanvaller geheimen kan ontdekken door te observeren hoe lang een berekening duurt of hoeveel stroom deze verbruikt — hebben zij het noodzakelijke fundament gelegd voor dergelijk toekomstig werk. Door vast te stellen dat de compiler het kernspel van de beveiliging behoudt, hebben zij een solide basis gecreëerd waarop complexere beveiligingsgaranties kunnen worden gebouwd. De verificatie is volledig gemachiniseerd, wat betekent dat elke stap van het bewijs is gecontroleerd door een computer, waardoor er geen ruimte is voor menselijke fouten in de logica zelf.
De implicaties van dit werk reiken verder dan slechts één algoritme. Het framework dat de onderzoekers hebben ontwikkeld, is algemeen genoeg om toegepast te worden op andere cryptografische schema's en beveiligingseigenschappen. Zij hebben aangetoond dat het mogelijk is om te redeneren over game-based security, een standaardmanier om cryptografische sterkte te definiëren, door de lens van compilercorrectheid. Dit betekent dat naarmate nieuwe encryptiestandaarden worden ontwikkeld en geïmplementeerd, zij onderworpen kunnen worden aan hetzelfde rigoureuze verificatieproces. De onderzoekers hebben hun tools en bewijzen open source gemaakt, zodat andere experts hun werk kunnen inspecteren, verifiëren en erop voortbouwen. Deze transparantie is cruciaal voor het behoud van vertrouwen in de digitale infrastructuur die de moderne samenleving ondersteunt.
Uiteindelijk vertegenwoordigt dit artikel een belangrijke stap naar een toekomst waarin we er zeker van kunnen zijn dat de digitale sloten die onze gegevens beschermen precies zo sterk zijn als de wiskundigen die ze ontwierpen hebben beloofd. Door de kloof te overbruggen tussen abstracte beveiligingsbewijzen en de concrete realiteit van machinecode, hebben de onderzoekers een belangrijke bron van onzekerheid uit de cryptografische toeleveringsketen verwijderd. Hun werk zorgt ervoor dat wanneer een gebruiker een veilig bericht verzendt, de beveiligingsgaranties waarop zij vertrouwen niet slechts theoretische idealen zijn, maar eigenschappen die wiskundig behouden blijven tot diep in de siliciumchips van hun apparaten. Dit niveau van zekerheid is wat ons in staat stelt om de technologie te vertrouwen die ons verbindt, zelfs terwijl we geconfronteerd worden met nieuwe en evoluerende dreigingen in het digitale tijdperk.
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.