 Also ich höre jetzt in Vortrag PostQuantum iSorgeny, Kriptographie, für euch übersetzen in der Besetzung Kabine in Wasago und Pete Priority. Ja, vielen Dank für die Einführung. Danke, dass ihr hier seid, danke an den Hungress, dass es mir eine Möglichkeit gibt, hier zu sein. Damit ich euch über PostQuantum, Kriptografie erzählen kann, über Isogenien und vielleicht die Leute ein bisschen belehren, was das überhaupt heißt. Ich bin nicht so sicher, ob es so viele von euch davon gehört haben. Also springen wir gleich mal rein. Tagsüber bin ich ein Mathematik-Promo-Bent. Ich war an der Universität. Wenn ihr es seid, seid, an welchen Endos seht, dann könnt ihr mich gerne im Privaten fragen. Ich bin auch an Physik interessiert und Konsolenhacking. Ihr könnt uns an den Nintendo Bros. Assembly später finden. Genug davon. Ich habe euch ein paar Bilder und Screenshots von Zeitung haben. Ich weiß nicht, ob ihr davon mitbekommen habt auf den Blogs in Social Media, über das Google Paper über Quantum Supremacy. Da gibt es ein Artikel darüber, dass wir jetzt Quantum Supremacy erreicht haben. Ein anderer Artikel, dass Google das bestätigt, dass es ein Durchbruch ist, was auch immer das bedeutet. Das Googles eigene Blog-Post dazu. Es gibt immer diese Bilder von diesen Gehäusen, die Quantum Computer drin haben. Was bedeutet Supremacy? Der Zustand oder die Kondition besser zu sein als alle anderen in Autorität, Macht und Status? Also etwas Quantum Supremacy zu nennen. Das schreit nach. Das ist etwas ziemlich Cooles. Aber was bedeutet es eigentlich? Was bedeutet es für uns? Ich glaube, ich könnte euch alle von Ängsten befreien, die ihr hatten. Für uns in der Praxis bedeutet es heute erstmal nichts. Aber noch nicht viel. Für Kryptografie sind keine unserer unterliegenden Annahmen wirklich aktiv kaputt. Aber in der Theorie sind sie kaputt. Also nur in der Theorie kaputt sind, können wir immer noch die Entwickler und die Implementierer die Schuld in die Schuhe schieben. Aber, wie ich bereits geschrieben in einem Abstrakt geschrieben habe, sollten wir eher safe als sorry sein. Ab dem Zeitpunkt, an dem die Computer wirklich die Möglichkeit haben, das zu brechen, dann sollte man eher heute anfangen als genau wie im Klima. Man sollte heute anfangen, das Klima zu retten, bevor es dann irgendwann zu spät ist. Es gibt auch so drei weitere Vorträge, die ich hier ein bisschen bewerben möchte. Ich weiß es nicht mehr genau in welchem Tag, aber die Beschreibung sieht ziemlich interessant aus. Es geht an über beweisbare Insicherheit und dann Kryptografie entwirrt und heilschönes Kryptosoftware. Dann kommen wir zurück, worüber ich reden möchte. Das ist was ich ein Post-Granter im Kryptografie nenne. Es sind ein paar Buzzwords, wo man nicht genau wissen muss, was die bedeuten. Lettages, Gitarre, Codes, multivariate polynomial systems, hash-basiert, Kryptografie. Und dann gibt es den, über den ich jetzt reden möchte, der nennt sich Super-Singular, das ist das, was mich sehr interessiert, dieser Isogenin. Und jetzt möchte ich euch erzählen, warum die so toll ist. Ich weiß es nicht, wie viele von euch jetzt in den Hintergrund in Mathe haben. Sie können vielleicht Leute die Hand heben, wenn sie an Ausbildungen eingebracht haben. Ein bisschen Drogation, es gibt die Dezimalzahlen, zum Beispiel Pi. Dann gibt es Rationalzahlen, so ein Hype, ein Drittel und so weiter. Da gibt es die ganzen Zahlen, von Minus unendlich bis unendlich. Die haben einen ganzen Schritt, sich unterscheiden. Aber für Kryptografie möchten wir das ein bisschen besser verhalten. Wir möchten endliche Mengen von Zahlen. Und die, die mit ihren Armen sind die ganzen Zahlen Modulo N. Man nimmt eine positive Zahl N und betrachtet die folgenden Mengen von 0 bis N. Oder N minus 1. Es gibt eine gewisse Addition und Multiplikationsregeln. Also hier zum Beispiel, man kann sich hier anhand der Ziffernblatt geguckt visualisieren. Wenn man jetzt 10 und zu 5 addiert, Modulo 12, dann geht man von 10 und zwei Stellen nach rechts und als Modulo 0, das ist dann quasi der Übertrag. Und dann geben wir drei weitere Schritte. Also 10 plus 5, Mod 12 ist 3. Also die Zahlen verhalten sich alle in dieser Art. Also einfach Addition auf einem Ohr. Für die Informatiker unter euch. Für alle Business natürlich. Es gibt natürlich die 8-Bit Integer, wo N dann eben 2 hoch 8 ist. Und so weiter und so fort. Das sind die Zahlen, mit denen wir zu arbeiten möchten. Diese Isogenen leben in einer Welt, wo wir mit ähnlichen Zahlen die mit N zusammenhängen. Für N wählen wir meistens eine Primzahl. Und wir finden das dann, dass wir einen körper mit endlich vielen Elementen finden. Diese Körper hat genau P-Elemente dann. Und er hält sich genauso wie die realen Zahlen. Man kann addieren, modifizieren, außer mit 0. Wir können mit allem modifizieren, aber eben nicht mit Teilen, aber nur nicht mit 0. So im Prinzip ist alles invertierbar. Und Computer können das tun. Es gibt aber auch Körper mit Primzahlpotenzen, also mit P hoch R Elementen. Aber die sind nicht dasselbe wie Z nach P hoch R Z. Aber das müsste das Einzige, was ihr wissen müsst. So. Und das kryptografische Problem, worauf ich mich konzentrieren möchte in diesem Vortrag ist, wie macht man einfach einen Key-Austausch. Einfach auf dieses einfache Problem zu konzentrieren. Wie tauschen Alice und Bob einen Key aus, ohne dass jemand anderes Zugriff drauf hat. Da gibt es klassische Lösungen dafür. Man bringt einen Toten in den Koffer und bringt ihn zu Alice. Oder man zahlt jemanden, um ihn zu Alice zu bekommen. Oder man macht einen Koffer mit einem Schloss und schickt ihn hin und her. Und jeweils immer weitere Schlösser daran. Aber wir möchten das in einem einfachen und instantanen Art und Weise machen. Mit Mathematik. Dieses einfache Problem darauf, wenn wir uns jetzt konzentrieren. Klassischerweise, was auch immer das bedeutet, haben wir das, wurde das von Devin Hermann gelöst, von 1976. New, nennt sich neue Richtung in Kryptografie. Was wir dort erfunden haben, ist eine Art und Weise, wie man zwischen zwei Parteien Schlüssel austauscht. So wie funktioniert es? Ich erzähle euch jetzt kurz, wie das funktioniert. Es gibt zwei Parteien, Alice und Bob, die sich auf einen sicheren Primzahl Modulus N einigen. Und Generator G. Was bedeutet es in meiner Menge, möchte ich ein Element auswählen, so dass jedes andere Element als Produkt von diesem Element geschrieben wird. Also es ist ein Generator von diesem Feld. Das ist mein Stadt. Hier sind Alice und Bob. Und sie haben sich auf diese zwei Parameter geeinigt. Wie tauschen sie jetzt einen Schlüssel aus? Das ist sehr symmetrisch. Alice wählt sich in zufälligem Element aus. Und sendet G auch A Modulus N an Bob. Und Bob macht das genau das Gleiche. Alice auf der Left sucht sich ein zufälliges kleines A und sendet das große A an Bob. Bob wählt sich ein kleines zufälliges B aus und sendet das groß B an Alice. Und jetzt müssen die das irgendwie kombinieren. Und wie machen sie das? Sie rechnen sich diesen geteilten Schlüssel aus. Alice nimmt das B, das sie von Bob gekommen haben und potenziert das mit ihrem eigenen A und Bob macht das selbe. Und durch die Mathematik bekommen beide das gleiche kleinen K. Und jetzt erzähle ich auch, warum das schwierig ist für die anderen, für jemand anderes, der an darf, das kleine K zu kommen. Und ich schreibe das jetzt mathematisch auf. Und möchte ich euch ein bisschen darüber erzählen. Das ist dieses komotative Diagramm, das diesen Schlüsselaustausch repräsentiert. Bob und Alice starten beide links oben mit dem kleinen G und enden beide rechts unten mit dem G hoch AB. Also beide können dieses G hoch AB berechnen. Und wie funktioniert das? Alice berechnet ohne die horizontalen Pfeile. Also sie potenziert nur mit klein A. Das ist nämlich ihr zufälliges geheimer Schlüssel. Und Bob nimmt nur die vertikalen Pfeile. Und aufgrund der Kompetitivität und der Assoziativität der Potenzierung kommen beide dasselbe aus. Irgendwo darin versteckt sich jetzt ein Problem, das wir gerne das diskrete Logarithmus-Problem nennen. Und gerade für ganze Zahlen, Modulus N, glaubt mir eins noch nur, dass wenn ich es richtig wähle, wenn ich euch Y und G gebe, dann ist es für euch sehr schwierig dieses kleine X zu finden. So ähnlich wie den Logarithmus zu berechnen von GeoX. Nur das wir jetzt eben nur die ganzen Zahlen nehmen. Oder dieses endliche, die endlich Menge annahmen. Und das ist ein sehr schwieriges Problem für klassische Computer. Und der beste klassische Algorithmus, der dieses Problem legt, ich werde das nicht da explizite rüber, ich rede einfach nur von generischen Algorithmen. Und der beste Algorithmus, da karten eine Laufzeit von Wurzel groß n. Zum Beispiel wenn wir jetzt n, wenn wir n so wählen wie 2 hoch klein n, also n-Bit, dann braucht das exponentielle Zeit nn. Die Potenz von 2 hoch n ist immer noch sehr groß. Wenn ich jetzt n 1.000 mache, dann sind es immer 512 bits. Das ist ein sehr schwieriges Problem. Aber es gab vor kurzem ein Rekord, die Faktorisierung für DLP zu machen. Über ein 795-Bit Modulus. Und die haben ein bisschen besseren Algorithmus verwendet. Aber es hat sie immer noch sehr lange viel Zeit gekostet. Und das hat ihnen irgendwie 4.000 Core Kernjahre gekostet. Das ist eine sehr lange Zeit. Also es ist möglich, das zu lösen. Wenn man hammer groß genug ist, dann kann ich das Problem lösen. Wie gesagt, man kann n sehr, sehr groß wählen. Aber es gibt einen Quanten Algorithmus dafür. Das ist ein anderer Paper von 95, Peter Schor, hat sich diesen Algorithmus ausgedacht, der diese Probleme in ein polinomischer Zeit löst. Er erinnert euch vorhin, was 2 hoch n und hier in dem Fall ist es einfach n hoch 3. Und das ist nicht sehr groß. Wenn n 1.000 macht, dann ist n noch hoch 3, dann ist 1.000 noch 3 immer noch sehr klein. Das ist ein sehr guter Algorithmus, der davon ausgeht, dass es einen Quanten-Computer gibt. Aber diese Algorithmus theoretisch kann dieses Problem lösen. Aber vielleicht in 100 Jahren oder 1.000 Jahren, sobald es einen Quanten-Computer gibt, der diesen Algorithmus ausschönen kann, dann ist der 4-Helmen kaputt. Was machen wir also? Lass uns einfach mal Kryptografie überlegen, von der wir nicht von der Existenz eines Quanten-Algorithmus wissen. Da gibt es ein paar Kandidaten, also etwa dieses sehr lange Wort und dann isogeniemt. Wovon ich euch erzählen möchte, ist, was ist eine Esogenie und wie machen wir damit einen Schlüssel-Austausch? Das ist erst mal ein dekoratives Wort, aber was bedeutet das? Und da gab es noch dieses andere Wort, mit dem ich angefangen habe, nämlich elliptische Kurven. Was bedeutet denn das eigentlich? Also möchte ich euch das erklären oder euch eine Erinnerung geben, falls ihr es schon mal gesehen habt. Also ihr seht 2 Variablen und 2 Konstante, die Variablen y und x, und die Konstante a und b. Und die Gleichung ist y², das ist gleiche x3 plus ax plus b. Und dafür möchten wir jetzt alle Lösungen, alle möglichen Paare y und x suchen, die das lösen. Insbesondere natürlich für die verschiedenen Zahlen-Typen, die wir da hinein tun können. Etwa wie reelle Zahlen, also edizimal Zahlen. Und eigentlich möchten wir es aber natürlich über endlich einen Körper antun, denn die mögen wir. In diesem Beispiel sieht ihr jetzt eine elliptische Kurve für a gleich 0 und b gleich 1. Also y² ist gleiche x3 plus 1 über r. Dann sieht die Lösungsmenge so aus. Und die geht in die unendlichen Weiten sowohl oben rechts als auch unten rechts. Wenn wir uns das jetzt auf dem endlichen Körper ansehen und die Achsen entsprechend das kritisieren, sieht es halt aus wie so eine Menge von Punkten. Wir sehen, elliptische Kurven sehen unterschiedlich über verschiedenen Körpern aus. So ist es okay. Wir haben jetzt eine kleine Erinnerung, warum Leute elliptische Kurven mögen. Es gibt so etwas wie eine Regel, um Punkte zu addieren. Also gegebenen zwei Punkte auf den Kurven können wir sie addieren. Das ist nicht Addition, wie ihr euch das auf den Zahlen vorstellen würdet, sondern eine Regel auf Basis dieser Kurve. Wie würde das also etwa auf dieser realen Kurve, die wir uns gerade angesehen haben, an, wir nehmen uns die zwei Punkte, verbinden die über eine gerade und dann ist die Summe genau der Schnitt, von dem wir halt wissen, dass es denen im allgemeinen Zustand geben muss. Also wenn wir durch zwei Punkte in die Kurve schneiden, muss es einen dritten Punkt geben und das nennen wir genau diese Summe. Und nachdem wir es an der X-Achse reflektiert haben und das definieren wir als die Summe in dieser beiden Punkte. Das funktioniert. Wir können Punkte addieren, wir können sie subtrahieren. Das benennt sich ungefähr wie die ganze Zahl in Modulo N. Also ungefähr, das ist halt nicht ganz dasselbe. Wir markieren auch noch einen speziellen Punkt, so ein hübsches O, den Ursprung. Und diese Ursprung benennt sich etwa wie eine Null. Also wenn wir einen Punkt mit seinem Inversen addieren, kriegen wir Null. Oder wenn wir einen Punkt und Null addieren, behalten wir einen Punkt. Wir können außerdem Punkte multiplizieren mit ganzen Zahlen. Das könnt ihr auch von anderen Objekten. Es ist einfach, was bedeutet das? Ein Punkt halt N mal mit sich selbst addieren. Das ist angenehm. Wenn wir genauer hinsehen, können wir uns diese spezielle Menge ansehen. Das nennen wir eh mit Klammern N. Das sind dann genau die Punkte auf dieser Kurve, die multipliziert mit N Null geben. Und diese Menge für die mathematisch beschlagende Menschen unter ins sind die Entorsion dieser elliptischen Kurve. Und das benennt sich ungefähr wie zwei Kopien von additiven ganze Zahlen Modulo N. Und das ist jetzt, wo dieses super singulär herkommt. Es gibt verschiedene Definitionen, aber das ist eine. Wenn wir nicht über den realen Zahlen sind, wenn wir über einen endlichen Primkörper und uns die P-Torsion ansehen, dann verhalten die sich verschieden für verschiedene Kurven, nämlich wenn diese Torsion hier Null ist, nennen wir sie super singulär. Und wenn es einfach Z Modulo Pz ist, dann ist es eine gewöhnliche Kurve. Es ist nie wichtig zu wissen, was das bedeutet. Es ist nur einfach, dass es diese Unterscheidungen gibt. Das ist irgendwo in der Mathematik tief verbuddelt. Und weil diese Entorsion gerade diese zwei additiven Gruppen Z Modulo N Z sind, können wir zwei Erzeuger wählen, diese P's und Q's. Also hier ein P und Q. So dass A mal P plus B mal Q alle möglichen Entorsionspunkte beschreiben. Wir können uns also das Diskriter-Logatmus-Problem auf dieser Gruppe ansehen. Und wir wissen aber, naja, Diskriter-Logatmus mit Chorus-Argorithmus lässt sich hier lösen. Das erzeugt uns also dasselbe Problem wie vorher, wir müssen irgendwas besser machen. Und das ist der Punkt, wo wir von Isogenin reden. Eine Art, wie wir über Isogenin nachdenken können, ist, erinnert euch, wie wir an Z Modulo N Z angekommen sind, indem wir einfach Z durch die N-Fachen geteilt haben. So was Ähnliches können wir machen mit elliptischen Kurven. Wir nehmen einen Teil dieser Entorsion, dieser elliptischen Kurve, und können die elliptische Kurve teilen durch diese Entorsion. Und wir stellen fest, dass es mathematisch tatsächlich wohl definiert und gibt eine neue elliptische Kurve. Wir nehmen also einen Teil dieser Entorsion einer Kurve E1 und diesen Teil G und können eine neue Kurve definieren E1 Modulo G und NZ E2. Und wir kriegen tatsächlich sogar etwas mehr, nämlich auch eine Abbildung von E1 nach E2. Und das nennen wir eine Esogenie. Für uns ist es also eine Esogenie, an diesem Punkt einfach nur eine Abbildung, die uns von einer Kurve zu einer anderen bringt. Das ist auf eine gewisse Art und Weise speziell, nämlich die respektierenden Additionen auf diesen elliptischen Kurven. Wir können zwei Punkte auf der Kurve E1 nehmen, sie addieren, und dann die Esogenie anwenden oder aber wir nehmen uns die beiden Punkte, wenden jede Esogenie an und addieren sie dann auf der neuen Kurve. Und das ist leicht. Das ist angenehm und speziell. Das ist genau das, was ich gerade gesagt habe. Und jetzt muss ich noch eine Definition einbringen. In Mathematik nennen wir den Kern einer Abbildung all die Eingabewerte, die auf Null abgebildet werden. Wir haben diesen Ursprung gesehen, der sich wie eine Null benimmt. Und wir nehmen als Kern der Abbildung genau all die Punkte dieser Esogenie, die auf Null geworfen werden. Und der Kern der Esogenie ist gerade genau gegeben von diesem G innerhalb dieser Entorsion, dieser ersten elliptischen Kurve. Also das ist der Kern von phi, genau die Urbilder von Null, genau das G. Was genau der Anteil war, den wir benutzt haben, um diese zweite Kurve zu bauen. Es gibt also zwei Wege, wo wir diese Esogenie nachdenken können. Das eine ist, wir können mit dem Quotienten starten und eine Esogenie erhalten. Oder andererseits, eine Esogenie haben, finden was der Kern ist, etwa ein G und dann den Quotienten bilden. Zuletzt finden wir also, es gibt eine Korrespondenz zwischen den verschiedenen Untergruppen dieser Entorsionen einer elliptischen Kurve und der Esogenie, die aus E1 heraus abbilden. Also können wir diese Definitionen austauschbar verwenden. Und ja, natürlich kann ich verschiedene Ents benutzen. Also kann ich viele verschiedene Esogenien aus einer Kurve herausfinden und definieren. Was wir aber in der Praxis tatsächlich wollen, ist, dass wir diesen Esogenien rechnen. Das ist bis hierhin Abstract Nonsense, ich habe euch noch überhaupt nichts darüber erzählt, wie man damit rechnet. Es ist also nicht nützlich, wenn wir es in Praxis nicht einsetzen können. Wir können sie ausrechnen, es gibt Formeln und die Kosten gehen aber hoch, wenn wir das N hochfahren. Also möchten wir eigentlich kleine Ns nehmen, also kleine Potenzen oder kleine Primzahlen, etwa 2 oder 3. Und es sind genau die supersingulären Kurven, für die wir die möglichen N sehr einfach kontrollieren können. Wenn wir also mit supersingulären elliptischen Kurven über dem Körper mit p² Elementen arbeiten, dann mit der Primzahl 2n mal 3n plus minus 1, dann sind Ns wie 2n und 3n legitime Wahlen. Das ist hier nicht besonders interessant, aber es ist sehr wichtig für die Implementation und es ist wichtig zu wissen, dass wir die Esogenien haben, die wir gerne benutzen wollen. Und es gibt eine andere wichtige Begründung dafür und die ist interessant für Kryptografie. Fangen wir also bei einer beliebigen Kurve an. Nicht unbedingt eine supersinguläre, sondern irgendeine. Und wir schauen uns alle 2 Esogenien an, die da heraus abbilden können. Und von diesen Zielkurven sehen wir uns wieder alle möglichen 2 Esogenien an und sofort. Das jetzt definiert einen Grafen, wo die Punkte, die Kurven sind und die Kanten, die Esogenien. Ihr seht also irgendwie hinter Inkulissen spielt dieser Graf, und wenn man das jetzt für eine supersinguläre elliptische Kurve macht, dann findet man etwa so einen Grafen, ich weiß nicht mehr für welche Primzahl, und hier seht ihr, jeder Knoten ist eine elliptische Kurve und jede Kante eine Esogenie. Das ist ein Beispiel für ein supersingulären 2 Esogenie-Graf. Das können wir auch für andere End machen, sagen wir etwa für Englach 3, wenn das denn möglich ist. Was ist jetzt wichtig an dem supersingulären Grafen? Das eine ist erst zusammenängend. Es ist ein Ramanujan-Graf. Darüber werde ich in einer Sekunde was sagen. Und als zusätzlicher Bonus ist der Körper, über dem das definiert ist, im endlichen Körper mit p² Elementen, das ist nützlich für effiziente Implementationen. Wenn man keine supersingulären Kurven nimmt, dann könnte dieser definierende Körper wachsen und das wäre schlecht für die Implementation. Für die supersingulären passiert das nicht. Also passieren hier magisch reichlich Dinge, die gut für uns sind. Warum ist es wichtig, dass das ein Ramanujan-Graf ist? Er hat ein paar optimale Erweiterungseigenschaften. Wenn ich bei einem zuverlingen Punkt in meinem Graf starte und zufällig weiterlaufe, mit logarithmischer Erweiterungszeit in der Anzahl der Knoten, dann finde ich einen ziemlich gleichverteilten Platz in dem Grafen und das ist halt super für Kryptografie. Denn wir wollen nur lock viele Schritte benutzen müssen, um einen scheinbar zufälligen Status in dem Grafen zu erreichen. Sieh doch erst etwa an diesem Beispiel an, wie ich es gestartet habe und für ihr Haus machen wir ein paar zufällige Bewegungen. Und ihr seht, wo die blauen Punkte rausgekommen sind. Das beweist zwar nichts, aber ihr könnt an, dass es eine gute Verteilung ist. Es ist halt gut für Kryptografie, aber es gibt andere Gründe. Also wir können tatsächlich auch berechnen, wie viel von diesen Kurven wir haben in unserem Graf. Wenn ich mal wisse, wie viel Kurven es in dem Graf gibt, dann kann ich jetzt auch nicht über die Sicherheit aussagen, aber gerade für die Supersymbolen kann ich sagen, dass es ungefähr P über 12 gibt. Wenn ich jetzt P so in Bit wähle, dann weiß ich ungefähr, dass es ungefähr zwei Wochen Elemente hat. Und da sehe ich jetzt mal, dass es über die kryptografische Stärke, also wenn ich in Groß wähle, dann haben wir diesen zufälligen Graf, und dann weiß ich eben, wie lange mein Algorithmus ungefähr laufen wird. Und das ist auch das, warum wir diese Kurven betrachten möchten. Hele ich euch sagen kann, wie viele Elemente diesen Graf drin sind. Kurze Sammpfassung, was wir gesehen haben. Wir getten also eine kompakte Darstellung eines L plus 1 regulären Grafen, zum Beispiel für L gleich zwei oder drei. Es geht auch mit größeren, aber darum kümmern wir uns gar nicht, weil das, was uns die schnellste Arithmetic gibt, sodass wir über dem Körper P² arbeiten können. Ich kann euch sagen, dass es ungefähr P über 12 Punkte gibt. Und diese Graf hat eben gewisse mischende Eigenschaften, die sehr praktisch sind für kryptografische Anwendungen. Und nochmal, wenn wir eine N-Bit Primzahl wählen, dann hat der Graf ungefähr zwei auch N Punkte. Ich stelle es hier raus, dass es es gibt ein paar schwere Probleme, ein paar harte Probleme, die keine guten Quantenalgorithmen haben. Ein hardes Problem ist zum Beispiel wenn man zwei supersinguläre ellipzische Kurven hat, also einfach zwei zufällige Kurven in diesem Graf und ich frage euch, ich finde ein isogenien Fahrt von zwei Isogenien oder so weiter, dann hat das kein guten Quantenalgorithmus. Klassischerweise der beste bekannte Algorithmus hat Komplexität von P hoch ein Viertel und das Algorithmus ist ein bisschen besser, hat P hoch ein Sechsten. Es ist nicht so wichtig, was da oben steht, aber was wichtig ist, es gibt keine Algorithmen, die im polinomischen Zeit laufen. Ich mach das P also sehr groß und dann braucht der hypothekische Quantencomputer dafür sehr, sehr lange. Und das ist cool. Also wie tauschen jetzt Kies aus? Wir starten also mit so einer leeren ellipzischen Kurve, so dass zwei und drei Isogenien möglich sind und Alice wählt eine zufällige Untergruppe A der Torsion und sendet diesen E durch A an Bob. Und Bob macht das gleiche, er wählt eine zufällige Untergruppe und sendet seine Isogenie an Alice. Also E über B ist das gleiche wie eine Isogenie. Das ist das Bild, das wir bekommen. Alice hat sich A ausgewählt, Bob hat B ausgewählt. Alice sendet E über A an Bob und Bob sendet E oder B an Alice. Und wie einigen sie sich jetzt auf einen geteilten Schlüssel und sie teilen einfach die Untergruppe, definiert von A und B. Und das, was rauskommt, ist dasselbe für Alice und Bob. Wie funktioniert das also? Gehen wir noch mal zu unserem Grafen zurück. Angenommen Alice und Bob einigen sich auf die schwarze Kurve, die schwarze in die schwarze punktfällige Seite. Und Alice berechnet diese roten Schritte. Das entspricht der Wahl einer Untergruppe für ihre geheime Untergruppe, berechnet sie diesen Weg und endet dann an der roten Kurve oben rechts. Bob macht das gleiche, aber Bob ist das nicht in zwei Grafen, aber in drei Grafen. Und die schwarze Kurve ist da unten, also die Kurve, die aus sich ausgewählt hat, rechnet sich seinen geheimen Pfad aus und endet an der blauen Kurve. Bob sendet die blaue Kurve an Alice, Alice sendet ihre rote Kurve an. Und Alice betrachtet jetzt die blaue Kurve in ihrem zwei Graf. Sie startet von der blauen Kurve und berechnet den selben geheimen Pfad und endet an dem grünen Punkt. Bob kriegt die rote Kurve an Alice, er hat die rote Kurve hier oben, rechnet den Pfad und endet an der grünen Kurve. Und es stellt sich heraus, dass der grüne Punkt in den beiden Grafen hier, was die selbe Kurve ist, ist SEDH. So tauscht man einen geheimen Schlüssel über diesen super singulären, isogenen Graf aus. Jetzt vergleichen wir diese beiden Sachen einmal. Dann DLP und den SEDH. Vorgehensweise hatten dieses Commodative Diagramm. Alice und Bob haben links oben angefangen und sind dann am Ende rechts unten ausgekommen. Und für SEDH sieht es sehr ähnlich aus. Alice und Bob sagen fangen wir den gemeinsamen Kurve E an, oben links. Genauso wie vorhin Alice und Bob Alice nimmt nur die Hautsentalenpfeile, weil sie kennt ihre geheime Gruppe A. Bob macht das gleiche B für die vertikalen Pfeile. Und sie enden beide in der Rätenrechte unteren Ecke. Aber der geteilte Schlüssel ist jetzt nicht G-hoch AB, aber diese elektrische Kurve. Es gibt halt eine mathematische Möglichkeit, eine eindeutige Nummer dem zuzuweisen. Also das jetzt irgendwie ein Bytes zu verwandeln. Das ist SEDH, das ist alles. Ein schönes Beispiel von einem PostQuantum Kryptografie Schema, das wir heute haben. Eine kurze Zusammenfassung. Ich habe euch diesen Zoo gezeigt, da gibt es mehrere Kandidaten für diese PostQuantum-Kryptografie. Einer dieser sind einige Schemas, die auf diesen supersingulären elliptischen Kurvenisogenien basieren. Wir haben gesehen, wir kennen viele Probleme, die sich um diese Isogenien drehen, die schwer sind, für Quantencomputer sie zu lösen. Das ist ein mögliches Schema für eine Quantencomputer-Welt. Wir stellen uns nicht vor, dass eine Welt vorhin der Leute wie ihr oder ich einen Quantencomputer haben, sondern eine gewisse Regierungspersonen Zugriff darauf haben. Was wir gesehen haben, dass wir ein Diffie-Helmen-Key-Exchange ausgeführt haben. Was ich noch nicht erzählt habe, ist, das gibt also auch Schemas für Signaturen, Schemas für Schlüsselverkapselung. Also es gibt auch andere Kandidaten für andere Kryptografische Blöcke, die man hier finden kann. Wenn es euch wirklich interessiert, dann könnt ihr entweder mich fragen oder zu unserer Assembly kommen. Und wenn ihr gerne wissenschaftliche Paper lest, gerade Papers über Isogenien und Kryptografie im Allgemeinen, dann findet ihr das auf dem E-Print Archive. Das ist eine Homepage, wo Leute ihre Preparants veröffentlichen. Und es gibt eine riesige Auswahl an Papers darüber an dem Paper über Isogenien. Damit möchte ich mich bei euch allen für eure Aufmerksamkeit bedanken. Gibt es irgendwelche Fragen? Ich habe ein Signal-Engel, der eine Frage hat. Könnt ihr ganz so Literatur erwähnen für den theoretischen Hintergrund? Es gibt ein paar Papers. Die Frage war nach der Literatur. Ja, gibt ein paar Papers. Mit netten und theoretisch tiefgehenden Zusammenfassungen über diesen Hintergrund. Und die besten Wetten sind genau auf diese E-Print Adresse zu geben, die ich euch gerade gezeigt habe. Seht einfach nach Isogenies, SIDH. Vielleicht etwas wie eine kurze Einführung, wenn wir sie so genähen. Aus dem Kopf kenne ich sie nicht, aber es gibt sie. Und es gibt ein, gerade erst kürzlich erschienenes Paper von Craig Estello. Das ist eine gute Quelle wäre dafür. Isogenien für Anfänger. Du hast eliptische Kurven benutzt. Du hast eine Alkabarage der Gruppe benutzt. Um diese Isogenie-Grafen zu berechnen. Warum? Du benutzt also eliptische Kurven. Was sind die Eigenschaften von eliptischen Kurven als Gruppe? Kannst du eine beliebige Gruppe benutzen, um diese Grafen zu berechnen? Und kann man diese dann als Basis für ein Schema zu benutzen, um einen Schlüssel auszutauschen? Die Frage war, warum Isogenie-Grafen und eliptische Kurven nicht irgendwelche anderen Gruppen? Dazu gibt es im Grunde eine zweifache Antwort. Gehen wir einfach mal auf meine Backup-Folien. Ihr seht, hier wird ein bisschen extra Informationen geschickt. Und dasselbe kommentative Diagramm lässt sich tatsächlich auf eine andere Gruppe berechnen für SIDH. Aber der Graf, den man kriegen würde, ist wahrscheinlich nicht interessant. Sind also schon Eigenschaften dieser eliptischen Kurven, die das interessant machen in der Kriptografie? Aber ja, in Theorie geht das für die Gruppen. Wie gut sind also klassische Algorithmen, die versuchen, dieses SIDH zu knacken? Das wäre die Grenze für Mikros, die Schlüsse sein müssen, um sicher zu sein. Wie gut sind klassische Algorithmen? Ich glaube, die Laufzeit ist ungefähr Wurzel aus P. Wie sicher bist du, dass es auch wirklich für einen Quantencomputer sicher ist? Ich bin bereit. Ja, natürlich. Kriptografie geht das immer irgendwie um Vertrauen. Hier jemand stellt ein Problem vor, und wenn es da 40 Jahre nicht kaputt ist, sind wir ganz optimistisch, dass es schwer zu knacken ist. Und wenn man da sagt, man ist weiter zu finden, das sind wir ganz optimistisch. Und das hier ist eine Frage, die halt nur Zeit beantworten kann. Eine Frage von dem Internet, das ist möglich zu beweisen. Ist es kein Algorithmus für das Problem gibt, der das Problem in polynomialer Zeit löst? Gute Frage. Wie zeigt man, dass es keinen Algorithmus gibt? Das ist ein schwieriges Territorium. Geben tut das jedenfalls noch nicht. Auf dem letzten Folie sagst du, dass es schwierig ist. Aber das kann nicht wahr sein. Weil wir wissen nicht mal, ob ein Algorithmus überhaupt, wenn wir nicht beweisen können, ob ein Algorithmus überhaupt hart für ein klassischen Computer ist. Das sind die selben Innovationen, die halt über Faktorisierung haben. Was erwähnt, dass es mehrere Kandidaten gibt und alle fühlen sich intuitiv ähnlich wie die klassischen Probleme? Ist das dieser Kandidat, den du vorgestellt hast, der Kandidat, auf den du wetten würdest? Das ist der beste Kandidat für Post-Quantum-Kryptografie? Seine Meinung ist natürlich total valide. Wir haben keine Ahnung. Wie etabliert man, dass man sowas vertrauen kann? Man wartet ausreichend Jahre, sagt irgendwie, okay, niemand hat was gefunden. Diese Dinge sind ziemlich neu. Persönlich, wenn ich an diese Dinge nicht glaube, dass es so lange nicht genug Zeit vergangen ist. Mein Grund, mir das hier anzusehen, ist, dass er die mathematische Neugierde und die Kryptografie, die dabei rauskommt, ist für mich eher eine Nebenwirkung. Also, ich möchte hier keine Wetten abgeben, welches davon die Post-Quantum-Kryptografie zugrunde ist. Du hast gesagt, dass es hart ist für die klassische und für die Quanten-Kryptografie Art und Weise. Ich habe jetzt aber vor kurzem Paper gelesen, vom letzten Jahr über eine komponierte Art und Weise zwischen klassisch und Quanten-Kryptografie. Die beide in den Schatten stellt. Glaubst du, dass es auch für dieses Problem relevant ist? Um das es eben ein polynomialer Zeit zu berechnen ist? Das ist denkbar. Das ist die Frage. Es gibt ein Algorithmus, der klassisch und Quantum zusammenbringt, um das zu knacken. Na ja, wenn wir es dazu ansehen, auch Schauer hat einen klassischen und einen Quantenanteil. Mir ist nicht klar, welchen Algorithmus du nachgelesen hast. Also, jeder solcher Algorithmus hat klassische und Quantenanteile. Frage aus dem Internet. Kannst du die anderen Mitbewerbe erwähnen? Es gibt so viele Kiefer-Kapselungen, aber ich folge den NIST Schattenriss nicht. Das könnt ihr aber auf den NIST Webseurer hier ansehen. Und da wird dann auch beschrieben, welche dieser Teilnehmerien aufgetan oder welche Mathematik sonst basieren. Wo weiß ich nicht viel, sorry. Wenn ich jetzt alles richtig verstanden habe, diese Isogenien sind Gruppen-Homomorphismen zwischen diesen elliptischen Kurven und die Faktokruppe durchgeteilt durch G, die eben einen Kern von G hat. All das, was du gesagt hast, ist, das Isogenie-Fahrt zu finden, ist ziemlich schwierig. Wäre nicht die richtige Schwierigkeit, alle Untergruppen zu finden, weil alle Gruppen-Homomorphismen einfach nur die kanonische Projektion. Ich sehe, du hast Mathematisches Training, gefällt mir. Wenn du diese Folie ansiehst, die diese Untergruppe definieren, also ist, diese Geniebfahrt zu finden, kann man dann dazu das Alpha oder Beta zu finden. Also ja, es schreibt das Problem um, aber bleibt schwer. Kann man das Spiel noch weitertreiben? Kann man hier dimensionale Varitäten anbetrachten, um das noch sicherer zu machen? Oder ist das nicht zugänglich, um das zu berechnen? Definitionskörper? Die Frage, wer kann man höher dimensionale, abelsche Variitäten benutzen? Ja, man spricht davon, dass diese Dinge verschiedene Dimensionen haben, die Dimensionen sind einstinger. Die Frage ist, gibt es Dimensionen 2 oder 3? Wenn wir uns etwas diskutieren, das Problem auf den elliptischen Kurven ansehen, hat man darüber nachgedacht, ob man das in Dimensionen 2 oder 3 kann. Und dann hat man aber festgestellt, dass das DLP-Problem in höheren Dimensionen einfacher wird. Was man natürlich machen kann, ist, dass sich Isogenin-Dimensionen 2 oder 3 ansehen. Und das Problem ist, für elliptische Kurven können wir Isogenin relativ effizient berechnen. Und das wird schwer, wenn die Dimensionen größer werden. Für Dimensionen 2, sind die einzigen Isogenin, die wir effizient berechnen können, 2 und 3 Isogenin. Dafür gibt es dann Bibliotheken, die das für kleine Prim zahlen können, für 2 und 3 Isogenin. Und Dimensionen 2, Variitäten kommen alle von hyperelliptischen Kurven. Und dann landet man manchmal in einem Punkt in dem Grafen, der nicht von der hyperliptischen Kurve kommt. Ich bin froh, dass sich das in Geschlecht 2 angesehen hat. Das fühlt sich aber mehr wie ein Spielzeugmodell an, als wie etwas Praktisches. Kann man das benutzen, um einen komplett homomorphischen Verschlüsungsschema zu benutzen? Ja, voll homomorphische Verschlüsselung ist ein Luftschluss. Wir nehmen uns also. Man sollte also verschlüsselte Texte modifizieren können, und dasselbe kriegen wir, wenn man die Klartexte modifiziert und dann verschlüsselt. Man sollte also verschlüsselte Texte modifizieren können, um ein Krypto-Primitiv in einem Isogenin-Zugang zu finden. Können Sie die Frage repeaten, bitte? Gibt es einen Krypto-Primitiv in einem Isogenin-Zugang? Das ist nicht dazu rettet zu sein, einen Untergruppe in einem abelschen Gruppe zu finden. Das ist ein hit-and-shift-Problem, oder ein hit-and-subtive-Problem. Ich glaube, ich bin mir nicht klar, ob ich das gut beantworten kann, ohne mit der Person zu sprechen, die das gefragt hat, weil die Frage zur Waage ist. Wie senden man so eine elliptische Kurve über das Internet? Ihr habt eine politische Kurve in diesen Koeffizienten gesehen. Was ich euch nicht erzählt habe, man kann also eine elliptische Kurve, eine Invariante definieren, nämlich die Genvariante. Das ist eine Signatur dieser elliptischen Kurve, die sie eindeutig definiert. Das heißt, wir schicken einfach die Genvariante, und von daraus kann man die elliptische Kurve dann im Prinzip vollständig wieder berechnen. Das macht es interessant. Ich glaube, das war alles. Vielen Dank. Wir bedanken uns aus der Übersetzerkabine.