allg Korrekturen
This commit is contained in:
parent
173c3d1dc9
commit
2e0a7a78f8
BIN
Kryptographie.pdf
(Stored with Git LFS)
BIN
Kryptographie.pdf
(Stored with Git LFS)
Binary file not shown.
@ -1421,22 +1421,20 @@ $Pr(x|y) =\frac{Pr(x,y)}{Pr(y)}=\frac{Pr(y|x)*Pr(x)}{Pr(y)}=\frac{Pr_K(k_{x,y})*
|
||||
Diese Gleichung wird durch die Initialisierung hergestellt. In einem Schleifendurchlauf wird $a$ durch $b$ ersetzt und $(s_a,t_a)$ durch $(s_b,t_b)$, und es wird $b$ durch $a-q*b$ ersetzt sowie $(s_b,t_b)$ durch $(s_a-q*s_b, t_a-q*t_b)$. Dadurch bleiben die Gleichungen (4.2) gültig. Wenn schließlich $b=0$ geworden ist, gilt $d=ggT(x,y) =a=s_a*x+t_a*y$. Das bedeutet, dass die Ausgabe das gewünschte Ergebnis darstellt.
|
||||
|
||||
Als Beispiel betrachten wir den Ablauf des Algorithmus auf der Eingabe $(x,y) =(10534,12742)$. Die Zahlen $a_i,b_i,s_{a,i},t_{a,i},s_{b,i},t_{b,i}$ bezeichnen den Inhalt von $a,b,sa,ta,sb,tb$ nach dem i-ten Schleifendurchlauf.
|
||||
\begin{tabular}{c}
|
||||
| $i$ | $a_i$ | $b_i$ | $s_{a,i}$ | $t_{a,i}$ | $s_{b,i}$ | $t_{b,i}$ | $q_i$ \\\hline
|
||||
| 0 | 10534 | 12742 | | 1 | 0 | 0 | 1 | - \\
|
||||
| 1 | 12742 | 10534 | | 0 | 1 | 1 | 0 | - \\
|
||||
| 2 | 10534 | 2208 | 1 | 0 | - | 1 | 1 | 1 \\
|
||||
| 3 | 2208 | 1702 | - | 1 | 1 | 5 - | 4 | 4 \\
|
||||
| 4 | 1702 | 506 | 5 | - | 4 | - 6 | 5 | 1 \\
|
||||
| 5 | 506 | 184 | - | 6 | 5 | 23 | - | 19 | 3 \\
|
||||
| 6 | 184 | 138 | 23 | - | 19 | - | 52 | 43 | 2 \\
|
||||
| 7 | 138 | 46 | - | 52 | 43 | 75 | - | 62 | 1 \\
|
||||
| 8 | 46 | 0 75 | - | 62 | - | 277 | 229 | 3
|
||||
\begin{tabular}{c|c|c|c|c|c|c|c|c|c}
|
||||
$i$ & $a_i$ & $b_i$ & $s_{a,i}$ & $t_{a,i}$ & $s_{b,i}$ & $t_{b,i}$ & $q_i$ & & \\\hline
|
||||
0 & 10534 & 12742 & & 1 & 0 & 0 & 1 & - \\
|
||||
1 & 12742 & 10534 & & 0 & 1 & 1 & 0 & - \\
|
||||
2 & 10534 & 2208 & 1 & 0 & - & 1 & 1 & 1 \\
|
||||
3 & 2208 & 1702 & - & 1 & 1 & 5 - & 4 & 4 \\
|
||||
4 & 1702 & 506 & 5 & - & 4 & - 6 & 5 & 1 \\
|
||||
5 & 506 & 184 & - & 6 & 5 & 23 & - & 19 & 3 \\
|
||||
6 & 184 & 138 & 23 & - & 19 & - & 52 & 43 & 2 \\
|
||||
7 & 138 & 46 & - & 52 & 43 & 75 & - & 62 & 1 \\
|
||||
8 & 46 & 0 & 75 & - & 62 & - & 277 & 229 & 3
|
||||
\end{tabular}
|
||||
|
||||
Die Ausgabe ist $(46, 75 ,-62)$. Man überprüft leicht, dass
|
||||
$$46 = ggT(10534,12742) = 75* 10534 - 62 * 12742$$
|
||||
gilt. - Allgemein gilt:
|
||||
Die Ausgabe ist $(46, 75 ,-62)$. Man überprüft leicht, dass $46 = ggT(10534,12742) = 75* 10534 - 62 * 12742$ gilt. - Allgemein gilt:
|
||||
|
||||
Fakt 4.7: Wenn Algorithmus 4.2 auf Eingabe $(x,y)$ mit $x,y\geq 0$ gestartet wird, dann gilt:
|
||||
\begin{enumerate*}
|
||||
@ -1762,8 +1760,7 @@ $Pr(x|y) =\frac{Pr(x,y)}{Pr(y)}=\frac{Pr(y|x)*Pr(x)}{Pr(y)}=\frac{Pr_K(k_{x,y})*
|
||||
|
||||
\subsubsection{Der Fermat-Test}
|
||||
Wir erinnern uns an Fakt 4.20, den Kleinen Satz von Fermat: Wenn $p$ eine Primzahl ist und $1\leq a < p$, dann gilt $a^{p-1} mod\ p=1$.
|
||||
Wir können diese Aussage dazu benutzen, um ,,Belege'' oder ,,Zertifikate'' oder ,,Zeugen'' dafür anzugeben, dass eine Zahl $N$ zusammengesetzt ist: Wenn wir eine Zahl $a$ mit $1\leq a < N$ finden, für die $a^{N-1} mod\ N\not=1$ gilt, dann ist $N$ definitiv keine
|
||||
Primzahl.
|
||||
Wir können diese Aussage dazu benutzen, um ,,Belege'' oder ,,Zertifikate'' oder ,,Zeugen'' dafür anzugeben, dass eine Zahl $N$ zusammengesetzt ist: Wenn wir eine Zahl $a$ mit $1\leq a < N$ finden, für die $a^{N-1} mod\ N\not=1$ gilt, dann ist $N$ definitiv keine Primzahl.
|
||||
|
||||
Beispiel: Mit $N=15$ und $a=2$ rechnen wir: $2^{14}\equiv (2^4)^3 * 2^2 \equiv 16^3*4 \equiv 1*4\equiv 4 (mod\ 15)$. Also ist $2^{14} mod\ 15 = 4\not= 1$, also ist $15$ definitiv keine Primzahl. (Man beachte, dass wir keinen Faktor angeben müssen, um zu diesem Schluss zu kommen.)
|
||||
|
||||
@ -1850,8 +1847,7 @@ $Pr(x|y) =\frac{Pr(x,y)}{Pr(y)}=\frac{Pr(y|x)*Pr(x)}{Pr(y)}=\frac{Pr_K(k_{x,y})*
|
||||
(Eine etwas genauere Untersuchung, die wir hier aber nicht benötigen, ergibt, dass die Primfaktoren einer Carmichael-ZahlN alle verschieden sein müssen, und dass $N$ mindestens drei Primfaktoren haben muss. Auch aus dieser Tatsache kann man entnehmen, dass Carmichael-Zahlen eher selten sind.)
|
||||
|
||||
\subsubsection{Nichttriviale Quadratwurzeln der 1}
|
||||
Beispiel: Betrachte $N=7*13$. Es gilt $1^2 = 1$ und $90^2 \equiv(-1)^2 (mod\ 91)$. Aber es gilt auch $27^2 = 81* 9 \equiv(-10)*9 = -90\equiv 1(mod\ 91)$. Daraus folgt auch
|
||||
$642 =(91-27)^2 \equiv (-27)^2 = 27^2 \equiv 1 (mod\ 91)$. Wir nennen eine Zahl $b\in\{2,...,N-2\}$ mit $b^2\ mod\ N=1$ eine nicht triviale Quadratwurzel der $1$ modulo $N$. Bei Primzahlen gibt es solche Zahlen nicht.
|
||||
Beispiel: Betrachte $N=7*13$. Es gilt $1^2 = 1$ und $90^2 \equiv(-1)^2 (mod\ 91)$. Aber es gilt auch $27^2 = 81* 9 \equiv(-10)*9 = -90\equiv 1(mod\ 91)$. Daraus folgt auch $642 =(91-27)^2 \equiv (-27)^2 = 27^2 \equiv 1 (mod\ 91)$. Wir nennen eine Zahl $b\in\{2,...,N-2\}$ mit $b^2\ mod\ N=1$ eine nicht triviale Quadratwurzel der $1$ modulo $N$. Bei Primzahlen gibt es solche Zahlen nicht.
|
||||
|
||||
Lemma 4.39: Wenn $p$ eine ungerade Primzahl ist, dann gilt $b^2\ mod\ p = 1$, $b \in\mathbb{Z}_p$, genau für $b\in\{1 ,p-1\}$.
|
||||
|
||||
@ -1965,8 +1961,7 @@ $Pr(x|y) =\frac{Pr(x,y)}{Pr(y)}=\frac{Pr(y|x)*Pr(x)}{Pr(y)}=\frac{Pr_K(k_{x,y})*
|
||||
|
||||
Lemma 4.42: Wenn $N$ eine Primzahl ist, gibt der MR-Test $0$ aus.
|
||||
|
||||
Beweis: Wir haben oben schon festgestellt, dass Ausgabe 1 genau dann erfolgt, wenn die zufällig gewählte Zahl $a$ ein MR-Zeuge ist. Nach Lemma 4.41(b) gibt es nur dann
|
||||
MR-Zeugen, wenn $N$ zusammengesetzt ist.
|
||||
Beweis: Wir haben oben schon festgestellt, dass Ausgabe 1 genau dann erfolgt, wenn die zufällig gewählte Zahl $a$ ein MR-Zeuge ist. Nach Lemma 4.41(b) gibt es nur dann MR-Zeugen, wenn $N$ zusammengesetzt ist.
|
||||
|
||||
\subsubsection{Fehlerschranke für den Miller-Rabin-Test}
|
||||
Wir müssen nun noch die Fehlerwahrscheinlichkeit des Miller-Rabin-Tests für den Fall analysieren, dassN eine zusammengesetzte (ungerade) Zahl ist. Dies wird also für diesen Abschnitt angenommen.
|
||||
@ -1981,20 +1976,20 @@ $Pr(x|y) =\frac{Pr(x,y)}{Pr(y)}=\frac{Pr(y|x)*Pr(x)}{Pr(y)}=\frac{Pr_K(k_{x,y})*
|
||||
Zur Veranschaulichung betrachte man Tabelle 6. In der dort angegebenen Matrix entspricht jede Zeile einem der $\varphi(N)$ Elemente von $\mathbb{Z}^*_N$, beginnend mit $a_1 = 1$ und $a_2=-1 \equiv N-1$. In der Zeile für $a$ ist die von $a$ erzeugte Folge $b_0,...,b_k$ eingetragen. Dass $N$ eine Carmichael-Zahl ist, drückt sich dadurch aus, dass alle Einträge in der $b_k$-Spalte gleich 1 sind. Der Eintrag für $a_2=-1$ in der $b_0$-Spalte ist $N-1$. Spalte $i_0$ ist die am weitesten rechts stehende Spalte, in der es einen Eintrag $-1 \equiv N-1$ gibt, und $a_{\#}$ ist ein Element von $\mathbb{Z}^*_N$, das zu diesem Eintrag führt. Die Menge $B_N$ besteht aus den Elementen von $\mathbb{Z}^*_N$, die in Spalte $i_0$ Eintrag $1$ oder $N-1$ haben.
|
||||
|
||||
Tabelle 6: Sicht auf $B_N$ als Teilmenge von $\mathbb{Z}^*_N$
|
||||
\begin{tabular}{c}
|
||||
| $a$ | $b_0$ | $b_1$ | ... | | $b_{i_0}$ | | ... | $b_{k-1}$ | $b_k$ \\\hline
|
||||
| $a_1=1$ | 1 | 1 | ... | 1 | 1 | 1 | ... | 1 | 1 \\
|
||||
| $a_2=N-1$ | $N-1$ | 1 | ... | 1 | 1 | 1 | ... | 1 | 1 \\
|
||||
| $a_3$ | * | * | ... | * | $N-1$ | 1 | ... | 1 | 1 \\
|
||||
| $a_4$ | * | * | ... | $N-1$ | 1 | 1 | ... | 1 | 1 \\
|
||||
| | | | | | | | | 1 | 1 \\
|
||||
| $a$ | $a^u$ | $a^{u*2^1}$ | ... | $a^{u*2^{i_0-1}}$ | $a^{u*2^{i_0}}$ | $a^{u*2^{i_0+1}}$ | ... | $a^{u*2^{k-1}}$ | 1 \\
|
||||
| | | | | | | | | | \\
|
||||
| $a_{\#}$ | * | * | ... | * | $N-1$ | 1 | ... | 1 | 1 \\
|
||||
| | | | | | | | | | \\
|
||||
| $a_?$ | $*?$ | ... | $*?$ | $*?$ | ... | ... | ... | 1 | \\
|
||||
| | | | | | | | | | \\
|
||||
| $a_{\varphi(N)}$ | ? | ? | ... | ? | ? | ? | ... | ? | 1
|
||||
\begin{tabular}{c|c|c|c|c|c|c|c|c|c}
|
||||
$a$ & $b_0$ & $b_1$ & ... & & $b_{i_0}$ & & ... & $b_{k-1}$ & $b_k$ \\\hline
|
||||
$a_1=1$ & 1 & 1 & ... & 1 & 1 & 1 & ... & 1 & 1 \\
|
||||
$a_2=N-1$ & $N-1$ & 1 & ... & 1 & 1 & 1 & ... & 1 & 1 \\
|
||||
$a_3$ & * & * & ... & * & $N-1$ & 1 & ... & 1 & 1 \\
|
||||
$a_4$ & * & * & ... & $N-1$ & 1 & 1 & ... & 1 & 1 \\
|
||||
& & & & & & & & 1 & 1 \\
|
||||
$a$ & $a^u$ & $a^{u*2^1}$ & ... & $a^{u*2^{i_0-1}}$ & $a^{u*2^{i_0}}$ & $a^{u*2^{i_0+1}}$ & ... & $a^{u*2^{k-1}}$ & 1 \\
|
||||
& & & & & & & & & \\
|
||||
$a_{\#}$ & * & * & ... & * & $N-1$ & 1 & ... & 1 & 1 \\
|
||||
& & & & & & & & & \\
|
||||
$a_?$ & $*?$ & ... & $*?$ & $*?$ & ... & ... & ... & 1 & \\
|
||||
& & & & & & & & & \\
|
||||
$a_{\varphi(N)}$ & ? & ? & ... & ? & ? & ? & ... & ? & 1
|
||||
\end{tabular}
|
||||
|
||||
|
||||
@ -2371,8 +2366,7 @@ $Pr(x|y) =\frac{Pr(x,y)}{Pr(y)}=\frac{Pr(y|x)*Pr(x)}{Pr(y)}=\frac{Pr_K(k_{x,y})*
|
||||
Welcher Rechenaufwand ist nötig? Für die Verschlüsselung muss nur eine Quadrierung modulo $N$ durchgeführt werden; sie kostet nur Zeit $O((log\ N)^2)$. Die Entschlüsselung erfordert eine Exponentiation modulo $p$ und eine modulo $q$ und mehrere Anwendungen des erweiterten Euklidischen Algorithmus - insgesamt Zeit $O((log\ N)^3)$.
|
||||
|
||||
*Sicherheit*: Wir nehmen an, Eva hätte ein effizientes Verfahren $B$, mit dem sie alle Chiffretexte zum öffentlichen Schlüssel $N$ entschlüsseln kann. Wir zeigen, dass sie dann auch $N$ faktorisieren kann. (Solange man annimmt, dass dies ein schwieriges Problem ist, kann auch die Annahme, dass Eva Verfahren $B$ hat, als unwahrscheinlich gelten.)
|
||||
Eva geht so vor: Sie wählt eine Zahl $x$ aus $[N]$ zufällig. Wenn $ggT(x,N)>1$, ist sie fertig, denn dieser größte gemeinsame Teiler ist entweder $p$ oder $q$. Andernfalls berechnet sie $y=x^2\ mod\ N$. Dann wendet sie ihr Entschlüsselungsverfahren an und berechnet ein $z=B(y)$ mit $z^2 \equiv y\ mod\ N$. Dieses $z$ hängt wohlgemerkt nicht von $x$, sondern nur von $y$ ab. Es gilt $x^2\equiv z^2
|
||||
(mod\ N)$. Wie oben gesehen gibt es vier Möglichkeiten:
|
||||
Eva geht so vor: Sie wählt eine Zahl $x$ aus $[N]$ zufällig. Wenn $ggT(x,N)>1$, ist sie fertig, denn dieser größte gemeinsame Teiler ist entweder $p$ oder $q$. Andernfalls berechnet sie $y=x^2\ mod\ N$. Dann wendet sie ihr Entschlüsselungsverfahren an und berechnet ein $z=B(y)$ mit $z^2 \equiv y\ mod\ N$. Dieses $z$ hängt wohlgemerkt nicht von $x$, sondern nur von $y$ ab. Es gilt $x^2\equiv z^2 (mod\ N)$. Wie oben gesehen gibt es vier Möglichkeiten:
|
||||
\begin{enumerate*}
|
||||
\item $x\equiv z (mod\ p)$ und $x\equiv z (mod\ q)$
|
||||
\item $x\equiv z (mod\ p)$ und $x\equiv -z (mod\ q)$
|
||||
@ -2478,14 +2472,13 @@ $Pr(x|y) =\frac{Pr(x,y)}{Pr(y)}=\frac{Pr(y|x)*Pr(x)}{Pr(y)}=\frac{Pr_K(k_{x,y})*
|
||||
|
||||
Kommentar: Der Rechenaufwand der Entschlüsselung liegt im Wesentlichen in der schnellen Exponentiation und der Invertierung von $k$.
|
||||
|
||||
*Sicherheit*: Man kann sichuberlegen, dass für eine Angreiferin Eva und eine Gruppe G mit erzeugendem Element $g$ folgende Situationen äquivalent sind:
|
||||
*Sicherheit*: Man kann sich überlegen, dass für eine Angreiferin Eva und eine Gruppe G mit erzeugendem Element $g$ folgende Situationen äquivalent sind:
|
||||
\begin{enumerate*}
|
||||
\item Eva kann alle mit dem ElGamal-Verfahren bzgl. $G$ und $g$ verschlüsselten Nachrichten effizient entschlüsseln, also aus $B$, $A$ und $y$ die Nachricht $x$ berechnen, die zum Chiffretext $(A,y)$ geführt hat.
|
||||
\item Eva kann das DH-Problem für $G$ lösen.
|
||||
\end{enumerate*}
|
||||
|
||||
Wenn Eva diskrete Logarithmen bezüglich $G$ und $g$ berechnen kann, gelten natürlich 1. und 2. Wir beweisen die Äquivalenz.
|
||||
|
||||
\begin{itemize*}
|
||||
\item ,,1.$\Rightarrow$2.'': Eva hat $B=g^b$ und $A=g^a$ vorliegen und möchte $k=g^{ab}$ bestimmen. Sie wendet ihr Entschlüsselungsverfahren auf $B$, $A$ und $y=1$ an. Es ergibt sich ein Wert $x$ mit $g^{ab}\circ x=k\circ x=y=1$. Es gilt also $x=k^{-1}$, und Eva kann $k$ durch Invertierung von $x$ in $G$ berechnen.
|
||||
\item ,,2.$\Rightarrow$1.'': Eva hat $B=g^b$,$A=g^a$,$y=g^{ab}\circ x$ vorliegen. Weil sie das DH-Problem lösen kann, kann sie $k=g^{ab}$ berechnen und damit natürlich $x=k^{-1}\circ y$ bestimmen.
|
||||
@ -2497,8 +2490,7 @@ $Pr(x|y) =\frac{Pr(x,y)}{Pr(y)}=\frac{Pr(y|x)*Pr(x)}{Pr(y)}=\frac{Pr_K(k_{x,y})*
|
||||
\item ElGamal ist erzwungenermaßen randomisiert. Daher führt die wiederholte Verschlüsselung desselben Klartextes $x$ stets zu unterschiedlichen Chiffretexten, weil der Schlüssel $k$ zufällig ist.
|
||||
\end{itemize*}
|
||||
|
||||
Allerdings gibt es die Empfehlung, beim Arbeiten mit RSA den Klartext $x$ durch das Anhängen eines nicht ganz kurzen Zufallsstrings zu
|
||||
randomisieren. Wenn dieser angehängte Zufallsstring die gleiche Länge wie $x$ hat, ist der Chiffretext genauso lang wie bei ElGamal.
|
||||
Allerdings gibt es die Empfehlung, beim Arbeiten mit RSA den Klartext $x$ durch das Anhängen eines nicht ganz kurzen Zufallsstrings zu randomisieren. Wenn dieser angehängte Zufallsstring die gleiche Länge wie $x$ hat, ist der Chiffretext genauso lang wie bei ElGamal.
|
||||
|
||||
\subsubsection{Berechnung diskreter Logarithmen}
|
||||
Wie schwierig ist das ,,DL-Problem''?
|
||||
@ -2542,7 +2534,7 @@ $Pr(x|y) =\frac{Pr(x,y)}{Pr(y)}=\frac{Pr(y|x)*Pr(x)}{Pr(y)}=\frac{Pr_K(k_{x,y})*
|
||||
|
||||
Letzteres ist eine allgemeine Beobachtung: DL in $GF(q)^*$ scheint nicht viel schwieriger zu sein als das Faktorisierungsproblem für Zahlen in der Größenordnung von $q$.
|
||||
|
||||
\subsubsection{Elliptische Kurvenuber endlichen Körpern}
|
||||
\subsubsection{Elliptische Kurven über endlichen Körpern}
|
||||
Elliptische Kurven (,,elliptic curves'', ,,EC'') sind mathematische Strukturen, die eine moderne, attraktive Methode zur Erzeugung endlicher zyklischer Gruppen zur Verwendung in der Kryptographie liefern. Der Ansatz wurde 1985 unabhängig von den amerikanischen Mathematikern Neal Koblitz (\*1948) und Victor S. Miller (\*1947) vorgeschlagen. Der große Vorteil des Verfahrens ist, dass die unter gewissen Umständen schnellen DL-Verfahren für $GF(q)^*$, nämlich Indexkalkül und Zahlkörpersieb, nicht anwendbar sind. Die benötigte Gruppengröße, um ,,Sicherheit'' im praktischen Sinn zu garantieren, ist deutlich kleiner als die bei der zyklischen Gruppe $GF(q)^*$. Dies führt zu Gruppenelementen mit kleinerer Darstellungsgröße und daher effizienterer Verfahren für Verschlüsselung und Entschlüsselung.
|
||||
(Übliche Längen im Jahr 2016: Bestehende Verfahren benutzen 160 Bits, Planung bis 2030: 224 oder 256 Bits. Ein System, das $\mathbb{Z}^*_p$ für eine 256-Bit-Primzahl $p$ benutzt, gilt als äußerst sicher. Andere endliche Körper kommen ebenfalls in Frage. Vorsicht bei $GF(2^k)^*$! Man benötigt andere Formeln als die unten diskutierten!)
|
||||
|
||||
@ -2597,7 +2589,7 @@ $Pr(x|y) =\frac{Pr(x,y)}{Pr(y)}=\frac{Pr(y|x)*Pr(x)}{Pr(y)}=\frac{Pr_K(k_{x,y})*
|
||||
Es gibt einen ,,effizienten'' Algorithmen zur Ermittlung der Gruppenordnung $N=|E|$ der höchstens $O((log\ p)^6)$ Gruppenoperationen benötigt. Wenn wir Glück haben, ist $N$ eine Primzahl; dann ist jedes Element von $E-\{O\}$ ein erzeugendes Element. Ein Standardverfahren ist, die Wahl von $A$ und $B$ so lange wiederholen, bis $N=|E_{A,B}|$ eine Primzahl $q$ ist. Dann wird ein Element $P$ aus $E-\{O\}$ zufällig gewählt und $(p,A,B,N,P)$ an den Kunden abgeliefert. Mit $p$ und $A$ kann man die Gruppenoperationen implementieren, mit $P$ und $N$ zusätzlich kann man den Diffie-Hellman-Schlüsselaustausch und das ElGamal-Kryptoschema umsetzen.
|
||||
Standardverfahren für das DL-Problem (Pollards ${\rho}$-Algorithmus, Pohlig-Hellman) funktionieren auch für Gruppen, die zu elliptischen Kurven gehören, nicht aber die viel schnelleren Verfahren wie Indexkalkül oder Zahlkörpersieb. Dies führt dazu, dass man annimmt, dass in EC-basierten Gruppen das DL-Problem (noch) schwieriger zu lösen ist als in $\mathbb{Z}^*_p$, so dass man mit kleineren Zahlbereichen arbeiten kann, was Verschlüsselung und Entschlüsselung wieder effizienter macht.
|
||||
|
||||
*Effizienter Einsatz*: Wenn man versucht, das ElGamal-Kryptosystem auf der Basis einer elliptischen KurveEumzusetzen, gibt es das Problem, dass die Elemente von $E$ in $\mathbb{Z}^2_p$ eher dünn sind, so dass die Menge $E$ oder auch die Menge der x-
|
||||
*Effizienter Einsatz*: Wenn man versucht, das ElGamal-Kryptosystem auf der Basis einer elliptischen Kurve umzusetzen, gibt es das Problem, dass die Elemente von $E$ in $\mathbb{Z}^2_p$ eher dünn sind, so dass die Menge $E$ oder auch die Menge der x-
|
||||
Koordinaten von Punkten in $E$ als Klartextmenge schlecht geeignet ist. Wie soll man also gewöhnliche Nachrichten auf Punkte auf der Kurve abbilden? Es gibt ein reales kryptographisches Verfahren, das zeigt, wie man diese Schwierigkeit umgeht: ,,Elliptic Curve Integrated Encryption Scheme (ECIES)''. Es beruht darauf, nur für die Manipulationen auf der Schlüsselseite die Gruppe $E$ zu benutzen, und die eigentliche Verschlüsselung in $\mathbb{Z}^*_p$ auszuführen. Das reale ECIES-Verfahren integriert noch ein symmetrisches Verschlüsselungsverfahren und ,,message authentication'' (ein ganz anderes kryptographisches Elementarwerkzeug). Wir geben hier nur den Kern an, der ein asymmetrisches Kryptosystem darstellt. Es gibt Anklänge an das ElGamal-Kryptosystem, aber Unterschiede im Detail.
|
||||
Mit eingebaut ist ein Verfahren, das Elemente von $E-\{O\}$ kompakt darstellt: Anstelle von $(x,y)\in\mathbb{Z}^2_p$ speichern wir $x$ und ein Bit $b$. Im Allgemeinen gibt es keinen oder zwei Punkte auf $E_{A,B}$ mit erster Koordinate $x$ (außer bei den Nullstellen von $f$). Wenn $f(x)=x^3+Ax+B\not= 0$ ein Quadrat in $\mathbb{Z}_p$ ist, gibt es zwei passende Werte $y_1$ und $y_2$ mit $y_1+y_2=p$, von denen einer gerade und einer ungerade ist. Diese beiden Situationen werden durch $b$ unterschieden.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user