\documentclass{math_rsa}
\title{Einführung zu RSA}
\date{\today}
\author{Andreas Zweili, Ismail Cadaroski, Ivan Hörler, Michael Stratighiou}
%\institute{}
% \titlegraphic{\hfill\includegraphics[height=1.5cm]{logo.pdf}}

\begin{document}

\begin{titlepage}
\maketitle
\thispagestyle{empty}
\end{titlepage}

\tableofcontents
\newpage

\section{Einführung}

Diese Arbeit wird eine Einführung zu dem Verschlüsselungsalgorithmus RSA geben.
Anhand von vereinfachten Rechnungen wird die Funktion des Algorthmus
veranschaulicht und erklärt. In der Realität sind die verwendeten Zahlen jedoch
um ein x-faches grösser. Die nachfolgende Zahl ist 1024 Bit gross. Der Leser
kann sich also ungefähr vorstellen wie gross die Zahlen sind wenn die heutige
empfohlene Grösse bei 4096 Bit liegt.

\begin{sexylisting}{RSA-1024 Primzahl}
13506641086599522334960321627880596993888147560566
70275244851438515265106048595338339402871505719094
41798207282164471551373680419703964191743046496589
27425623934102086438320211037295872576235850964311
05640735015081875106765946292055636855294752135008
52879416377328533906109750544334999811150056977236
890927563
\end{sexylisting}

\subsection{Geschichte}

Im Jahre 1976 wurde von Whitfield Diffie und  Martin Hellman eine
Theorie zu Publickey-Kryptographie veröffentlicht. In welcher sie ein Konzept
Namens "Falltür" präsentieren. Dabei handelt es sich um mathematische Probleme
welche in eine Richtung sehr aufwändig und in die andere Richtung viel einfacher
zu lösen sind.

Ronald L. Rivest, Adi Shamir und Leonard Adleman wollten nach der
Veröffentlichung der Theorie von Herrn Diffie und Herrn Hellman beweisen das 
solche Falltüren nicht existieren. Dabei entdeckten sie jedoch genau solch eine
Falltür daraus entwickelten sie dann den RSA Algorithmus welchen sie 1977
vorstellten. RSA steht dabei für die Anfangsbuchstaben ihrer Familiennamen. 

Im Jahre 2002 erhielten sie den Turing-Award für ihre Arbeit auf dem Gebiet der
Kryptographie. Welcher oft als Nobel Preis für Informatik bezeichnet wird.

\subsection{Verwendung}

RSA wird heute in eine Vielzahl an Programmen eingesetzt. Von besonderer
Wichtigkeit sind hier folgende Systeme zu Erwähnen.

\textbf{Bankkarten nach dem EMV Standard}

Dieser Standard definiert wie der Chip auf den Karten zu funktionieren hat und 
wie die Authentifizierung gegenüber den Bankautomaten funktioniert.

\textbf{HTTPS (TLS und X.509-Zertifikate)}

HTTPS garantiert das die Zugriffe auf Website welche es unterstützen,
vor Manipulationen sowie Spionage von Unbefugten geschützt sind. Dies ist
insbesondere bei eBanking oder Websiten mit Logins essentiel wichtig. Ansonsten
ist es ein Leichtes Konten zu übernehmen.

\textbf{SSH (Secure Shell)}

SSH ist ein Protokoll mit welchem man remote auf Unix Systeme Zugreifen kann.
Am häufigsten wird es genutzt zur Administrierung von Servern oder zur
Übertragung von Dateien.

\textbf{OpenPGP}

OpenPGP ist ein Verschlüsselungsverfahren welches hauptsächlich bei der
Verschlüsselung von Emails verwendet wird. Abseits davon wird es auch zur
Signierung von Dateien eingesetzt.


Zusätzlich sollte noch erwähnt werden das RSA in den meisten Fällen nicht
alleine eingesetzt wird da die Performance von RSA im Vergleich zu symetrischen
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.

\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 \

Es werden zwei verschiedene Primzahlen 7 und 11 gewählt und das Produkt daraus gerechnet.

Gleichung  erstellen nach :

\subsection{Konstruktion N}
\begin{align*}
	N & = p * q  \\
	77 & = 7 * 11 \\
	N &  = 77 \\
\end{align*}
  
\subsection{Konstruktion 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\\
\end{align*}

\subsection{Konstruktion e}
Wir bestimmen eine zu n = 60 teilerfremde Zahl 
e < n -> 7 \\
\begin{align*}

\end{align*}

\subsection{Konstrktion d }
Um 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*}
Danach verwenden wir die 2. letzte Zeile  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\\
\end{align*}

\section{Entschlüsselung}
Hallo Dies ist ein Test

\section{Schwachstellen}
Hallo Dies ist ein Test

\newpage
\section{Referenzen}
  \nocite{*}
  \bibliographystyle{plain}
  \bibliography{bib}
  
\end{document}
