<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>History on kenji.blog</title><link>http://kenji.blog/de/categories/history/</link><description>Recent content in History on kenji.blog</description><generator>Hugo -- gohugo.io</generator><language>de</language><copyright>kenjinote</copyright><lastBuildDate>Fri, 11 Sep 2026 15:00:00 +0900</lastBuildDate><atom:link href="http://kenji.blog/de/categories/history/index.xml" rel="self" type="application/rss+xml"/><item><title>Die Geschichte der Kryptographie: Von der Caesar-Chiffre bis zur Post-Quanten-Kryptographie (PQC)</title><link>http://kenji.blog/de/p/history-of-cryptography-caesar-to-pqc/</link><pubDate>Fri, 11 Sep 2026 15:00:00 +0900</pubDate><guid>http://kenji.blog/de/p/history-of-cryptography-caesar-to-pqc/</guid><description>&lt;img src="http://kenji.blog/p/history-of-cryptography-caesar-to-pqc/img/eyecatch.jpg" alt="Featured image of post Die Geschichte der Kryptographie: Von der Caesar-Chiffre bis zur Post-Quanten-Kryptographie (PQC)" />&lt;h1 id="1-einführung-was-ist-kryptographie">1. Einführung: Was ist Kryptographie?
&lt;/h1>&lt;p>Die Kryptographie (Kryptographie) ist die Technologie zur Wahrung der Geheimhaltung von Informationen und hat sich zusammen mit der Geschichte der Menschheit entwickelt. Von der Übermittlung geheimer Befehle in antiken Kriegen bis zum Schutz von Kreditkarteninformationen im modernen Internet ist der Zweck der Kryptographie konsistent geblieben. Er besteht darin, sicherzustellen, &amp;ldquo;dass nur der beabsichtigte Empfänger die Informationen verstehen kann und sie für Dritte nicht entschlüsselbar sind&amp;rdquo;.&lt;/p>
&lt;p>In der modernen Informationssicherheit spielt die Kryptographie nicht nur eine wichtige Rolle bei der &amp;ldquo;Geheimhaltung (Vertraulichkeit: Confidentiality)&amp;rdquo; von Informationen, sondern auch bei der &amp;ldquo;Integrität (Integrity)&amp;rdquo;, &amp;ldquo;Authentifizierung (Authentication)&amp;rdquo; und der &amp;ldquo;Nichtabstreitbarkeit (Non-repudiation)&amp;rdquo; von Daten.&lt;/p>
&lt;p>In diesem Artikel werden wir die Geschichte der Entwicklung der Kryptographie aus einer technischen und mathematischen Perspektive detailliert entwirren, beginnend mit einfachen Substitutionschiffren der Antike über mechanische Chiffren, moderne symmetrische und asymmetrische Kryptographie bis hin zur Ära der &amp;ldquo;Post-Quanten-Kryptographie (PQC)&amp;rdquo;, die mit der praktischen Anwendung von Quantencomputern anbrechen wird.&lt;/p>
&lt;hr>
&lt;h1 id="2-die-ära-der-klassischen-kryptographie-buchstaben-ersetzen-und-umstellen">2. Die Ära der klassischen Kryptographie: Buchstaben ersetzen und umstellen
&lt;/h1>&lt;p>Die Ursprünge der Kryptographie reichen bis vor die christliche Zeitrechnung zurück. Frühe Chiffren bestanden hauptsächlich aus zwei Ansätzen: &amp;ldquo;Transposition (Umstellung)&amp;rdquo; und &amp;ldquo;Substitution (Ersetzung)&amp;rdquo;.&lt;/p>
&lt;h2 id="die-skytale-chiffre-transpositionschiffre">Die Skytale-Chiffre (Transpositionschiffre)
&lt;/h2>&lt;p>Die im antiken griechischen Sparta im 5. Jahrhundert v. Chr. verwendete &amp;ldquo;Skytale (Scytale)&amp;rdquo; ist eines der ältesten kryptographischen Instrumente. Ein langer, schmaler Streifen Pergament wird um einen Holzstab einer bestimmten Dicke gewickelt und eine Nachricht wird horizontal darauf geschrieben. Wenn das Pergament abgewickelt wird, sind die Buchstaben in einer bedeutungslosen Reihenfolge angeordnet, aber ein Empfänger mit einem Stab derselben Dicke kann das Pergament erneut darumwickeln, um die ursprüngliche Nachricht zu lesen.&lt;/p>
&lt;h2 id="die-caesar-chiffre-monoalphabetische-substitutionschiffre">Die Caesar-Chiffre (Monoalphabetische Substitutionschiffre)
&lt;/h2>&lt;p>Es wird gesagt, dass Julius Caesar (Caesar), ein Held des antiken Roms im 1. Jahrhundert v. Chr., die &amp;ldquo;Caesar-Chiffre&amp;rdquo; verwendete. Dies ist eine monoalphabetische Substitutionschiffre (Monoalphabetic substitution), bei der das Alphabet um eine bestimmte Anzahl (normalerweise 3 Buchstaben) verschoben wird.&lt;/p>
&lt;p>Mathematisch gesehen, wenn wir Buchstaben als Zahlen von $0$ bis $25$ behandeln und die Verschiebung als $K$ bezeichnen, wird die Umwandlung von Klartext $P$ zu Chiffretext $C$ durch folgende Kongruenzgleichung ausgedrückt:&lt;/p>
$$C \equiv P + K \pmod{26}$$
&lt;p>Die Entschlüsselung führt die umgekehrte Operation durch:&lt;/p>
$$P \equiv C - K \pmod{26}$$
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Einfaches Python-Implementierungsbeispiel für die Caesar-Chiffre&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">def&lt;/span> &lt;span class="nf">caesar_cipher&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">text&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">shift&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">mode&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;encrypt&amp;#34;&lt;/span>&lt;span class="p">):&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">result&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s2">&amp;#34;&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">mode&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="s2">&amp;#34;decrypt&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">shift&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">shift&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">for&lt;/span> &lt;span class="n">char&lt;/span> &lt;span class="ow">in&lt;/span> &lt;span class="n">text&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">char&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">isalpha&lt;/span>&lt;span class="p">():&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">base&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">ord&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;A&amp;#39;&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="k">if&lt;/span> &lt;span class="n">char&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">isupper&lt;/span>&lt;span class="p">()&lt;/span> &lt;span class="k">else&lt;/span> &lt;span class="nb">ord&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;a&amp;#39;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1"># Verschiebungsberechnung&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">result&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="nb">chr&lt;/span>&lt;span class="p">((&lt;/span>&lt;span class="nb">ord&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">char&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="n">base&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="n">shift&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="mi">26&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="n">base&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">else&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">result&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="n">char&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">result&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Ausführungsbeispiel&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">plaintext&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s2">&amp;#34;HELLO WORLD&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">ciphertext&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">caesar_cipher&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">plaintext&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">3&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s2">&amp;#34;encrypt&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sa">f&lt;/span>&lt;span class="s2">&amp;#34;Chiffretext: &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">ciphertext&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="c1"># KHOOR ZRUOG&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="häufigkeitsanalyse-und-vigenère-chiffre">Häufigkeitsanalyse und Vigenère-Chiffre
&lt;/h2>&lt;p>Monoalphabetische Substitutionschiffren wurden durch die &amp;ldquo;Häufigkeitsanalyse (Frequency Analysis)&amp;rdquo;, die vom arabischen Gelehrten Al-Kindi im 9. Jahrhundert entwickelt wurde, leicht entschlüsselbar. Dies nutzt die statistischen Eigenschaften der Sprache, wie etwa die Häufigkeit von &amp;ldquo;E&amp;rdquo; oder &amp;ldquo;T&amp;rdquo; im Englischen.&lt;/p>
&lt;p>Um dem entgegenzuwirken, wurde im 16. Jahrhundert die &amp;ldquo;Vigenère-Chiffre (Vigenère cipher)&amp;rdquo; entwickelt. Dies ist eine polyalphabetische Substitutionschiffre (Polyalphabetic substitution), die regelmäßig zwischen mehreren Verschiebungen (Schlüsseln) wechselt und etwa 300 Jahre lang als &amp;ldquo;die unknackbare Chiffre (Le Chiffre Indéchiffrable)&amp;rdquo; bekannt war.&lt;/p>
&lt;p>Mathematisch wird sie verschlüsselt, indem der $i$-te Buchstabe des Klartextes $P_i$ und der $i$-te Buchstabe des sich wiederholenden Schlüssels $K_i$ wie folgt verwendet werden:&lt;/p>
$$C_i \equiv P_i + K_i \pmod{26}$$
&lt;p>Diese Chiffre wurde auch im 19. Jahrhundert von Charles Babbage und Friedrich Kasiski geknackt, indem sie den &amp;ldquo;Kasiski-Test (Kasiski examination)&amp;rdquo; entdeckten, der die Schlüssellänge aus sich wiederholenden Mustern im Chiffretext ermittelt.&lt;/p>
&lt;div class="mermaid">graph TD
subgraph "Klassifizierung der klassischen Kryptographie"
A["Klassische Kryptographie"] --> B["Transpositionschiffre"]
A --> C["Substitutionschiffre"]
B --> D["Skytale-Chiffre"]
C --> E["Monoalphabetische Substitution"]
C --> F["Polyalphabetische Substitution"]
E --> G["Caesar-Chiffre"]
F --> H["Vigenère-Chiffre"]
end&lt;/div>
&lt;hr>
&lt;h1 id="3-mechanische-chiffren-und-weltkriege-enigma-und-ihre-entschlüsselung">3. Mechanische Chiffren und Weltkriege: Enigma und ihre Entschlüsselung
&lt;/h1>&lt;p>Zu Beginn des 20. Jahrhunderts verlagerte sich die Kommunikation von Briefen auf Telegrafen und Funk, was Schnelligkeit und Komplexität bei der Verschlüsselung erforderte. Hier traten die &amp;ldquo;mechanischen Chiffren&amp;rdquo; auf, die Rotoren (Drehscheiben) kombinierten.&lt;/p>
&lt;h2 id="die-bedrohung-der-enigma-enigma">Die Bedrohung der Enigma (Enigma)
&lt;/h2>&lt;p>Die von Nazi-Deutschland im Zweiten Weltkrieg eingesetzte &amp;ldquo;Enigma&amp;rdquo; ist die berühmteste Chiffriermaschine in der Geschichte der Kryptographie. Die Enigma bestand aus mehreren Rotoren (normalerweise 3 bis 4), einem Steckerbrett zur Vertauschung von Buchstabenverdrahtungen und einem Reflektor (Umkehrwalze).&lt;/p>
&lt;p>Da sich die Rotoren jedes Mal drehten, wenn ein Buchstabe auf der Tastatur getippt wurde, erzeugte selbst das wiederholte Tippen desselben Buchstabens unterschiedliche Chiffretextzeichen (das Extrem der polyalphabetischen Chiffre). Der Schlüsselraum (die Kombination von Einstellungen) betrug etwa $1.58 \times 10^{19}$ Möglichkeiten (etwa 15,8 Trillionen), und ein Brute-Force-Angriff galt mit der damaligen Technologie als unmöglich.&lt;/p>
&lt;h2 id="alan-turing-und-die-bombe-bombe">Alan Turing und die &amp;ldquo;Bombe (Bombe)&amp;rdquo;
&lt;/h2>&lt;p>Das Team zur Entschlüsselung von Codes in Bletchley Park in Großbritannien, das auf den frühen Arbeiten des polnischen Mathematikers Marian Rejewski und anderer aufbaute, nahm die Herausforderung dieser uneinnehmbaren Enigma an.&lt;/p>
&lt;p>Insbesondere Alan Turing entwickelte eine elektromechanische Entschlüsselungsmaschine namens &amp;ldquo;Bombe&amp;rdquo;, die Vermutungen über den Klartext (Crib) nutzte, die Teilen des Chiffretextes entsprachen. Die Bombe erkannte schnell logische Widersprüche, schloss unmögliche Rotoreinstellungen eine nach der anderen aus und entschlüsselte erfolgreich die Enigma. Man sagt, dass diese bemerkenswerte Leistung den Sieg der Alliierten um mehrere Jahre beschleunigte.&lt;/p>
&lt;hr>
&lt;h1 id="4-der-beginn-der-modernen-kryptographie-symmetrische-kryptographie-des-und-aes">4. Der Beginn der modernen Kryptographie: Symmetrische Kryptographie (DES und AES)
&lt;/h1>&lt;p>Nach dem Krieg, mit dem Aufkommen von Computern, erfuhr die Kryptographie einen dramatischen Paradigmenwechsel von der Manipulation von &amp;ldquo;Buchstaben&amp;rdquo; zur Manipulation von &amp;ldquo;Bits (0 und 1)&amp;rdquo;.&lt;/p>
&lt;h2 id="claude-shannon-und-die-informationstheorie">Claude Shannon und die Informationstheorie
&lt;/h2>&lt;p>Im Jahr 1949 veröffentlichte Claude Shannon seine Arbeit &amp;ldquo;Communication Theory of Secrecy Systems&amp;rdquo; und legte damit das mathematische Fundament für die moderne Kryptographie. Er schlug &amp;ldquo;Konfusion (Confusion)&amp;rdquo; und &amp;ldquo;Diffusion (Diffusion)&amp;rdquo; als Prinzipien für ein sicheres kryptographisches Design vor.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Konfusion (Confusion)&lt;/strong>: Die Beziehung zwischen Schlüssel und Chiffretext so komplex wie möglich gestalten. (Erreicht durch Substitution/S-Boxen)&lt;/li>
&lt;li>&lt;strong>Diffusion (Diffusion)&lt;/strong>: Sicherstellen, dass die Änderung eines einzelnen Bits im Klartext viele Bits im Chiffretext beeinflusst. (Erreicht durch Transposition/Permutation)&lt;/li>
&lt;/ul>
&lt;h2 id="des-data-encryption-standard">DES (Data Encryption Standard)
&lt;/h2>&lt;p>Im Jahr 1977 etablierte das National Institute of Standards and Technology (NIST, damals NBS) der USA &amp;ldquo;DES&amp;rdquo;, das auf einem IBM-Design basierte, als Standardverschlüsselung.
DES verwendet eine Architektur, die &amp;ldquo;Feistel-Netzwerk (Feistel Network)&amp;rdquo; genannt wird, mit einer Blocklänge von 64 Bit und einer Schlüssellänge von 56 Bit. Es hatte den Implementierungsvorteil, dass die Ver- und Entschlüsselungsalgorithmen fast die gleiche Struktur besaßen.&lt;/p>
&lt;p>Jedoch wurde mit der Verbesserung der Rechenleistung von Computern klar, dass eine Schlüssellänge von 56 Bit (etwa $7.2 \times 10^{16}$ Möglichkeiten) unzureichend war. 1998 entwickelte die Electronic Frontier Foundation (EFF) eine spezielle Maschine namens &amp;ldquo;Deep Crack&amp;rdquo; und demonstrierte, dass DES innerhalb weniger Tage geknackt werden konnte.&lt;/p>
&lt;h2 id="aes-advanced-encryption-standard">AES (Advanced Encryption Standard)
&lt;/h2>&lt;p>Als Ersatz für DES wurde im Jahr 2001 &amp;ldquo;AES&amp;rdquo; als neuer Standard etabliert. Der durch einen offenen Wettbewerb ausgewählte &amp;ldquo;Rijndael&amp;rdquo;-Algorithmus, der von belgischen Kryptographen entwickelt wurde, wurde übernommen.&lt;/p>
&lt;p>AES verwendet nicht das Feistel-Netzwerk, sondern ein &amp;ldquo;SPN-Netzwerk (Substitution-Permutation Network)&amp;rdquo; und nutzt mathematische Operationen über dem Galois-Körper (endlichen Körper) $GF(2^8)$. Die Schlüssellängen können zwischen 128, 192 oder 256 Bits gewählt werden, und es wird heute weltweit noch immer als symmetrische Standardverschlüsselung eingesetzt.&lt;/p>
&lt;div class="mermaid">graph TD
subgraph "1 Runde AES-Verarbeitung (SPN-Struktur)"
A["Eingabestatus (128-bit)"] --> B("SubBytes (Byte-Substitution / S-Box)")
B --> C("ShiftRows (Zeilenverschiebung)")
C --> D("MixColumns (Spaltenmischung / Multiplikation in GF(2^8))")
D --> E("AddRoundKey (XOR mit dem Rundenschlüssel)")
E --> F["Zur nächsten Runde"]
end&lt;/div>
&lt;hr>
&lt;h1 id="5-die-revolution-der-public-key-kryptographie-von-diffie-hellman-zu-rsa">5. Die Revolution der Public-Key-Kryptographie: Von Diffie-Hellman zu RSA
&lt;/h1>&lt;p>Die symmetrische Kryptographie hatte eine entscheidende Schwachstelle. Das war das &amp;ldquo;Schlüsselverteilungsproblem (Key Distribution Problem)&amp;rdquo;. Es war das Problem, wie ein &amp;ldquo;gemeinsamer Schlüssel&amp;rdquo; sicher mit einer weit entfernten Partei geteilt werden konnte, bevor die verschlüsselte Kommunikation begann. Dieses Problem wurde durch die &amp;ldquo;Public-Key-Kryptographie&amp;rdquo; gelöst, die in den 1970er Jahren geboren wurde.&lt;/p>
&lt;h2 id="diffie-hellman-schlüsselaustausch">Diffie-Hellman-Schlüsselaustausch
&lt;/h2>&lt;p>1976 veröffentlichten Whitfield Diffie und Martin Hellman ein bahnbrechendes Papier mit dem Titel &amp;ldquo;New Directions in Cryptography&amp;rdquo;. Sie schlugen eine Methode vor, um Schlüssel auch über einen abgehörten Kommunikationsweg sicher zu teilen, indem sie die mathematische Schwierigkeit des &amp;ldquo;diskreten Logarithmusproblems (Discrete Logarithm Problem)&amp;rdquo; ausnutzten.&lt;/p>
&lt;ol>
&lt;li>Eine große Primzahl $p$ und ein Erzeuger $g$ werden veröffentlicht.&lt;/li>
&lt;li>Alice wählt einen geheimen Wert $a$ und sendet $A = g^a \pmod{p}$ an Bob.&lt;/li>
&lt;li>Bob wählt einen geheimen Wert $b$ und sendet $B = g^b \pmod{p}$ an Alice.&lt;/li>
&lt;li>Alice berechnet $K = B^a \pmod{p}$ und Bob berechnet $K = A^b \pmod{p}$.&lt;/li>
&lt;li>Durch die Potenzgesetze wird $K = (g^b)^a = (g^a)^b = g^{ab} \pmod{p}$, und sie können wunderbar denselben Schlüssel $K$ teilen.&lt;/li>
&lt;/ol>
&lt;h2 id="rsa-kryptographie">RSA-Kryptographie
&lt;/h2>&lt;p>Im folgenden Jahr, 1977, wurde die &amp;ldquo;RSA-Kryptographie&amp;rdquo; von Ron Rivest, Adi Shamir und Leonard Adleman entwickelt. Sie basiert auf der Eigenschaft, dass &amp;ldquo;die Primfaktorzerlegung einer riesigen zusammengesetzten Zahl schwierig ist&amp;rdquo;.&lt;/p>
&lt;p>&lt;strong>Mathematischer Mechanismus von RSA:&lt;/strong>&lt;/p>
&lt;ol>
&lt;li>Wähle zwei riesige Primzahlen $p$ und $q$ und berechne $n = p \times q$.&lt;/li>
&lt;li>Berechne Eulers Totient-Funktion $\phi(n) = (p-1)(q-1)$.&lt;/li>
&lt;li>Wähle eine ganze Zahl $e$ (öffentlicher Schlüssel), die teilerfremd zu $\phi(n)$ ist.&lt;/li>
&lt;li>Berechne eine ganze Zahl $d$ (privater Schlüssel), so dass $e \times d \equiv 1 \pmod{\phi(n)}$ gilt.&lt;/li>
&lt;/ol>
&lt;p>Verschlüsselung: Für den Klartext $M$, $C \equiv M^e \pmod{n}$
Entschlüsselung: Für den Chiffretext $C$, $M \equiv C^d \pmod{n}$&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;span class="lnt">25
&lt;/span>&lt;span class="lnt">26
&lt;/span>&lt;span class="lnt">27
&lt;/span>&lt;span class="lnt">28
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Python-Code zur Veranschaulichung des RSA-Konzepts (nicht für den praktischen Einsatz)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">def&lt;/span> &lt;span class="nf">ext_euclid&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">b&lt;/span>&lt;span class="p">):&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1"># Berechnung des modularen Inversen durch den erweiterten euklidischen Algorithmus&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">b&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="k">return&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">a&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">x&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">y&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">g&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">ext_euclid&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">b&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">a&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="n">b&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">y&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">x&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">a&lt;/span> &lt;span class="o">//&lt;/span> &lt;span class="n">b&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="n">y&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">g&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">def&lt;/span> &lt;span class="nf">rsa_example&lt;/span>&lt;span class="p">():&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1"># Beispiel mit kleinen Primzahlen&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">p&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">q&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">61&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">53&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">n&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">p&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="n">q&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">phi&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">p&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">q&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">e&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">17&lt;/span> &lt;span class="c1"># Wert teilerfremd zu phi&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">d&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">_&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">_&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">ext_euclid&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">e&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">phi&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">d&lt;/span> &lt;span class="o">&amp;lt;&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">d&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="n">phi&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sa">f&lt;/span>&lt;span class="s2">&amp;#34;Öffentlicher Schlüssel: (e=&lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">e&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">, n=&lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">)&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sa">f&lt;/span>&lt;span class="s2">&amp;#34;Privater Schlüssel: (d=&lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">d&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">, n=&lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">)&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1"># Verschlüsselung und Entschlüsselung der Nachricht&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">message&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">65&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">ciphertext&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">pow&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">message&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">e&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">n&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">decrypted&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">pow&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ciphertext&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">d&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">n&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sa">f&lt;/span>&lt;span class="s2">&amp;#34;Klartext: &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">message&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2"> -&amp;gt; Chiffretext: &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">ciphertext&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2"> -&amp;gt; Entschlüsselt: &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">decrypted&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">rsa_example&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;hr>
&lt;h1 id="6-der-aufstieg-der-elliptischen-kurvenkryptographie-ecc">6. Der Aufstieg der elliptischen Kurvenkryptographie (ECC)
&lt;/h1>&lt;p>Die RSA-Kryptographie ist mächtig, aber mit der Verbesserung der Computerleistung wurde es notwendig, die Schlüssellängen zu verlängern, um die Sicherheit aufrechtzuerhalten (derzeit 2048 Bit oder 3072 Bit), was zu dem Problem erhöhter Rechenkosten führte.&lt;/p>
&lt;p>Daher wurde 1985 die &amp;ldquo;Elliptische Kurvenkryptographie (Elliptic Curve Cryptography: ECC)&amp;rdquo; vorgeschlagen. Sie nutzt die Addition von Punkten auf einer elliptischen Kurve über einem endlichen Körper (im Allgemeinen in der Form $y^2 = x^3 + ax + b$).&lt;/p>
&lt;p>Es ist bekannt, dass das Problem des diskreten Logarithmus auf elliptischen Kurven (ECDLP) noch schwerer zu lösen ist als das Primfaktorzerlegungsproblem, und &lt;strong>ECC kann dieselbe Sicherheit wie RSA mit 3072 Bit mit einer Schlüssellänge von nur 256 Bit erreichen&lt;/strong>. Dies ermöglichte eine schnelle und sichere kryptographische Kommunikation (wie ECDSA und ECDH) auch in Umgebungen mit begrenzten Rechenressourcen, wie Smartphones und IoT-Geräten.&lt;/p>
&lt;hr>
&lt;h1 id="7-die-bedrohung-durch-quantencomputer-und-post-quanten-kryptographie-pqc">7. Die Bedrohung durch Quantencomputer und Post-Quanten-Kryptographie (PQC)
&lt;/h1>&lt;p>Die Kryptographie schien unerschütterlich, bis Peter Shor 1994 &amp;ldquo;Shors Algorithmus&amp;rdquo; veröffentlichte, was einen gewaltigen Schock auslöste.&lt;/p>
&lt;p>Quantencomputer führen Berechnungen durch, indem sie die quantenmechanischen Eigenschaften der &amp;ldquo;Superposition&amp;rdquo; und der &amp;ldquo;Quantenverschränkung&amp;rdquo; ausnutzen. Wenn Shors Algorithmus auf einem ausreichend leistungsstarken Quantencomputer ausgeführt wird, wurde mathematisch bewiesen, dass das Primfaktorzerlegungsproblem und das diskrete Logarithmusproblem in &amp;ldquo;polynomieller Zeit&amp;rdquo; gelöst werden können. Das bedeutet, dass an dem Tag, an dem ein praktischer Quantencomputer fertiggestellt wird (Q-Day), alle derzeit verwendeten Public-Key-Kryptographien wie RSA und ECC sofort zusammenbrechen werden.&lt;/p>
&lt;h2 id="die-entstehung-von-pqc-post-quantum-cryptography">Die Entstehung von PQC (Post-Quantum Cryptography)
&lt;/h2>&lt;p>Um sich auf diese beispiellose Bedrohung vorzubereiten, schreitet die Forschung an &amp;ldquo;Post-Quanten-Kryptographie (PQC)&amp;rdquo; in schnellem Tempo voran, basierend auf neuen mathematischen Problemen, die selbst für Quantencomputer schwer zu lösen sind. Das NIST (National Institute of Standards and Technology der USA) führt seit vielen Jahren einen PQC-Standardisierungsprozess durch, bei dem hauptsächlich die folgenden mathematischen Ansätze als vielversprechend angesehen werden.&lt;/p>
&lt;h3 id="1-gitterbasierte-kryptographie-lattice-based-cryptography">1. Gitterbasierte Kryptographie (Lattice-based Cryptography)
&lt;/h3>&lt;p>Dies ist derzeit der vielversprechendste Ansatz und wurde in den Standardisierungsalgorithmen von NIST (ML-KEM / Kyber, ML-DSA / Dilithium) übernommen. Es basiert auf der Schwierigkeit, bestimmte Punkte auf einem &amp;ldquo;Gitter (Lattice)&amp;rdquo; in mehrdimensionalen Räumen zu finden (Shortest Vector Problem: SVP usw.) oder auf dem LWE-Problem (Learning With Errors).&lt;/p>
&lt;p>Das Konzept des LWE-Problems nutzt die Eigenschaft, dass das Finden einer Lösung extrem schwierig wird, wenn man absichtlich &amp;ldquo;kleines Rauschen (Fehler)&amp;rdquo; zu einem System linearer Gleichungen hinzufügt.
Gleichungssystem: $\mathbf{A}\mathbf{s} + \mathbf{e} \equiv \mathbf{b} \pmod{q}$
($\mathbf{A}$ und $\mathbf{b}$ sind öffentlich, $\mathbf{s}$ ist der private Schlüssel und $\mathbf{e}$ ist minimales Rauschen)&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Konzeptueller Pseudocode des LWE-Problems (zu Lernzwecken)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kn">import&lt;/span> &lt;span class="nn">numpy&lt;/span> &lt;span class="k">as&lt;/span> &lt;span class="nn">np&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">n&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">256&lt;/span> &lt;span class="c1"># Dimension&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">q&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">3329&lt;/span> &lt;span class="c1"># Modul&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">m&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">512&lt;/span> &lt;span class="c1"># Anzahl der Gleichungen&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Privater Schlüssel s und kleiner Fehler e&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">s&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">np&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">random&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">randint&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">5&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">size&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">e&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">np&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">random&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">randint&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">2&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">size&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">m&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Öffentliche Matrix A und öffentlicher Vektor b&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">A&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">np&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">random&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">randint&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">q&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">size&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">m&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">n&lt;/span>&lt;span class="p">))&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">b&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">np&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">dot&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">A&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">s&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="n">e&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="n">q&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Selbst mit einem Quantencomputer wird es als extrem schwierig angesehen, s aus A und b wiederherzustellen&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h3 id="2-hash-basierte-kryptographie-hash-based-cryptography">2. Hash-basierte Kryptographie (Hash-based Cryptography)
&lt;/h3>&lt;p>Ein digitales Signaturschema, das seine Sicherheit ausschließlich auf die Kollisionsresistenz von Hash-Funktionen stützt. Da es keine mathematische Struktur besitzt, ist es widerstandsfähig gegen Quantenangriffe, neigt jedoch zu großen Signaturgrößen (wie SPHINCS+).&lt;/p>
&lt;h3 id="3-code-basierte-kryptographie-code-based-cryptography">3. Code-basierte Kryptographie (Code-based Cryptography)
&lt;/h3>&lt;p>Ein kryptographisches Verfahren, das auf der Theorie fehlerkorrigierender Codes basiert. Das 1978 vorgeschlagene McEliece-Kryptosystem ist ein berühmtes Beispiel; es hat eine lange Geschichte und einen etablierten Ruf für Sicherheit, leidet jedoch unter dem Problem sehr großer öffentlicher Schlüssel (die manchmal mehrere Megabyte erreichen).&lt;/p>
&lt;div class="mermaid">timeline
title "Die Geschichte der Kryptographie und der Computerentwicklung"
"Antike bis Mittelalter" : "Caesar-Chiffre" : "Vigenère-Chiffre" : "Geburt der Häufigkeitsanalyse"
"1930er bis 1940er" : "Einsatz und Entschlüsselung der Enigma" : "Entwicklung der Turing-Maschine / Bombe"
"1970er" : "DES-Standardisierung (1977)" : "Diffie-Hellman-Schlüsselaustausch (1976)" : "Geburt der RSA-Kryptographie (1977)"
"1980er bis 1990er" : "Vorschlag der Elliptischen Kurvenkryptographie (ECC)" : "Veröffentlichung von Shors Algorithmus (1994)"
"2000er" : "AES-Standardisierung (2001)"
"2010er bis Gegenwart" : "Beschleunigung der Quantencomputerforschung" : "Start des PQC-Standardisierungsprojekts durch NIST"
"Nahe Zukunft (Q-Day)" : "Realisierung eines großangelegten Quantencomputers?" : "Vollständiger Übergang zu PQC (ML-KEM/ML-DSA)"&lt;/div>
&lt;hr>
&lt;h1 id="8-fazit-der-endlose-kampf-zwischen-schild-und-speer">8. Fazit: Der endlose Kampf zwischen Schild und Speer
&lt;/h1>&lt;p>Die Geschichte der Kryptographie ist eine Geschichte des endlosen Kampfes zwischen der Erfindung neuer Verschlüsselungsmethoden (Schilde) und neuen Entschlüsselungstechniken (Speere), um sie zu durchbrechen.&lt;/p>
&lt;p>Die Caesar-Chiffre wurde durch die Häufigkeitsanalyse besiegt, und die unbesiegbare Enigma wurde durch Turings geniales Gehirn und die Kraft der Maschinen besiegt. Und nun sind starke Chiffren wie RSA und ECC, die das Fundament der modernen Internetgesellschaft stützen, durch den neuen &amp;ldquo;Speer&amp;rdquo; der Quantencomputer bedroht.&lt;/p>
&lt;p>Doch die Menschheit blickt bereits auf diese zukünftige Zeit und bereitet einen neuen &amp;ldquo;Schild&amp;rdquo; namens Post-Quanten-Kryptographie (PQC) vor. Gegenwärtig ist die Vorbereitung des Übergangs von bestehender Public-Key-Kryptographie zu PQC (Sicherstellung von Krypto-Agilität) eine dringende Aufgabe für IT-Infrastrukturen weltweit.&lt;/p>
&lt;p>Die Kryptographie ist nicht nur ein obskures mathematisches Rätsel, sondern die stärkste Verteidigungsmauer, um unsere Privatsphäre, unser Eigentum und die Gesellschaftsinfrastruktur selbst zu schützen.&lt;/p></description></item></channel></rss>