Commit 60e1f2bd authored by Stefan Heid's avatar Stefan Heid
Browse files

Zusammenfassung letzte Version (Nach Klausur)

parent dd115248
......@@ -109,7 +109,12 @@ WS 14/16
gilt:\\
$ V $ perfekt geheim $ \Leftrightarrow (K \text{ gleichverteilt } \land \forall(p,c)\in P\times C\ \exists k\in K: E_k(p)=c ) $
\paragraph{Beweis: \enquote{$ \Rightarrow $}:}
\subsubsection*{Beweis: \enquote{$ \Rightarrow $}:}
Angenommen es $ V $ ist perfekt geheim, aber $ \exists (p,c)\in P\times C\ \neg\exists k\in K: E_k(p)=c$. Für ein solches Paar gilt aber $ 0<Pr(p)\neq Pr(p|c) = 0 $. Durch diesen Widerspruch kann aus der perfekten Geheimhaltung auf die zweite Behauptung geschlossen werden.
\paragraph{Beweis: \enquote{$ \Leftarrow $}:}
......@@ -159,7 +164,7 @@ WS 14/16
\item $ P=C=K=\{0,1\}^n $ wobei $ n=tb $
\item $ r $ Runden
\item Keyschedule $ k \mapsto k_0,\dots,k_r $ mit $ |k_i|=n $
\item $ t $ bijektive Substitutionen $ S_i:\{0,1\}^n\to \bits^n$
\item $ t $ bijektive Substitutionen $ S_i:\{0,1\}^b\to \bits^b$
\item Permutation $ f: \{1,\dots,n\} \to \{1,\dots,n\}$
\end{itemize}
\begin{enumerate}
......@@ -169,16 +174,52 @@ WS 14/16
\end{enumerate}
\subsubsection{AES}
\begin{itemize}
\item $ P=C=K=\{0,1\}^128 $ wobei $ 128=tb $ mit $ t=16,b=8 $
\item $ r=10 $ Runden
\item Keyschedule $ k \mapsto k_0,\dots,k_10 $ mit $ |k_i|=128 $
\item Letzte Runde ohne MixColumns
\end{itemize}
\begin{enumerate}
\item $ t $ bijektive Substitutionen Subbytes $ S_i:\{0,1\}^8\to \bits^8$
\begin{itemize}
\item Jedes Byte wird als Lookup in einer Matrix verstanden und der 8-bit Eintrag an der Stelle zurückgegeben
\end{itemize}
\item Permutation $ f: \{1,\dots,128\} \to \{1,\dots,128\}$\\
Die 16 Bytes werden als $ 4\times 4 $ Matrix gesehen.
\begin{itemize}
\item ShiftRows: $ i $-te Zeile um $ i-1 $ nach rechts rotieren
\item MixColumns: Statische Matrix von rechts an die gegebene Matrix multiplizieren.
\end{itemize}
\item Ergebnis \textsc{Xor} Rundenschlüssel
\end{enumerate}
\subsection{Asymetrische Verschlüsselung}
\subsection{Asymmetrische Verschlüsselung}
$ d $ kann nicht mit vertretbarem Aufwand aus $ e $ berechnet werden. $ e $ kann öffentlich sein.
\subsubsection{RSA}
\begin{itemize}
\item $ p,q $ sind Primzahlen geeigneter Länge, so ist $ N=pq $
\item Wähle $ e\in\Z^*_{\varphi(N)} $ und errechne $ d\in\Z^*_{\varphi(N)} $ mit $ ed=1 \mod \varphi(N) $
\item $ pk=(N,e) $ und $ sk=(N,d) $
\item $ E_{(N,e)}=m^e \mod N =c $
\item $ D_{(N,d)}=c^d \mod N =m $
\end{itemize}
\subsubsection{Elgamal}
\begin{itemize}
\item $ p $ ist Primzahl geeigneter Länge und einen Generator von $ \Z_p^* $
\item Wähle ein zufälliges $ a\in\{0,\dots,p-2\} =\Z^*_p$ und setze $ h=g^a\mod p $
\item $ pk=(p,g,h) $ und $ sk=(p,g,a) $
\end{itemize}
\begin{enumerate}
\item wähle $ r\in\{0,\dots,p-2\} $
\item $ c=(v,w) $ mit $ v=g^r\mod p $ und $ w=h^r m \mod p $
\item $ m=u^{-1} w $ mit $ u=v^a $
\end{enumerate}
\subsubsection{Diffie-Helman Protokoll}
\subsubsection{Diffie-Hellman Protokoll}
\begin{enumerate}
\item Alice erzeugt einen privaten Exponenten $ a $ einen Generator $ g $ und eine Primzahl $ p $
\item Alice errechnet $ A=g^a \mod p $ und schickt $ A,g,p $ an Bob
......@@ -189,8 +230,26 @@ WS 14/16
\end{enumerate}
Ein passiver Angreifer kann aus $ A,B,g,p $ geheimen Schlüssel $ k $ nicht errechnen. Um das Verfahren gegen aktive Angreifer zu sichern werden ist ein Authentifizierungsverfahren nötig.
\subsubsection{Babystep-Giantstep-Algorithmus}
Berechnet das diskrete Logarithmus Problem in einer zyklischen Gruppe, wobei die Basis ein Generator für diese Gruppe sein muss.
\begin{algorithmic}[1]
\Procedure{BabystepGiantstep}{Basis g, Argument x}
\State $ m\gets \lceil \sqrt{G}\rceil $
\State $ h\gets g^m $
\State Initialisiere Wörterbücher $ D_1, D_2 $
\ForAll{$ i\in{0,\dots,m-1} $}
\State $ D_1.put(xg^i,i) $
\State $ D_2.put(h^i,i) $
\EndFor
\ForAll{$ key $ \textbf{in} $ D_1.keys() $ }
\If {$ D_2.contains(key) $}
\State\Return $ D_2.get(key)\cdot m- D_1.get(key) $
\EndIf
\EndFor
\EndProcedure
\end{algorithmic}
% #####################################
% #####################################
......@@ -234,12 +293,66 @@ Ist nur eine parametrisierte Kompressionsfunktion $ h_k $ und eine Hashfunktion
% #####################################
\section{Zurechenbarkeit \ent\ Digitale Signaturen}
\subsection{Mögliche Angriffe}
\begin{description}
\item[No-Message] Angreifer kann unter Kenntnis des öffentlichen Schlüssels für eine beliebige Nachricht $ m $ eine gültige Signatur $ u $ erzeugen.
\item[Chosen-Message] Angreifer kann unter Kenntnis des öffentlichen Schlüssels und beliebiger Paare $ (m',u') $ eine gültige Signatur $ u $ für Nachricht $ m $ erzeugen.
\end{description}
\subsection{RSA}
Schlüsselerzeugung wie bei RSA
$ P=U=\Z_N,\qquad S_{(N,d)}(m)=m^d=u\mod N,\qquad V_{(N,e)}(m,u)=1\Leftrightarrow u^e=m\mod N $
Weder sicher gegen No-Message- noch gegen Choosen-Message-Modell.
\subsubsection{mit Redundanz}
$ S_{(N,d)}(m)=(m||m)^d=u\mod N $ wobei $ m $ in seiner Binärdarstellung vorliegt.\\
$ P=\bits^l$ mit $ l=\lfloor \log(N)/2\rfloor, U=\Z_N $
\subsubsection{mit Hashing}
$ S_{(N,d)}(m)=h(m)^d=u\mod N $\\
$ P=\bits^*, U=\Z_N $
\subsection{Elgamal}
Schlüsselerzeugung wie bei Elgamal, $ pk=(p,g,A=g^a) $
\subsection{DSA}
$ P=\Z_{p-1} \qquad U=\Z_p\times \Z_{p-1}$
\begin{enumerate}
\item Wähle zufälliges $k\in\{1,\dots,p-2\} $ mit $ ggT(k,p-1)=1 $
\item $ u=(r,s) $ mit $ r=g^k $ und $ s=k^{-1}(m-ar)\mod p-1 $
\end{enumerate}
$ V_{(p,g,h)}(m,v,w)=1\Leftrightarrow A^rr^s=g^m \mod p $
Weder sicher gegen No-Message- noch gegen Choosen-Message-Modell.
\subsubsection{mit Hashing}
$ P=\bits^* $
$ u=(r,s) $ mit $ r=g^k $ und $ s=k^{-1}(h(m)-ar)\mod p-1 $
$ V_{(p,g,h)}(m,v,w)=1\Leftrightarrow A^rr^s=g^{h(m)} \mod p $
\subsection{DSA}
\subsubsection*{Schlüsselerzeugung}
\begin{enumerate}
\item Erzeuge kleine Primzahl $ q $ mit $ 2^159<q<160 $
\item Erzeuge große Primzahl $ p $ mit $ 2^{511+64 t} < p < 2^{512+64 t} , t \in{ 1,\dots,8} $ und $ q|p-1 $
\item Wähle Generator $ z\in\Z_p^* $ und setze $ g=z^{(p-1)/q} $
\item Wähle $ a\in\{1,\dots,q-1\} $ und setze $ A=g^a \mod p $
\item $ pk=(p,q,g,A), sk=(p,q,g,a) $
\end{enumerate}
$ P=\bits^*, U=\Z_q\times\Z_q, h:\bits^*\to\Z_q $
\subsubsection*{Signatur}
\begin{enumerate}
\item Wähle zufälliges $k\in\{1,\dots,q-1\} $
\item $ u=(r,s) $ mit $ r=g^k \mod q $ und $ s=k^{-1}(h(m)+ar)\mod q $ mit $ s\neq0 $
\end{enumerate}
\subsubsection*{Verifikation}
$ V_{(p,q,g,A)}(m,r,s) = 1 \gdw r=\left(\left(A^{rs^{-1} \mod q} g^{h(m)s^{-1}\mod q}\right) \mod p\right) \mod q $
% #####################################
......@@ -255,19 +368,14 @@ Ist nur eine parametrisierte Kompressionsfunktion $ h_k $ und eine Hashfunktion
\cmark\ Sicher
\end{description}
% #####################################
% #####################################
\section{ToDos}
\begin{itemize}
\item Substitutions-Permuations Netzwerke
\item AES
\item Beweis des Satz von Shannon
\item RSA + Korrektheitsbeweis
\item Elgamal
\item Babystep-giantstep algo
\item RSA Unterschriften
\item Elgamal Unterschriften
\item DSA
\item RSA Korrektheitsbeweis Theorem 9.3.4 im Buch
\end{itemize}
\end{document}
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment