Isogenies and Cryptography Jana Sotáková Ik ben van de generatie die opgegroeid is met de smartphone. Dat kleine dingetje is al bijna 20 jaar in mijn hand geweest en is voor mij de meest belangrijke bron van communicatie met de wereld. Niet alleen om te praten met mijn familie en vrienden, maar tegenwoordig doe ik bijna alles op mijn telefoontje. Toen ik een bankrekening ging aanvragen, ging ik nog naar de bank in de buurt van mijn huis, maar die locatie is al jaren gesloten en alles regel ik via de app. De overheid in Nederland maakt gebruik van DigiD, dus alles wat de overheid met mij wil gebeurt over het Internet. En hoewel mijn eerste belasting-ervaring met het legendarische papieren M-formulier van 80 pagina's was, heb ik al mijn verdere belastingaangiften online kunnen indienen, en zou niet meer weten hoe ik het anders zou doen. Het is bijna onmogelijk om met de online wereld los te breken, en we zijn gedwongen om al onze zaken online te regelen. We hebben daarvoor bescherming nodig, niet alleen voor privacy, maar ook tegen misbruik en inmenging door kwaadwillende actoren. Ik vertrouwde dat de werknemers in het gebouw van marmer echt bij de bank werkten, en dat ze mijn financiële zaken mochten behandelen. Wanneer ik met mijn familie in de tuin aan het praten ben, kan ik rondkijken en beslissen of ik de intieme details van mijn leven wil delen, of er iemand ongewenst aan het luisteren is. Wanneer ik verbonden ben met het internet, wil ik dezelfde garanties. Ik wil dat mijn communicatie versleuteld is: extra beschermd zodat niemand mijn berichten kan lezen (of sterker nog, manipuleren). Dit is gedaan met algoritmes die zorgvuldig zijn gemaakt in het vakgebied van cryptografie. Versleuteling is zoiets als jouw data opslaan in een veilige kluis. Alleen de correcte toegangscode kan het kluisje openen, en zonder de code krijgt niemand de kluis open, zelfs als men dynamiet gebruikt. Een cryptografische kluis is gemaakt van wiskundig materiaal, en dynamiet is alles wat computers kunnen doen. We hebben een goed begrip van wat soort wiskundige materialen we kunnen gebruiken zodat alle dynamiet ter wereld onze kluis niet kan beschadigen. Misschien denk je nu: maar dit geldt niet alleen voor de smartphone, cryptografie is nodig voor alle electronische communicatie. Maar de smartphone is voor mij een voorbeeld van technologie die 50 jaar geleden alleen de droom van visionairen was, 30 jaar geleden een vrij onpraktische curiositeit was, maar sindsdien zo enorm technisch verbeterd is dat het onze hele wereld heeft veranderd. Een andere soort technologie die zelfs meer effect op onze samenleving zou kunnen hebben is kwantumcomputing. Deze term verwijst naar een nieuw type computers die de gebruikelijke 1's en 0's van klassieke computers op een andere manier zouden kunnen manipuleren. Maar we kennen al sommige effecten die kwantumcomputing zou hebben. Tegenwoordig wordt er massaal geïnvesteerd om dit soort technologie werkelijkheid te maken. Het slechte nieuws is dat als de kwantum computers daadwerkelijk zouden bestaan, onze huidige cryptografie niet voldoende zou zijn. In de analogie van een kluis, zouden kwantum computers geen krachtiger dynamiet zijn, maar een totaal nieuwe stof. En daarmee kunnen wij de allersterkste kluizen openmaken. Post-kwantum cryptografie houdt zich bezig met nieuwe wiskundige problemen die ons zouden helpen met het bouwen van kwantum-veilige kluizen. Tegen- woordig zijn de cryptografen bezig met het voorbereiden van nieuwe kluizen: we hebben mogelijke nieuwe materialen bepaald (bijvoorbeeld roosters en hashfuncties) en bereiden nu de beste ontwerpen voor (die dan door overheden en verschillende bureaus worden gestandaardiseerd). Wanneer dat klaar is, moeten we nog de nieuwe kluizen uitgebreid testen en zorgen dat ze wijdverspreid gebruikt worden. Al deze taken vereisen veel inspanning. Maar we moeten meer materialen blijven onderzoeken. Dit is omdat verschillende mensen verschillende behoeften hebben voor de afmetingen van hun kluizen ({cryptografische protocollen). En omdat er altijd de kans is dat een nieuwe cryptografische aanval (ander soort dynamiet) onze kluizen kan verzwakken. In dit proefschrift richten wij ons op één soort materiaal, isogenieën van elliptische krommen. We kunnen denken aan elliptische krommen als simpele knopen (met rijke algebraïsche structuur), en een isogenie is een zijde (een lijntje) tussen twee knopen, gelabeld door een vast priemgetal ell (de graad van de isogenie). De ontstane grafen van isogeniën kunnen verschillende structuren hebben: [afbeelding] De graaf aan de linkerkant is een voorbeeld van een vulkaan van isogenieën: een reguliere, symmetrische graaf. De graaf aan de rechterkant heeft geen van de symmetrieën, en heeft de bijzondere rapid-mixing eigenschap dat als je met een knoop begint en 7 willekeurige stappen zet, je bij elke andere knoop in de graaf met ongeveer gelijke kans uitkomt. Dit is duidelijk niet waar aan de linkerkant. Cryptografen hebben protocollen gemaakt van beiden. Aan de rechterkant, als je twee willekeurige knopen kiest, is het vinden van een verbindende route in de graaf vermoedelijk moeilijk. In de praktijk heeft de graaf niet 50 knopen maar ongeveer 2^256. Een route zoeken in dat soort graaf is zoals een route zoeken in een bos op een maanloze nacht: je ziet de knopen in jouw buurt, maar niet het hele bos. Een van de hoofdstukken van dit proefschrift gaat over dit soort grafen en hun wiskundige eigenschappen. De grafen aan de linkerkant kunnen we ook gebruiken in de cryptografie. We kunnen meerdere zulke grafen maken met dezelfde elliptische krommen voor priemgetallen ell = 3,5,7,dots Meestal zien deze eruit als een cykel (zonder de uitstekende zijden). En voor elk priemgetal is de volgorde van de knopen anders. Dus, we kunnen een paar stappen nemen in de graaf voor ell = 3, daarna switchen naar de graaf voor ell = 5, nemen hier een paar stappen, enzovoort voor een aantal priemgetallen. Verrassend genoeg heeft de resulterende route dezelfde eigenschappen als de graaf aan de rechterkant: met een klein aantal stappen (een paar honderd) kunnen we alle knopen bereiken (alle 2^256 knopen). Protocollen gebaseerd op dit soort constructie zijn de focus van dit proefschrift. Een van de protocollen die we zo grofweg hebben beschreven is CSIDH (``seaside'') van Castryck, Lange, Martindale, Panny, en Renes (2018). We nemen hun bouwtekening voor de kluis en bestuderen die van meerdere kanten. Ten eerste bestuderen we sommige van de wiskundige problemen die ze gebruiken: namelijk het decisional Diffie-Hellman problem (DDH). We vinden dat het CSIDH protocol veilig is, maar identificeren een verrassende eigenschap in gerelateerde protocollen, en veel gevallen waarin het DDH probleem niet moeilijk is. % Vervolgens bestuderen wij implementaties: we implementeren het protocol op een manier dat de timing van de {berekening niets zegt over de geheimen gebruikt in het protocol. Dit is een essentiële eigenschap voor cryptografische protocollen in de praktijk; onze software, CTIDH (uitgesproken zoals ``sea tide''), is het snelste onder constant-time implementaties van CSIDH. Uiteindelijk bestuderen wij de fysieke veiligheid van de kluis: we stellen ons voor dat iemand toegang heeft tot een apparaat dat het protocool uitvoert, en goed getimede fouten kan forceren. We laten zien dat fouten die de richting van de stappen veranderen (met de klok mee of tegen de klok in aan de linkerkant) te veel informatie lekken, die we dan kunnen gebruiken om het geheim te reconstrueren. Grafen van isogeniën zijn een mogelijk materiaal voor het bouwen van post-quantum kluizen. Dit proefschrift verdiept het inzicht in zowel de wiskundige veronderstellingen (het materiaal) als de implementatie (hoe de kluis gebouwd zal worden).