Schwachstellen Aufgelistet und Typographie erstellt damit Formelfaktoren besser erkannt werden.

This commit is contained in:
Ivan Hörler 2016-12-31 15:24:39 +01:00
parent 7ffca0c959
commit dc9da4d25b
6 changed files with 159 additions and 84 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

94
bib.bib
View File

@ -1,61 +1,63 @@
%% This BibTeX bibliography file was created using BibDesk.
%% http://bibdesk.sourceforge.net/
%% Created for Ivan Hörler at 2016-12-17 13:44:01 +0100
%% Saved with string encoding Unicode (UTF-8)
@misc{ref1,
author = {Wikipedia},
title = {{RSA} (Cryptosystem) --- {W}ikipedia{,} {D}ie freie
{E}nzyklop{\"a}die},
year = {2016},
note = {\url{https://en.wikipedia.org/wiki/RSA_(cryptosystem)}},
}
Author = {Wikipedia},
Note = {\url{https://en.wikipedia.org/wiki/RSA_(cryptosystem)}},
Title = {{RSA} (Cryptosystem) --- {W}ikipedia{,} {D}ie freie {E}nzyklop{\"a}die},
Year = {2016}}
@misc{ref2,
author = {Wikipedia},
title = {{RSA}-{K}ryptosystem --- {W}ikipedia{,}
{D}ie freie {E}nzyklop{\"a}die},
year = {2016},
note = {\url{https://de.wikipedia.org/wiki/RSA-Kryptosystem}},
}
Author = {Wikipedia},
Note = {\url{https://de.wikipedia.org/wiki/RSA-Kryptosystem}},
Title = {{RSA}-{K}ryptosystem --- {W}ikipedia{,} {D}ie freie {E}nzyklop{\"a}die},
Year = {2016}}
@misc{ref3,
author = {L. Van Houtven},
title = {Crypto 101},
year = {2016},
note = {\url{https://www.crypto101.io}},
}
Author = {L. Van Houtven},
Note = {\url{https://www.crypto101.io}},
Title = {Crypto 101},
Year = {2016}}
@misc{ref4,
author = {Whitfield Diffie und Martin Hellman},
title = {New Directions in Cryptographie},
year = {1976},
note = {\url{https://www-ee.stanford.edu/\%7Ehellman/publications/24.pdf}},
}
Author = {Whitfield Diffie und Martin Hellman},
Note = {\url{https://www-ee.stanford.edu/\%7Ehellman/publications/24.pdf}},
Title = {New Directions in Cryptographie},
Year = {1976}}
@misc{ref5,
author = {R.L. Rivest und A. Shamir und L. Adleman},
title = {A Method for Obtaining Digital Signatures and Public-Key
Cryptosystems},
year = {1978},
note = {\url{https://people.csail.mit.edu/rivest/Rsapaper.pdf}},
}
Author = {R.L. Rivest und A. Shamir und L. Adleman},
Note = {\url{https://people.csail.mit.edu/rivest/Rsapaper.pdf}},
Title = {A Method for Obtaining Digital Signatures and Public-Key Cryptosystems},
Year = {1978}}
@misc{ref6,
author = {Wikipedia},
title = {{D}iffie-{H}ellman-{S}chlüsselaustausch --- {W}ikipedia{,}
{D}ie freie {E}nzyklop{\"a}die},
year = {2016},
note = {\url{https://de.wikipedia.org/wiki/Diffie-Hellman-Schl%C3%BCsselaustausch}},
}
Author = {Wikipedia},
Note = {\url{https://de.wikipedia.org/wiki/Diffie-Hellman-Schl%C3%BCsselaustausch}},
Title = {{D}iffie-{H}ellman-{S}chl{\"u}sselaustausch --- {W}ikipedia{,} {D}ie freie {E}nzyklop{\"a}die},
Year = {2016}}
@misc{ref7,
author = {Wikipedia},
title = {{H}ybride {V}erschlüsselung --- {W}ikipedia{,}
{D}ie freie {E}nzyklop{\"a}die},
year = {2016},
note = {\url{https://de.wikipedia.org/wiki/Hybride_Verschl%C3%BCsselung}},
}
Author = {Wikipedia},
Note = {\url{https://de.wikipedia.org/wiki/Hybride_Verschl%C3%BCsselung}},
Title = {{H}ybride {V}erschl{\"u}sselung --- {W}ikipedia{,} {D}ie freie {E}nzyklop{\"a}die},
Year = {2016}}
@misc{ref8,
Author = {Manuel P{\"o}ter},
Note = {\url{http://www.manuel-poeter.at/tutorials/FBA-V1.0.PDF}},
Title = {Kryptographie - Public-Key Verfahren am Beispiel von RSA},
Year = {2001/2002 }}
@misc{ref9,
Author = {Prof. Johannes Buchmann},
Note = {\url{http://www.spektrum.de/magazin/faktorisierung-grosser-zahlen/823255}},
Title = {Faktorisierung grosser Zahlen},
Year = {1996}}
@misc{ref10,
Author = {Adi Shamir, Eran Tromer},
Note = {\url{http://www.wisdom.weizmann.ac.il/~tromer/papers/twirl.pdf}},
Title = {Factoring Large Numbers with the TWIRL Device},
Year = {2003}}

BIN
main.pdf

Binary file not shown.

142
main.tex
View File

@ -4,6 +4,7 @@
\author{Andreas Zweili, Ismail Cadaroski, Ivan Hörler, Michael Stratighiou}
%\institute{}
% \titlegraphic{\hfill\includegraphics[height=1.5cm]{logo.pdf}}
\numberwithin{equation}{subsection} % IH | Formelnummerierung mit Section Nummer kombiniert
\begin{document}
@ -87,78 +88,147 @@ Verfahren sehr viel schlechter ist. Deshalb wird RSA oftmals nur zum
Schlüsseltausch eingesetzt und eine symetrische Verschlüsselung zum
Verschlüsseln der eigentlichen Daten.
\begin{center}
\includegraphics[width=360pt]{Bilder/RSA-verschluesselungs-Vorgang.png}
\end{center}
\section{Verschlüsseln}
TODO:
Sind das wirklich alles Sections? Ich habe sie jetzt mal in Subsections
geändert. Ist evtl. eher Fett gemeint?
Ismail was hast du hier gemeint? Ist der Titel dieses Kapitels korrekt?
\subsection{Schlüsselkontruktion}
N = Privatschlüssel p= primzahl q = primzahl \\
e = Teilerfremder Wert d= modular inverse \\
N = 77 p = 7 q = 11 e = 7 d = 43
% ------------------------------------------- Makro Definitionen -------------------------------------------
\def\pq{\textit{p} \cdot \textit{q}}
\def\m{\varphi (\textit{p}\cdot\textit{q})} % IH | ich definiere ein Makro das mit "m" heist und mit \m aufgerufen werden kann.
\def\varphipxphiq{\varphi \textit{(p)} \cdot \varphi\textit{(q)}} % IH | ich definiere "phi p x phi q" \varphipxphiq
\def\pmineinsxqmineins{(\textit{p}-1) \cdot (\textit{q}-1)} % IH | ich definiere "p min eins x q min eins" \pmineinsxqmineins
% ------------------------------------------- Makro Definitionen -------------------------------------------
\textit{N} = Privatschlüssel \; \textit{p} = primzahl \; \textit{q} = primzahl \\
\textit{e} = Teilerfremder Wert \; \textit{d} = modular inverse \\
\textit{N} = 77 \; \textit{p} = 7 \; \textit{q} = 11 \; \textit{e} = 7 \; \textit{d} = 43
Es werden zwei verschiedene Primzahlen 7 und 11 gewählt und das Produkt daraus
gerechnet.
Gleichung erstellen nach :
\subsection{Konstruktion N}
\subsection{Konstruktion \textit{N}}
\begin{align*}
N & = p * q \\
77 & = 7 * 11 \\
\textit{N} & = \pq \\
77 & = 7 \cdot 11 \\
N & = 77 \\
\end{align*}
\subsection{Konstruktion m}
\subsection{Konstruktion \textit{m}}
\begin{align*}
\varphi (N) & = \varphi (p*q) \\
\varphi (N) & = \varphi (p) *\varphi(q) \\
\varphi (N) &= (p-1) * (q-1) \\
\varphi (N) &= (7-1) * (11-1) \\
\varphi (N) & = 60\\
\varphi \textit{(N)} & = \m \\
\varphi \textit{(N)} & = \varphipxphiq \\
\varphi \textit{(N)} & = \pmineinsxqmineins \\
\varphi \textit{(N)} & = (7-1) \cdot (11-1) \\
\varphi \textit{(N)} & = 60
\end{align*}
\subsection{Konstruktion e}
Wir bestimmen eine zu n = 60 teilerfremde Zahl
e < n -> 7 \\
\subsection{Konstruktion \textit{(e)}}
Wir bestimmen eine zu \textit{N} = 60 teilerfremde Zahl
\textit{e} < \textit{N} -> 7 \\
\begin{align*}
Platzhalter
\end{align*}
\subsection{Konstrktion d }
Um d zu Konstruieren müssen wir den erweiterten euklidischen Algorithmus mit m
\subsection{Konstruktion \textit{d} }
Um \textit{d} zu Konstruieren müssen wir den erweiterten euklidischen Algorithmus mit m
anwenden
\begin{align*}
60 & = 8 * 7 + 4\\
7 & = 1 * 4 + 3\\
4 & = 1 * 3 + 1\\
3 & = 3 * 1 + 0\\
\end{align*}
\begin{align}
60 & = 8 \cdot 7 + 4\\ % IH | frage an Ismail: wo her kommt die 8 und die 4? Da verstehe ich die Rechnung nicht...
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
\end{align}
Danach verwenden wir die 2. letzte Zeile und formen die Gleichung nach 1 um
Danach verwenden wir Formelnr. \ref{eq:bspd1} und formen die Gleichung nach 1 um
\begin{align*}
1 & = 4 - 1 * 3 \\
1 & = 4 - 1 * ( 7- 1*4)\\
1 & = 4 - 1 * 7 + 1 * 4\\
1 & =(-1) * 7 + 2*4 \\
1 & = (-1) * 7 + 2 * (60-8*7)\\
1 & = 2* 60 -17 * 7 \ (mod)\\
1 & = 43*7 mod 60 // (60 -17 = 43)\\
1 & = d ^e mod n /// ( Umformen_ nach_ d)\\
d & = 7^-1 mod 60 \\
d & = 43\\
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 & = 2 \cdot 60 -17 \cdot 7 \, (mod)\\
1 & = 43 \cdot 7 \, mod 60 \, (60 - 17 = 43)\\
1 & = \textit{d} ^\textit{e} \, mod \, \textit{n} \, \slash \, ( \, Umformen \, nach \, \textit{d} \, )\\
% IH | in Formeln werden leerzeichen ignoriert darum kann mit " \, " , " \: " , " \; " erstellt einen "schmalen", "mittleren" und "breiten" Leerschlag. Es geht auch mit \thinspace, \medspace oder \thickspace...
\textit{d} & = 7^{-1} \, mod \, 60 \\
\textit{d} & = 43
\end{align*}
\section{Entschlüsselung}
Hallo Dies ist ein Test
\section{Schwachstellen}
Hallo Dies ist ein Test
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 aber durchaus realistische ideen wie der Code zerbrochen werden kann, nachgehend stellen wir die Wichtigsten Methoden vor.
\subsection{Brut-force}
Die Methode alle möglichen Primzahlen von $\varphi=\pmineinsxqmineins$ auszuprobieren gilt als nicht einfacher als \textit{N} zu Faktorisieren.
\subsection{Fakturierung durch die Kenntnis von \textit{N} }
Weil die Faktoren von \textit{N} den $\varphi$\textit{N} ermitteln lassen kann auch \textit{d} ermittelt werden.
Die Erfinder RSA selbst, berechneten anhand eines Algorithmus von Richard Schroeppel und der Annahme das ein Annäherungsschritt 1ms benötigt die Zerlegung von:
\begin{center}
\begin{tabular}{| l | l | l |} % >{\( }c<{ \)}
\hline
\textbf{Zeichen} & \textbf{Operationen} & \textbf{Zeit} \\
50 & $1.4 \cdot 10^10$ & 3.9 Stunden \\
75 & $9.0 \cdot 10^12$ & 104 Tage \\
100 & $2.3 \cdot 10^15$ & 74 Jahre \\
200 & $1.2 \cdot 10^23$ & $3.8 \cdot 10^9$ Jahre \\
\hline
\end{tabular}
\end{center}
\begin{enumerate}
\item Diese Berechnungen der Entschlüsselungs-Zeiten sind überholt. (stand 1978)
\item 1996 schreibt der Prof. Johannes Buchmann von der Universität Saarbrücken das ein Parallelisiertes Netz von 250 Rechnern auf dem Campusareal für eine 130 Stellige Zahl mehrere Wochen benötigt und sich mit mit drei zusätzlichen Dezimalstellen verdoppelt.
\item 2003 veröffentlichte Adi Shamir und Eran Tromer einen technischen Report wie ein RSA Schlüssel von 1024 bit in unter einem Jahr gebrochen werden kann. \cite{ref10} % <-- bibtex Link
\end{enumerate}
\textbf{Diese drei Beispiele zeigen auf wie unvorhersehbar die Standhaftigkeit eines Schlüssels in Bezug auf Zeit ist. }
Die Formel zur Zerlegung von $\varphi$\textit{N} lautet:
\begin{equation}
\varphi=2 \cdot kgV\left(\frac{p-1} {2} , \frac{q-1}{2}\right)
\end{equation}
\subsection{Berechnung von $\varphi$\textit{N} ohne Fakturierung von \textit{N} }
Natürlich lässt sich $\varphi$\textit{N} auch ohne Fakturierung von \textit{N} ermitteln wenn \textit{d} bekannt ist oder ermittelt werden kann.
Da \textit{d} jedoch ein multiplikator von $\varphi$\textit{N} ist, ist sein wert nicht leichter zu ermitteln als die Fakturierung von \textit{N} ist.
%IH | Ivan, check ob die Formel auch stimmt sobald Ismail die Section Konstruktion von "d" fertig hat!
\subsection{zu kleine Multiplikator-Primzahlen}
Da die Sicherheit von RSA darauf beruht dass die Fakturierung von Primzahlen Zeit benötigt, ist sie auch nur
so stark wie die Grösse der Primzahl \textit{q} die Multipliziert mit \textit{p} den Modulus ergibt. Ist \textit{q} oder \textit{p} kleiner als 100 Stellen, wird daraus nicht ein Schlüssel $>10^200$ entstehen und damit die Verschlüsselung zwar schneller geschehen aber sie ist auch gefährdeter durch Brute-force Attacken oder Fakturierung zerlegt zu werden.
\subsection{Gleiche $\varphi$ \textit{N} }
\subsection{Riehmann hypotese }
Die Riehmann Hypothese beschreibt ein bisher ungelöstes Mathematisches Problem.
Sollte sich die Theorie der Reihmann Hypothese bewarheiten könnten daraus Primzahlen abgeleitet werden auf dessen Basis die Zerlegung von \textit{N} einfacher und schneller ausgeführt werden kann.
\subsection{Social Engineering}
Durch das Abfangen einer Nachricht kann ein Angreifer damit noch nichts anfangen da sie mit dem Schlüssel des Empfängers Verschlüsselt ist. Möchte er diese nun entschlüsseln muss er an den Schlüssel des Empfängers kommen. Dazu kann er die Datei wiederum mit einem Ihm bekannten Schlüssel verschlüsseln und sie dem Empfänger erneut und gegebenenfalls unter Verschleierung seiner Identität zustellen. Dieser wird nun die Datei mit seinem Schlüssel entschlüsseln und nichts damit anfangen können da sie immer noch mit dem Schlüssel des Angreifers verschlüsselt ist. Bringt nun der Angreifer durch Geschick den Empfänger dazu Ihm diese entschlüsselte vermeintlich defekte Datei zuzusenden kann er sie mit seinem Schlüssel entschlüsseln und den Inhalt lesen.
% IH | Ivan finde heraus ob auch der Schlüssel gefunden werden kann...
\newpage
\section{Referenzen}

View File

@ -22,11 +22,11 @@
\linespread{1.3}
%Make whitespace in tables bigger
\renewcommand\arraystretch{1.5}
\renewcommand\arraystretch{1.2} % IH. von 1.5 auf 1.2 geändert.
%Enable colours for tables
\RequirePackage[table]{xcolor}
%\RequirePackage{array} % formula rows in tables
%Needed to rotate graphics and tables
\RequirePackage{rotating}
@ -72,3 +72,6 @@
listing options={basicstyle=\ttfamily,},
title=\thetcbcounter #2, #1
}
% Reference a Bibtext item
\RequirePackage{cite}