← Nieuwste papers
💻 computer science

Retrofit or Redesign? Hardware-Validated Constant-Time Defense and Cost Analysis for the M-Step Side-Channel on TrustZone-M

Dit artikel demonstreert door middel van real-silicon validatie op Arm TrustZone-M dat het herontwerpen van cryptografische algoritmen voor constante-tijd uitvoering superieur is aan het achteraf aanpassen, aangezien de laatste methode niet alleen ongeveer twee ordes van grootte hogere kosten met zich meebrengt, maar ook het risico inhoudt het behouden van exploiteerbare control-flow lekken die alleen verificatie per instructie kan detecteren.

Oorspronkelijke auteurs: Arash Razban

Gepubliceerd 2026-07-17
📖 7 min leestijd🧠 Diepgaand

Oorspronkelijke auteurs: Arash Razban

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

Stel je voor dat je de bewaker bent van een geheime kluis, en de enige manier om deze te openen is door een complexe wiskundige puzzel op te lossen. In de wereld van digitale beveiliging is deze puzzel vaak een "modulaire inversie", een berekening die wordt gebruikt om berichten te vergrendelen en te ontgrendelen. Jarenlang dachten experts dat als je de tijd die het kostte om de puzzel op te lossen elke keer hetzelfde maakte, niemand het geheim kon stelen. Dit wordt "constant-time" beveiliging genoemd. Het idee was dat als een dief niet kon zien of je hard aan het nadenken was of gewoon aan het gokken op basis van hoe lang de deur erover deed om te openen, je veilig was.

Maar er is een sluwe nieuwe truc genaamd een "single-stepping attack". Stel je voor dat een dief niet alleen wacht tot de deur opengaat; ze hebben een magische stopwatch waarmee ze de tijd na elke enkele stap van jouw puzzeloplossingsproces kunnen bevriezen. Ze kunnen precies zien welk pad jij door de doolhof neemt. Als jouw doolhof geheime sluiproutes heeft die je alleen neemt wanneer je het antwoord weet, ziet de dief dat je een sluiproute neemt en leert hij je geheim. Dit artikel onderzoekt een cruciale keuze voor beveiligingstechnici: wanneer er een kwetsbaarheid wordt gevonden, moet je dan de oude, lekke doolhof proberen te repareren om hem uniform te laten lijken (een "retrofit"), of moet je hem afbreken en een gloednieuwe doolhof bouwen die van zichzelf al geen sluiproutes heeft (een "redesign")? Het antwoord is niet alleen welke sneller is; het gaat erom welke van de twee de dief er daadwerkelijk van weerhoudt je geheimen te zien.


De Grote Doolhof-reparatie: Retrofit versus Redesign

In dit onderzoek pakten onderzoekers Arash Razban en zijn team een echt beveiligingslek aan (bekend als CVE-2025-54764) dat werd gevonden in een populaire bibliotheek die wordt gebruikt om gegevens te beschermen op kleine, ingebedde computers zoals die in smartcards of medische apparaten. Het gat zat in de "binary GCD" en "modulaire inversie" routines — in feite de wiskundige motoren die geheime sleutels verwerken. Een hacker die een techniek genaamd "M-Step" gebruikt, kan de computer na elke instructie bevriezen en kijken naar het pad dat de wiskunde nam om de geheime sleutel te stelen.

De onderzoekers zetten een head-to-head strijd op echte siliciumhardware op (een Cortex-M33 chip) om te zien welke defensiestrategie beter werkte: De Retrofit of De Redesign.

De Retrofit (De Reparatieklus):
Het team probeerde de oude, lekke wiskundige routines te repareren. Ze namen de originele code, die geheime-afhankelijke sluiproutes had (zoals een doolhof met verborgen deuren), en dwongen deze om telkens hetzelfde pad te bewandelen. Dit deden ze door de code door elke mogelijke stap te laten lopen, zelfs de stappen die niet nodig waren, en door "branchless" trucs te gebruiken om te verbergen welk pad daadwerkelijk werd genomen. Het was alsof je een hardloper dwong om door elke kamer in een huis te joggen, ongeacht waar de uitgang is, zodat een waarnemer niet kan zien uit welke kamer de loper daadwerkelijk is vertrokken.

De Redesign (De Nieuwe Bouw):
Het alternatief was om de oude wiskunde volledig weg te gooien en te vervangen door een gloednieuw algoritme (genoemd safegcd) dat vanaf de grond af aan is gebouwd om geen sluiproutes te hebben. Deze nieuwe doolhof heeft een vast pad dat er exact hetzelfde uitziet, ongeacht wat het geheim is.

De Schokkende Resultaten: Snelheid en Sluipende Lekken

De onderzoekers maten twee dingen: hoeveel het kostte (in tijd en energie) om deze verdedigingen uit te voeren, en of ze de dief daadwerkelijk tegenhielden.

1. De Kosten van de Patch
De resultaten waren verbijsterend. De "Redesign" was ongelooflijk efficiënt. Echter, de "Retrofit" was een ramp wat betreft snelheid.

  • Voor de GCD-routine was de retrofit 192 keer langzamer dan de redesign.
  • Voor de modulaire inversie was de retrofit 532 keer langzamer.
  • Om dit in perspectief te plaatsen: op de hardware die zij testten, duurde de redesigned routine milliseconden om uit te voeren. De retrofitted routine? Die duurde seconden. Specifiek duurde de retrofitted GCD ongeveer 4,5 seconden per oproep, en de modulaire inversie nam een enorme 25 seconden in beslag. Voor een apparaat dat een deur moet ontgrendelen of een bericht moet ondertekenen, is wachten op 25 seconden praktisch onbruikbaar. De redesign was niet alleen beter; het was de enige optie die het apparaat bruikbaar maakte.

2. De "Ghost Leak"
Hier wordt het verhaal echt interessant. De onderzoekers dachten dat de Retrofit een succes was. Wanneer ze de totale tijd maten die het kostte om de routine uit te voeren, zag de Retrofit er perfect uit. De tijd varieerde met minder dan 2% tussen verschillende geheimen, wat normaal gesproken als "veilig" wordt beschouwd.

Maar toen gebruikten ze een superprecieze tool om de exacte instructies die de computer uitvoerde, stap voor stap te controleren. Ze ontdekten een "ghost leak".

  • In de Retrofit zat een piepkleine, verborgen lus aan het einde van het wiskundige proces. Voor de meeste inputs draaide deze een vast aantal keren. Maar voor één specifieke geheime waarde draaide deze één keer extra.
  • Deze extra stap voegde slechts een paar dozijn klokcycli toe aan de totale tijd. Omdat de totale tijd zo groot was (miljarden cycli), was dit kleine verschil volledig onzichtbaar voor standaard timingtests. Het was alsovergelijkbaar met een dief die een enkele extra knipper van een oog opmerkt in een film van 25 seconden.
  • De M-Step attacker, die elke stap bekijkt, zou deze extra knipper hebben gezien en precies geweten wat het geheim was.
  • De onderzoekers moesten teruggaan en deze kleine lus repareren, door deze te vervangen door een vaste sequentie, om de deur echt te sluiten.

Het Oordeel: Bouw Nieuw, Repareer Niet

Het paper concludeert met een duidelijke boodschap voor beveiligingstechnici: probeer deze specifieke soorten wiskundige routines niet te patchen.

  1. Redesign is Koning: De "constant-time-by-design" benadering (de Redesign) is vele malen superieur. Het is ongeveer twee ordes van grootte (100 keer) sneller dan het proberen te patchen van de oude code.
  2. Timingtests Liegen: Je kunt niet vertrouwen op standaard timingtests om te zeggen of een patch veilig is. Een patch kan er perfect uitzien op een stopwatch, maar nog steeds een piekle, exploiteerbare lekkage bevat die alleen een "single-stepping" attacker kan zien.
  3. Controleer de Stappen, Niet de Klok: Om zeker te weten dat een verdediging werkt, moet je de exacte sequentie van instructies (het pad dat wordt genomen) verifiëren, en niet alleen de totale tijd die het kostte.

De onderzoekers ontdekten dat zelfs nadat ze de "ghost leak" hadden gefixed, er nog steeds een kleine hoeveelheid tijdsvariatie overbleef (ongeveer 2%). Echter, zij bewezen dat dit geen geheim lek was; het was simpelweg het gedrag van de hardware zelf dat licht anders reageerde afhankelijk van de getallen die het verwerkte, een "hardware floor" die zelfs de beste software niet kan elimineren. Maar cruciaal was dat het pad dat de computer nam nu identiek was bij elke uitvoering, wat betekende dat de dief het geheim niet langer kon leren door de stappen te observeren.

Kortom: als het gaat om deze kritieke wiskundige geheimen, probeer niet een oud huis te repareren. Sloop het af en bouw een nieuw huis dat vanaf het begin veilig is ontworpen. Het is sneller, veiliger, en je mist niet de kleine barstjes die een patch achterlaat.

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.

Probeer Digest →