< Terug naar vorige pagina

Project

Nieuwe Methoden in White-Box Cryptografie

Omdat cryptografie alomtegenwoordig in onze digitale systemen te vinden is, worden cryptografische implementaties gebruikt in omgevingen waarbij een kwaadwillende partij het kan aantasten. Toch zijn cryptografische implementaties enkel ontworpen om te beveiligen in het “black-box” model, waar aanvallers enkel kunnen knoeien met de invoer en uitvoer van het primitief, maar ze geven geen beveiliging tegen “white-box” aanvallers, die de volledige controle hebben over het apparaat die de cryptografische berekeningen uitvoert.

Door de hoge vraag naar software implementaties van cryptografische primitieven veilig in het white-box model, zijn er veel zulke implementaties voorgesteld over de laatste twintig jaar. Het bouwen van veilige white-box implementaties is zeer uitdagend, zelfs voor zeer eenvoudige constructies zoals blokcijfers, en tot zover is elke gepubliceerde implementatie gebroken.

Als het eerste onderzoeksdoel van de thesis richten we ons op het ambitieuze doel van het ontwerpen van veilige white-box blokcijfer implementaties. Terwijl in het laatste decennium de cryptanalyse van white-box implementaties significant is geavanceerd en er veel aanvallen zijn gepubliceerd, is er weinig vooruitgang gemaakt op het ontwerp van veilige implementaties en bijna alle implementaties volgen dezelfde ontwerpmethode. In de thesis beschrijven we deze ontwerpmethode en vervolgens rapporteren we onze analyse van een gemeenschappelijk structurele eigenschap die gebruikt wordt in de meeste white-box aanvallen, namelijk de zelf-equivalentiestructuur van het onderliggende blokcijfer. We besluiten het eerste doel van de thesis met de samenvatting van het impliciete kader, de nieuwe white-box methode die de kwetsbaarheid van vorige implementaties voorkomt en die, voor de eerste keer, kan toegepast worden op ARX-cijfers, software georiënteerde blokcijfers die enkel modulaire optellingen, rotaties en XORs gebruiken.

White-box ontwerpen veronderstellen dat het onderliggende cijfer veilig is in het black-box model. Toch is, vergeleken met andere blokcijfers, de veiligheid van ARX-cijfers minder bekend en hun veiligheidsanalyse omvat vele heuristische zoekopdrachten naar cryptografische eigenschappen. Deze eigenschappen zijn traditioneel gezocht via manuele en ad-hoc methoden, maar recentelijk zijn ontwerpers en cryptanalysten gestart deze te zoeken via geautomatiseerde hulpmiddelen gebaseerd op logische vergelijkingen. Terwijl geautomatiseerde methoden op velerlei gebieden gebruikt worden om de beveiligingsanalyse van cijfers te vergemakkelijken, kennen ze enkele theoretische en praktische beperkingen. In het bijzonder limiteren de theoretische modellen de eigenschappen en de cijfers waarop de hulpmiddelen gebruikt kunnen worden en het gebrek aan praktische implementaties vermindert de methode zijn doel van het vergemakkelijken van de beveiligingsanalyse van cijfers.

In het tweede onderzoeksdoel van de thesis adresseren we de huidige gebreken van het automatisch evalueren van de beveiligingseigenschappen van ARX-cijfers. Eerst meten we de huidige stand van zaken op in het modeleren van black-box aanvallen op ARX-cijfers die gebruik maken van geautomatiseerde middelen. Dan leggen we ons formeel model uit dat geautomatiseerde methoden in staat stelt van het zoeken naar differentiële eigenschappen van ARX-cijfers gebruik makende van de modulaire optelling met een constante. Tenslotte stellen we ons praktisch hulpmiddel CASCADA voor, een complete open-source bibliotheek met een gedetailleerde documentatie die velerlei geautomatiseerde methoden implementeert en die een brede klasse aan aanvallen en cijfers ondersteunt.

Datum:29 sep 2017 →  14 apr 2023
Trefwoorden:white-box cryptography, software, key extraction
Disciplines:Keramische en glasmaterialen, Materialenwetenschappen en -techniek, Halfgeleidermaterialen, Andere materiaaltechnologie
Project type:PhD project