some more Beispiel/Theorie minipages and indent fixes…
This commit is contained in:
parent
0bf121985c
commit
061201a5e7
234
main.tex
234
main.tex
|
@ -8,7 +8,7 @@
|
|||
|
||||
% Developement Helpers
|
||||
%-------------------------------------------------------------------
|
||||
\fboxrule=0pt %border thickness der fboxes zum bearbeiten auf 1 setzten
|
||||
\fboxrule=1pt %border thickness der fboxes zum bearbeiten auf 1 setzten
|
||||
%\usepackage{showframe} %border der Bereiche anzeigen
|
||||
|
||||
\begin{document}
|
||||
|
@ -110,19 +110,19 @@ der Konstruktion an.
|
|||
|
||||
% Pfeilbeispiel -------------------------------------------
|
||||
% tikzmark command
|
||||
\newcommand{\tikzmark}[2]{%
|
||||
\tikz[remember picture,baseline=(#1.base)]
|
||||
\node[text=black,anchor=center,inner sep=1pt] (#1) {#2};}
|
||||
Beispiel für Isi:
|
||||
\begin{align*}
|
||||
\tikzmark{a}{a}+\tikzmark{b}{b} & =\tikzmark{c}{c} \\[1em]
|
||||
\tikzmark{sums}{Sumanden} & =\tikzmark{sum}{Summe}
|
||||
\phantom{\hspace{8cm}} %%<---versatz von rechts (!)
|
||||
\end{align*}
|
||||
\tikz[overlay,remember picture]{\draw[blue,thick,->] (sums.north) to [bend left=0] node[anchor=south]{$ $}(a.south);}
|
||||
\tikz[overlay,remember picture]{\draw[blue,thick,->] (sums.north) to [bend left=0] node[anchor=south]{$ $}(b.south);}
|
||||
\tikz[overlay,remember picture]{\draw[blue,thick,->] (sum.north) to [bend left=0] node[anchor=south]{$ $}(c.south);}
|
||||
% Pfeilbeispiel -------------------------------------------
|
||||
%\newcommand{\tikzmark}[2]{%
|
||||
% \tikz[remember picture,baseline=(#1.base)]
|
||||
% \node[text=black,anchor=center,inner sep=1pt] (#1) {#2};}
|
||||
%Beispiel für Isi:
|
||||
% \begin{align*}
|
||||
% \tikzmark{a}{a}+\tikzmark{b}{b} & =\tikzmark{c}{c} \\[1em]
|
||||
% \tikzmark{sums}{Sumanden} & =\tikzmark{sum}{Summe}
|
||||
% \phantom{\hspace{8cm}} %%<---versatz von rechts (!)
|
||||
% \end{align*}
|
||||
% \tikz[overlay,remember picture]{\draw[blue,thick,->] (sums.north) to [bend left=0] node[anchor=south]{$ $}(a.south);}
|
||||
% \tikz[overlay,remember picture]{\draw[blue,thick,->] (sums.north) to [bend left=0] node[anchor=south]{$ $}(b.south);}
|
||||
% \tikz[overlay,remember picture]{\draw[blue,thick,->] (sum.north) to [bend left=0] node[anchor=south]{$ $}(c.south);}
|
||||
%% Pfeilbeispiel -------------------------------------------
|
||||
|
||||
% ------------------------------------------- Makro Definitionen -------------------------------------------
|
||||
\def\pq{\textit{p} \cdot \textit{q}}
|
||||
|
@ -146,36 +146,33 @@ Es werden zwei verschiedenen Primzahlen, die der Hersteller des Schlüssels
|
|||
selbst wählt, p = 7 und q = 11 verwendet (in Realen Fällen werden kompliziertere
|
||||
Zahlen gewählt, jedoch halten wir sie hier der einfachheit halber klein ) und
|
||||
das Produkt aus diesen beiden Werten berechnet. Dieses Resultat N wird ein
|
||||
wichtiger Anteil, den wir im Privat und Public Schlüssel brauchen werden.\\
|
||||
\\ % Die zwei Linebreaks werden hier verwendet um den Whitespace zu vergrössern
|
||||
wichtiger Anteil, den wir im Privat und Public Schlüssel brauchen werden.
|
||||
\begin{center}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][25mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Theorie:
|
||||
\begin{align*}
|
||||
\textit{N} & = \pq \\
|
||||
\\
|
||||
\\
|
||||
\textit{N} & = \pq
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][25mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Beispiel:
|
||||
\begin{align*}
|
||||
77 & = 7 \cdot 11 \\
|
||||
\textit{N} & = 77 \\
|
||||
\textit{N} & = 77
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
}
|
||||
|
||||
|
||||
}\\[-1em]
|
||||
\end{center}
|
||||
\subsection{Konstruktion \textit{m}}
|
||||
Danach rechnen wir Phi von N um die Anzahl der teilerfremden Zahlen zu
|
||||
berechnen. Da p und q Primzahlen sind wissen wir das Phi von \(p=p-1\) und Phi
|
||||
von \(q=q-1\) ist und erhalten als Phi von N = 60 = m.\\
|
||||
\\ % Die zwei Linebreaks werden hier verwendet um den Whitespace zu vergrössern
|
||||
von \(q=q-1\) ist und erhalten als Phi von N = 60 = m.
|
||||
\begin{center}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][35mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Theorie:
|
||||
\begin{align*}
|
||||
\varphi \textit{(N)} & = \m \\
|
||||
|
@ -185,7 +182,7 @@ Theorie:
|
|||
\end{minipage}%
|
||||
}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][35mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Beispiel:
|
||||
\begin{align*}
|
||||
\\
|
||||
|
@ -195,8 +192,8 @@ Beispiel:
|
|||
\textit{m} & = 60
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
}
|
||||
|
||||
}\\[-1em]
|
||||
\end{center}
|
||||
\subsection{Konstruktion \textit{e}}
|
||||
Wir bestimmen eine zu \textit{m} = 60 teilerfremde Primzahl die grösser 1, aber
|
||||
kleiner m sein muss. Wir nehmen in unserem Beispiel \textit{e} = 7 da sie nicht durch 60
|
||||
|
@ -204,21 +201,48 @@ teilbar ist und beide den ggT 1 besitzen.
|
|||
|
||||
\subsection{Konstruktion \textit{d}}
|
||||
Zuvor haben wir \textit{e} mit der Eigenschaft :
|
||||
|
||||
\begin{equation*}
|
||||
ggT(\textit{e},\varphi \textit{(N)})=1
|
||||
\end{equation*}
|
||||
|
||||
\begin{center}
|
||||
\fbox{%
|
||||
\begin{minipage}{0.3\textwidth}
|
||||
Theorie:
|
||||
\begin{align*}
|
||||
ggT(\textit{e},\varphi \textit{(N)})
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
}
|
||||
\fbox{%
|
||||
\begin{minipage}{0.3\textwidth}
|
||||
Beispiel:
|
||||
\begin{align*}
|
||||
ggT(\textit{7},\varphi \textit{(77)}) =1
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
}\\[-1em]
|
||||
\end{center}
|
||||
bestummen. Dies bedeutet, wenn wir \(\bmod\varphi \textit{(N)}\) rechnen, hat
|
||||
\textit{e} einen Inversis. Wir bestimmen \textit{d} mit:
|
||||
|
||||
\begin{equation*}
|
||||
\textit{e} \cdot \textit{d} = 1 \bmod \varphi \textit{(N)}
|
||||
\end{equation*}
|
||||
|
||||
Formen diese nach \textit{d} um :\\[1em]
|
||||
\begin{center}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][40mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Theorie:
|
||||
\begin{align*}
|
||||
\textit{e} \cdot \textit{d} = 1 \bmod \varphi \textit{(N)}
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
}
|
||||
\fbox{%
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
%Beispiel:
|
||||
\begin{align*}
|
||||
{}
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
}\\[-1em]
|
||||
\end{center}
|
||||
Formen diese nach \textit{d} um :
|
||||
\begin{center}
|
||||
\fbox{%
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Theorie:
|
||||
\begin{align*}
|
||||
\textit{d} = \frac{\bmod \varphi\textit{(N)}}{\textit{e}}
|
||||
|
@ -226,16 +250,18 @@ Theorie:
|
|||
\end{minipage}%
|
||||
}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][40mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Beispiel:
|
||||
\begin{align*}
|
||||
\frac{\bmod \varphi\textit{(77)}}{\textit{7}}
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
}\\
|
||||
Danach können wir die Zahlen in die Formel setzen :\\
|
||||
}\\[-1em]
|
||||
\end{center}
|
||||
Danach können wir die Zahlen in die Formel setzen :
|
||||
\begin{center}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][20mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Theorie:
|
||||
\begin{align*}
|
||||
\textit{e}^{-1} \bmod \varphi\textit{(N)}
|
||||
|
@ -243,51 +269,56 @@ Theorie:
|
|||
\end{minipage}%
|
||||
}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][20mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Beispiel:
|
||||
\begin{align*}
|
||||
\frac{\bmod \varphi(77)}{\textit{7}}\\
|
||||
\begin{align*}
|
||||
\frac{\bmod \varphi(77)}{\textit{7}}\\[-3em]
|
||||
\end{align*}
|
||||
\begin{align*}
|
||||
\frac{\bmod \siebenmineinsxelfmineins}{\textit{7}}
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
}\\[2em]
|
||||
\end{align*}
|
||||
\end{minipage}
|
||||
}\\[-1em]
|
||||
\end{center}
|
||||
Aus der letzten Gleichung berechnen wir die Inverse, indem wir erstmal aus 60
|
||||
und 7 den euklidischen Algorithmus formen, als wollten wir den ggT dieser Zahlen
|
||||
ermitteln. Wir wissen schon dass der ggT(60,7) 1 ist, brauchen jedoch wie man
|
||||
gleich sieht einen Teil der kommenden Gleichung.\\
|
||||
ermitteln. Wir wissen schon dass der ggT(60,7) = 1 ist, brauchen jedoch wie man
|
||||
gleich sieht einen Teil der kommenden Gleichung.
|
||||
|
||||
In der Anwendung bauen wir die Gleichung auf nach : \\
|
||||
\\
|
||||
In der Anwendung bauen wir die Gleichung auf nach :
|
||||
\begin{center}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][40mm][t]{0.3\textwidth}
|
||||
Theorie:
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Theorie: \; ggT(\textit{m},\textit{e})
|
||||
\begin{align*}
|
||||
m & = Wert \cdot e + Wert \\
|
||||
\\
|
||||
\\
|
||||
\\
|
||||
m & = q_1 \cdot e_0 + rest_0 \\
|
||||
e_0 & = q_2 \cdot rest_0 + rest_1\\
|
||||
rest_0 & = q_3 \cdot rest_1 + rest_2\\
|
||||
rest_1 & = q_4 \cdot rest_2 + rest_3 \\
|
||||
rest_2 & = q_5 \cdot rest_3 + rest_4
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][40mm][t]{0.3\textwidth}
|
||||
Beispiel:
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Beispiel: \; ggT(60,7)
|
||||
\begin{align*}
|
||||
60 & = 8 \cdot 7 + 4\\
|
||||
7 & = 1 \cdot 4 + 3\\
|
||||
4 & = 1 \cdot 3 + 1 \label{eq:bspd1}\\ % IH | Labels können mit \ref{} dynamisch wieder aufgerufen werden
|
||||
3 & = 3 \cdot 1 + 0
|
||||
3 & = 3 \cdot 1 + 0 \\
|
||||
1 & = 1 \cdot 0
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
}
|
||||
|
||||
}\\[2em]
|
||||
\end{center}
|
||||
Der erweiterte euklidische Algorithmus besteht nun darin, ausgehend von der
|
||||
vorletzten Seite, diese Rechenschritte ''von unten nach oben'' in der folgenden
|
||||
Weise aufzurollen, indem die einzelnen Zeilen nach den Resten aufgelöst und
|
||||
diese nacheinander eingesetzt werden:\\
|
||||
\\
|
||||
diese nacheinander eingesetzt werden:
|
||||
\begin{center}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][40mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
%Theorie:
|
||||
\begin{align*}
|
||||
\\
|
||||
|
@ -298,56 +329,57 @@ diese nacheinander eingesetzt werden:\\
|
|||
\end{minipage}%
|
||||
}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][40mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Beispiel:
|
||||
\begin{align*}
|
||||
1 & = 4 - 1 \cdot 3 \\
|
||||
1 & = 4 - 1 \cdot ( 7- 1 \cdot 4)\\
|
||||
1 & = 4 - 1 \cdot 7 + 1 \cdot 4\\
|
||||
1 & =(-1) \cdot 7 + 2 \cdot 4 \\
|
||||
1 & = (-1) \cdot 7 + 2 \cdot (60-8 \cdot 7)\\
|
||||
1 & = (-1) \cdot 7 + 2 \cdot (60-8 \cdot 7)
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
} \\
|
||||
}\\[-1em]
|
||||
\end{center}
|
||||
|
||||
Zu beachten ist, dass wir alle Klammern, jedoch nicht alle Produkte %das verstehe ich nicht HI | 10.1.17
|
||||
ausmultiplizieren.\\
|
||||
\\
|
||||
ausmultiplizieren.
|
||||
|
||||
Da unsere Inverse von \textit{e} positiv und kleiner 60 sein soll, addieren wir \(60 \cdot 7\) auf
|
||||
der linken Seite. Die rechte Seite verändert sich nicht, da wir mod 60 rechnen.\\
|
||||
\\
|
||||
der linken Seite. Die rechte Seite verändert sich nicht, da wir mod 60 rechnen.
|
||||
\begin{center}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][40mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Theorie:
|
||||
\begin{align*}
|
||||
\\
|
||||
\\ % hier könnte ein Theorieteil eingefügt werden
|
||||
\\
|
||||
\\
|
||||
\textit{e} ^\textit{-1} \, \bmod \textit{N}
|
||||
1 & = \textit{d} ^\textit{e} \, \bmod \textit{N} \\
|
||||
\textit{d} &= \textit{e} ^\textit{-1} \ \bmod \textit{N}
|
||||
\end{align*}
|
||||
\end{minipage}% isi empfielt: https://www.youtube.com/watch?v=Grd-sxx5dEQ
|
||||
}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][40mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Beispiel:
|
||||
\begin{align*}
|
||||
1 & = 2 \cdot 60 -17 \cdot 7 \,\mid \bmod\\
|
||||
1 & = -17 \cdot 7 \bmod 60 \mid + 60 \cdot 7\\
|
||||
1 & = 43 \cdot 7 \, \bmod 60 \,\mid (60 - 17 = 43)\\
|
||||
1 & = \textit{d} ^\textit{e} \, \bmod \textit{N} \, \, \,\mid Umformen \, nach
|
||||
\, \textit{d} \, \\
|
||||
\\
|
||||
\textit{d} & = 7^{-1} \, \bmod 60 \\
|
||||
\textit{d} & = 43 \\
|
||||
\textit{d} & = 43
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
} \\[1em]
|
||||
}\\[-1em]
|
||||
\end{center}
|
||||
% IH | in Formeln werden leerzeichen ignoriert darum kann mit " \, " , " \: " ,
|
||||
%" \; " erstellt einen "schmalen", "mittleren" und "breiten" Leerschlag. Es geht
|
||||
%auch mit \thinspace, \medspace oder \thickspace...
|
||||
|
||||
|
||||
Danach lösen wir die Gleichung nach d auf.
|
||||
Danach lösen wir die Gleichung nach d auf und ergibt .
|
||||
|
||||
|
||||
\section{Verschlüsselung}
|
||||
|
@ -374,9 +406,10 @@ Normalfall irrelevant. Da wir aber in unserem Beispiel keine so grossen
|
|||
Primzahlen verwenden müssen wir diesen Punkt beachten um sicherzustellen das
|
||||
wir auch ein korrektes Ergebnis erhalten.)
|
||||
|
||||
Die Nachricht wird nun mit folgender Formel verschlüsselt: \\
|
||||
Die Nachricht wird nun mit folgender Formel verschlüsselt:
|
||||
\begin{center}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][40mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Theorie:
|
||||
\begin{align*}
|
||||
\textit{y} & = \textit{x}^\textit{e} \bmod \textit{N} \\
|
||||
|
@ -385,26 +418,28 @@ Theorie:
|
|||
\end{minipage}%
|
||||
}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][40mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Beispiel:
|
||||
\begin{align*}
|
||||
\textit{y} & = 47^{7} \bmod 77 \\
|
||||
\textit{y} & = 75 \\
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
}\\
|
||||
47 (y) ist unsere Verschlüsselte Nachricht, welche an den Empfänger
|
||||
}\\[-1em]
|
||||
\end{center}
|
||||
75 (y) ist unsere Verschlüsselte Nachricht, welche an den Empfänger
|
||||
übermittelt wird.
|
||||
\section{Entschlüsselung}
|
||||
\section{Entschlüsselung}
|
||||
Um die Nachricht zu entschlüsseln muss zuerst \textit{d} errechnet werden, dies geschieht
|
||||
mithilfe des erweiterten euklidischen Algorithmus. Diese Berechnung wurde
|
||||
bereits im Kapitel Schlüsselerzeugung erledigt.
|
||||
bereits im Kapitel \nameref{sec:Schlüsselkontruktion} erledigt.
|
||||
Unsere gesuchte Zahl lautet demnach 47 (\textit{d})
|
||||
|
||||
Da nun alle benötigten Variablen bekannt sind kann die Nachricht mit folgender
|
||||
Formel entschlüsselt werden.\\
|
||||
Formel entschlüsselt werden.
|
||||
\begin{center}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][40mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Theorie:
|
||||
\begin{align*}
|
||||
\textit{x} & = \textit{y}^\textit{d} \bmod \textit{N} \\
|
||||
|
@ -413,16 +448,15 @@ Theorie:
|
|||
\end{minipage}%
|
||||
}
|
||||
\fbox{%
|
||||
\begin{minipage}[t][40mm][t]{0.3\textwidth}
|
||||
\begin{minipage}[t]{0.3\textwidth}
|
||||
Beispiel:
|
||||
\begin{align*}
|
||||
\textit{x} & = 75^{43} \bmod 77 \\
|
||||
\textit{x} & = 47 \\
|
||||
\end{align*}
|
||||
\end{minipage}%
|
||||
}\\
|
||||
|
||||
|
||||
}\\[-1em]
|
||||
\end{center}
|
||||
\section{Schwachstellen}
|
||||
Obwohl schon einige verkündet haben die RSA Verschlüsselung geknackt zu haben
|
||||
ist es bisher noch niemandem gelungen einer Überprüfung stand zu halten. Es gibt
|
||||
|
|
Loading…
Reference in New Issue
Block a user