391 lines
13 KiB
TeX
391 lines
13 KiB
TeX
\documentclass[12pt,a4paper,german]{article}
|
||
\usepackage{url}
|
||
%\usepackage{graphics}
|
||
\usepackage{times}
|
||
\usepackage[T1]{fontenc}
|
||
\usepackage{pifont}
|
||
\usepackage{ngerman}
|
||
\usepackage{float}
|
||
\usepackage{diagbox}
|
||
\usepackage[latin1]{inputenc}
|
||
\usepackage{geometry}
|
||
\usepackage{amsfonts}
|
||
\usepackage{amsmath}
|
||
\usepackage{csquotes}
|
||
\usepackage{graphicx}
|
||
\usepackage{epsfig}
|
||
\usepackage{paralist}
|
||
\geometry{left=2.0cm,textwidth=17cm,top=3.5cm,textheight=23cm}
|
||
|
||
%%%%%%%%%% Fill out the the definitions %%%%%%%%%
|
||
\def \name {Valentin Brandl} %
|
||
\def \matrikel {108018274494} %
|
||
% \def \pname {Vorname2 Nachname2} %
|
||
% \def \pmatrikel {Matrikelnummer2} %
|
||
\def \gruppe {Gruppe 193} %
|
||
\def \uebung {1} %
|
||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
||
% DO NOT MODIFY THIS HEADER
|
||
\newcommand{\hwsol}{
|
||
\vspace*{-2cm}
|
||
\noindent \matrikel \quad \name \hfill Gruppe:\gruppe \\
|
||
% \noindent \pmatrikel \quad \pname \\
|
||
\begin{center}{\Large \bf L\"osung f\"ur \"Ubung \# \uebung}\end{center}
|
||
}
|
||
|
||
\newcommand{\cmark}{\ding{51}}%
|
||
\newcommand{\xmark}{\ding{55}}%
|
||
|
||
\begin{document}
|
||
%Import header
|
||
\hwsol
|
||
|
||
|
||
\section*{Aufgabe 1}
|
||
\begin{enumerate}[(a)]
|
||
\item
|
||
\begin{eqnarray*}
|
||
7 \cdot 5 &\equiv{}& 16 \mod 19 \\
|
||
\text{check: } (7 \cdot 5) - 16 = 35 - 16 = 19 &\rightarrow{}& 19 \mid 19
|
||
\end{eqnarray*}
|
||
|
||
\item
|
||
\begin{eqnarray*}
|
||
7 \cdot 81 &\equiv{}& 16 \mod 19 \\
|
||
\text{check: } (7 \cdot 81) - 16 = 567 - 16 = 551 &\rightarrow{}& 19 \mid 551
|
||
\end{eqnarray*}
|
||
|
||
$5 \equiv 81 \mod 19$
|
||
|
||
\item
|
||
\begin{eqnarray*}
|
||
26 \cdot 43 &\equiv{}& 16 \mod 19 \\
|
||
\text{check: } (26 \cdot 43) - 16 = 1118 - 16 = 1102 &\rightarrow{}& 19 \mid 1102
|
||
\end{eqnarray*}
|
||
|
||
$26 \equiv 7 \mod 19$ und $43 \equiv 5 \mod 19$
|
||
|
||
\item
|
||
\begin{eqnarray*}
|
||
-12 \cdot 43 &\equiv{}& 16 \mod 19 \\
|
||
\text{check: } (-12 \cdot 43) - 16 = -516 - 16 = -532 &\rightarrow{}& 19 \mid -532
|
||
\end{eqnarray*}
|
||
|
||
$-12 \equiv 7 \mod 19$ und $43 \equiv 5 \mod 19$
|
||
|
||
\end{enumerate}
|
||
|
||
\section*{Aufgabe 2}
|
||
\begin{enumerate}[(a)]
|
||
\item
|
||
\begin{eqnarray*}
|
||
(2 \cdot 5) \cdot 10 &\mod{}& 13
|
||
\end{eqnarray*}
|
||
|
||
Moduloreduktion am Ende (<28>quivalent zu Moduloreduktion auf Zwischenergebnisse, da alle Zahlen $< 13$ und
|
||
Zwischenergebnis $2 \cdot 5 = 10 < 13$):
|
||
|
||
\begin{eqnarray*}
|
||
\Rightarrow 100 \equiv 9 &\mod{}& 13
|
||
\end{eqnarray*}
|
||
|
||
\item
|
||
\begin{eqnarray*}
|
||
2^3 \cdot 8 \mod 250
|
||
\end{eqnarray*}
|
||
|
||
Moduloreduktion am Ende (siehe Teilaufgabe (a); alle Zwischenergebnisse $< 250$):
|
||
|
||
\begin{eqnarray*}
|
||
2^3 \cdot 8 = 8 \cdot 8 = 64 &\mod{}& 250
|
||
\end{eqnarray*}
|
||
|
||
\item
|
||
\begin{eqnarray*}
|
||
7 \cdot 11 &\mod{}& 11
|
||
\end{eqnarray*}
|
||
|
||
Moduloreduktion am Ende:
|
||
|
||
\begin{eqnarray*}
|
||
7 \cdot 11 = 77 \equiv 0 &\mod{}& 11
|
||
\end{eqnarray*}
|
||
|
||
Moduloreduktion auf Zwischenergebnisse
|
||
|
||
\begin{eqnarray*}
|
||
7 \cdot 11 \equiv 7 \cdot 0 = 0 &\mod{}& 11
|
||
\end{eqnarray*}
|
||
|
||
\item
|
||
\begin{eqnarray*}
|
||
3 \cdot 8 - 11 \cdot 6 &\mod{}& 250
|
||
\end{eqnarray*}
|
||
|
||
Moduloreduktion am Ende:
|
||
|
||
\begin{eqnarray*}
|
||
3 \cdot 8 - 11 \cdot 6 = 24 - 66 = -42 \equiv 208 &\mod{}& 250
|
||
\end{eqnarray*}
|
||
|
||
\item
|
||
\begin{eqnarray*}
|
||
(2 \cdot 5 - 19) \cdot 5^6 &\mod{}& 75
|
||
\end{eqnarray*}
|
||
|
||
Moduloreduktion am Ende:
|
||
|
||
\begin{eqnarray*}
|
||
(2 \cdot 5 - 19) \cdot 5^6 = -9 \cdot 15625 = -140625 \equiv 0 &\mod{}& 75
|
||
\end{eqnarray*}
|
||
|
||
Moduloreduktion auf Zwischenergebnisse:
|
||
|
||
\begin{eqnarray*}
|
||
(2 \cdot 5 - 19) \cdot 5^6 = (10 + 56) \cdot (5^2 \cdot 5^2 \cdot 5^2) &\mod{}& 75 \\
|
||
66 \cdot (25 \cdot 25 \cdot 25) = 66 \cdot (625 \cdot 25) \equiv 66 \cdot (25 \cdot 25) &\mod{}& 75 \\
|
||
66 \cdot (25 \cdot 25) \equiv 66 \cdot 25 = 1650 \equiv 0 &\mod{}& 75
|
||
\end{eqnarray*}
|
||
|
||
\item
|
||
\begin{eqnarray*}
|
||
\frac{74}{7} &\mod{}& 11 \\
|
||
74 * 7^{-1} &\mod{}& 11 \\
|
||
\end{eqnarray*}
|
||
|
||
Bestimmung von $7^{-1} \mod 11$ (multiplikative Inverse von $7$ in $\mathbb{Z}_{11}$):
|
||
|
||
\begin{eqnarray*}
|
||
7 * x \equiv 1 &\mod{}& 11 \\
|
||
7 * 8 = 56 \equiv 1 &\mod{}& 11 \\
|
||
\Rightarrow 7^{-1} \equiv 8 &\mod{}& 11
|
||
\end{eqnarray*}
|
||
|
||
Moduloreduktion am Ende:
|
||
|
||
\begin{eqnarray*}
|
||
74 * 8 = 592 \equiv 9 &\mod{}& 11
|
||
\end{eqnarray*}
|
||
|
||
Moduloreduktion auf Zwischenergebnisse:
|
||
|
||
\begin{eqnarray*}
|
||
74 * 8 \equiv 8 * 8 = 64 \equiv 9 &\mod{}& 11
|
||
\end{eqnarray*}
|
||
|
||
\item
|
||
\begin{eqnarray*}
|
||
\frac{5 \cdot 2 - 8}{7^2} &\mod{}& 11 \\
|
||
(5 * 2 - 8) * (7^2)^{-1} &\mod{}& 11 \\
|
||
\end{eqnarray*}
|
||
|
||
Bestimmung von $(7^2)^{-1} = 49^{-1} \equiv 5^{-1} \mod 11$
|
||
|
||
\begin{eqnarray*}
|
||
49 * x \equiv 5 * x \equiv 1 &\mod{}& 11 \\
|
||
5 * 9 = 45 \equiv 1 &\mod{}& 11 \\
|
||
\Rightarrow 49^{-1} \equiv 5^{-1} \equiv 9 &\mod{}& 11
|
||
\end{eqnarray*}
|
||
|
||
Moduloreduktion am Ende:
|
||
|
||
\begin{eqnarray*}
|
||
(5 * 2 - 8) * (7^2)^{-1} = 2 * 49^{-1} \equiv 2 * 9 = 18 \equiv 7 &\mod{}& 11 \\
|
||
\end{eqnarray*}
|
||
|
||
Moduloreduktion auf Zwischenergebnisse:
|
||
|
||
\begin{eqnarray*}
|
||
(5 * 2 - 8) * (7^2)^{-1} = 2 * 49^{-1} \equiv 2 * 5^{-1} \equiv 2 * 9 = 18 \equiv 7 &\mod{}& 11 \\
|
||
\end{eqnarray*}
|
||
|
||
\end{enumerate}
|
||
|
||
\section*{Aufgabe 3}
|
||
|
||
\begin{enumerate}[(a)]
|
||
\item $5^{-1} \mod 13$
|
||
|
||
$\text{ggT}(5, 13) = 1 \Rightarrow 5^{-1}$ existiert.
|
||
|
||
\begin{eqnarray*}
|
||
5 * x \equiv 1 &\mod{}& 13 \\
|
||
x = 1 \Rightarrow 5 * 1 = 5 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 2 \Rightarrow 5 * 2 = 10 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 3 \Rightarrow 5 * 3 = 15 \equiv 2 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 4 \Rightarrow 5 * 4 = 20 \equiv 7 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 5 \Rightarrow 5 * 5 = 25 \equiv 12 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 6 \Rightarrow 5 * 6 = 30 \equiv 4 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 7 \Rightarrow 5 * 7 = 35 \equiv 9 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 8 \Rightarrow 5 * 8 = 40 \equiv 1 &\mod{}& 13 \text{ \cmark} \\
|
||
\Rightarrow 5^{-1} \equiv 8 &\mod{}& 13
|
||
\end{eqnarray*}
|
||
|
||
\item $3 * 4 * 4^{-1} \mod 13$
|
||
\begin{eqnarray*}
|
||
3 * 4 * 4^{-1} \equiv 3 * 1 = 3 &\mod{}& 13
|
||
\end{eqnarray*}
|
||
|
||
\item $3 * 2 * 4^{-1} \mod 13$
|
||
|
||
Bestimmung der multiplikativen Inverse $4^{-1} \mod 13$:
|
||
|
||
$\text{ggT}(4, 13) = 1 \Rightarrow 4^{-1}$ existiert.
|
||
|
||
\begin{eqnarray*}
|
||
4 * x \equiv 1 &\mod{}& 13 \\
|
||
x = 1 \Rightarrow 4 * 1 = 4 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 2 \Rightarrow 4 * 2 = 8 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 3 \Rightarrow 4 * 3 = 12 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 4 \Rightarrow 4 * 4 = 16 \equiv 3 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 5 \Rightarrow 4 * 5 = 20 \equiv 7 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 6 \Rightarrow 4 * 6 = 24 \equiv 11 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 7 \Rightarrow 4 * 7 = 28 \equiv 2 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 8 \Rightarrow 4 * 8 = 32 \equiv 6 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 9 \Rightarrow 4 * 9 = 36 \equiv 10 &\mod{}& 13 \text{ \xmark} \\
|
||
x = 10 \Rightarrow 4 * 10 = 40 \equiv 1 &\mod{}& 13 \text{ \cmark} \\
|
||
\Rightarrow 4^{-1} \equiv 10 &\mod{}& 13
|
||
\end{eqnarray*}
|
||
|
||
\begin{eqnarray*}
|
||
3 * 2 * 4^{-1} \equiv 3 * 2 * 10 = 30 * 2 \equiv 4 * 2 = 8 &\mod{}& 13 \\
|
||
\end{eqnarray*}
|
||
|
||
\item $3 * x \equiv 3 \mod 9$
|
||
\begin{eqnarray*}
|
||
3 * x \equiv 3 &\mod{}& 9 \\
|
||
x = 0 \Rightarrow 3 * 0 = 0 &\mod{}& 9 \text{ \xmark} \\
|
||
x = 1 \Rightarrow 3 * 1 = 3 &\mod{}& 9 \text{ \cmark} \\
|
||
x = 2 \Rightarrow 3 * 2 = 6 &\mod{}& 9 \text{ \xmark} \\
|
||
x = 3 \Rightarrow 3 * 3 = 9 \equiv 0 &\mod{}& 9 \text{ \xmark} \\
|
||
x = 4 \Rightarrow 3 * 4 = 12 \equiv 3 &\mod{}& 9 \text{ \cmark} \\
|
||
x = 5 \Rightarrow 3 * 5 = 15 \equiv 6 &\mod{}& 9 \text{ \xmark} \\
|
||
x = 6 \Rightarrow 3 * 6 = 18 \equiv 0 &\mod{}& 9 \text{ \xmark} \\
|
||
x = 7 \Rightarrow 3 * 7 = 21 \equiv 3 &\mod{}& 9 \text{ \cmark} \\
|
||
x = 8 \Rightarrow 3 * 8 = 24 \equiv 6 &\mod{}& 9 \text{ \xmark} \\
|
||
\Rightarrow 3 * 1 \equiv 3 * 4 \equiv 3 * 7 \equiv 3 &\mod{}& 9
|
||
\end{eqnarray*}
|
||
|
||
\end{enumerate}
|
||
|
||
\section*{Aufgabe 4}
|
||
\begin{enumerate}[(a)]
|
||
\item
|
||
\begin{itemize}
|
||
\item $\mathbb{Z}_{13}$: Alle Elemente au<61>er $0$ (siehe Begr<67>ndung in 2. Teilaufgabe) von $\mathbb{Z}_{13}$
|
||
haben eine multiplikative Inverse, da 13 eine Primzahl ist und dadurch alle Elemente aus
|
||
$\mathbb{Z}_{13}$ Teilerfremd zu 13 sind.
|
||
|
||
\item $\mathbb{Z}_{14}$
|
||
\begin{itemize}
|
||
\item 0, da $0 * x = 0$ und es somit kein $x$ geben kann, mit $0 * x = 1$
|
||
\item 2, da $\text{ggT}(2,14) = 2 \neq 1$
|
||
\item 4, da $\text{ggT}(4,14) = 2 \neq 1$
|
||
\item 6, da $\text{ggT}(6,14) = 2 \neq 1$
|
||
\item 7, da $\text{ggT}(7,14) = 2 \neq 1$
|
||
\item 8, da $\text{ggT}(8,14) = 2 \neq 1$
|
||
\item 10, da $\text{ggT}(10,14) = 2 \neq 1$
|
||
\item 12, da $\text{ggT}(12,14) = 2 \neq 1$
|
||
\end{itemize}
|
||
|
||
\item $\mathbb{Z}_{16}$
|
||
\begin{itemize}
|
||
\item 0, da $0 * x = 0$ und es somit kein $x$ geben kann, mit $0 * x = 1$
|
||
\item 2, da $\text{ggT}(2,16) = 2 \neq 1$
|
||
\item 4, da $\text{ggT}(4,16) = 4 \neq 1$
|
||
\item 6, da $\text{ggT}(6,16) = 2 \neq 1$
|
||
\item 8, da $\text{ggT}(8,16) = 8 \neq 1$
|
||
\item 10, da $\text{ggT}(10,16) = 2 \neq 1$
|
||
\item 12, da $\text{ggT}(12,16) = 4 \neq 1$
|
||
\end{itemize}
|
||
\end{itemize}
|
||
|
||
\item In $\mathbb{Z}_{11}$ haben alle Elemente au<61>er $0$ eine multiplikative Inverse, da 11 eine Primzahl ist und
|
||
damit alle Elemente aus $\mathbb{Z}_{11}$ teilerfremd zu 11 sind. In $\mathbb{Z}_9$ bzw. $\mathbb{Z}_{15}$ haben
|
||
die Elemente $0, 3$ bzw. $0, 3, 5$ und alle deren Vielfache keine multiplikative Inverse, da $3$ bzw. $3, 5$
|
||
jeweils Teiler von $9$ bzw. $15$ sind.
|
||
|
||
\end{enumerate}
|
||
|
||
\section*{Aufgabe 5}
|
||
|
||
\begin{enumerate}[(a)]
|
||
\item $e_{k_1}(x) = y \equiv a_1 * x + b_1 \mod n$ und $e_{k_2}(x) = y \equiv a_2 * x + b_2$
|
||
|
||
Gesucht: $e_{k_3}(x) = a_3 * x + b_3$ mit $e_{k_3}(x) = e_{k_2}(e_{k_1}(x)$
|
||
|
||
\begin{eqnarray*}
|
||
e_{k_3}(x) = e_{k_2}(e_{k_1}(x)) = a_2 * (a_1 * x + b_1) + b_2 &\mod{}& n \\
|
||
e_{k_3} = (a_2 * a_1) * x + (a_2 * b_1 + b_2) &\mod{}& n \\
|
||
\Rightarrow a_3 = (a_2 * a_1) \mod n \text{ und } b_3 = (a_2 * b_1 + b_2) \mod n
|
||
\end{eqnarray*}
|
||
|
||
\item $a_1 = 7, b_1 = 13$ und $a_2 = 19, b_2 = 7$ und $n = 26$
|
||
|
||
Gesucht: $a_3, b_3$
|
||
|
||
\begin{eqnarray*}
|
||
a_3 = (a_2 * a_1) = 7 * 19 = 133 \equiv 3 &\mod{}& 26 \\
|
||
b_3 = (a_2 * b_1 + b_2) = 7 * 13 + 7 = 98 \equiv 20 &\mod{}& 26 \\
|
||
\Rightarrow e_{k_3}(x) = 3 * x + 20 &\mod{}& 26
|
||
\end{eqnarray*}
|
||
|
||
\item Da sich der Modulus $n$ nicht ver<65>ndert, ver<65>ndert sich auch der Schl<68>sselraum nicht. Gegen affine Chiffren
|
||
sind weiterhin H<>ufigkeitsanalysen m<>glich, da jedes Plaintext Zeichen auf das selbe Ciphertext Zeichen gemappt
|
||
wird.
|
||
|
||
\end{enumerate}
|
||
|
||
\section*{Aufgabe 6}
|
||
\begin{enumerate}[(a)]
|
||
\item
|
||
\begin{tabular}{|cccccccccccccccc|}
|
||
\hline
|
||
M&u&j&m&l&l&m&l&A&m&k&c&z&q&b&g \\\hline
|
||
E&m&b&e&d&d&e&d&S&e&c&u&r&i&t&y \\\hline
|
||
\end{tabular}
|
||
|
||
\item Nein, da Buchstabenh<6E>ufigkeiten weiterhin erkennbar bleiben. Nachdem die Buchstabenh<6E>ufigkeiten bestimmt
|
||
wurden kann man den geheimen Offset herausfinden und hat sogar weniger Arbeit als bei der Subsitutionschiffre,
|
||
da keine Substitutionstabelle erstellt werden muss, da der Offset f<>r jedes Zeichen gleich ist.
|
||
|
||
Weiter ist auch ein Bruteforce Angriff gegen dieses Verfahren, da es je nach dem, ob Gro<72>- und Kleinschreibung
|
||
unterschieden wird, nur 26 bzw. 52 verschiedene Schl<68>ssel.
|
||
|
||
\item Nein, da die \enquote{Normalisierung}, also Zur<75>ckf<6B>hrung auf die normale C<>sar-Chiffre, trivial ist. Wenn
|
||
man von jedem Zeichen den Index seiner Position als Offset abzieht, erh<72>lt man wieder die C<>sar-Chiffre.
|
||
|
||
\end{enumerate}
|
||
|
||
\section*{Aufgabe 7}
|
||
|
||
\begin{enumerate}[(a)]
|
||
\item Solange es gegen Angriffe, die im Threatmodel definiert wurden, sch<63>tzt. Das Threatmodel beschreibt war, vor
|
||
wem und wie lange gesch<63>tzt werden soll.
|
||
|
||
\item W<>hrend der Verteidiger sich gegen alle m<>glichen Arten von Schwachstellen sch<63>tzen muss, reicht es dem
|
||
Angreifer, eine einzige Schwachstelle zu finden, um ein System zu kompromittieren.
|
||
|
||
\item Die Implementierung der Algorithmen, die Benutzer eines Systems, (Pseudo-)Random-Number Generatoren,
|
||
Design Fehler in Protokollen, Design des Userinterface, (implizierte) Hardwarevoraussetzungen (z.B.
|
||
manipulationssichere Hardware)
|
||
|
||
\item Bei einem Flugzeugungl<67>ck k<>mmert sich die Regierung um die Analyse und Aufarbeitung des Ungl<67>cks, und die
|
||
Informationen werden verbreitet, dass andere daraus lernen k<>nnen um zu verhindern, dass sich das Ungl<67>ck
|
||
wiederholt, w<>hrend bei Angriffen auf kryptographische Systeme, sollte es <20>berhaupt eine Berichterstattung
|
||
geben, Informationen weggelassen werden und keine Analysen ver<65>ffentlicht werden. Das f<>hrt dazu, dass sich der
|
||
selbe Fehler ggf. wiederholt. Die Schwachstellen werden im stillen geschlossen und m<>glichst viel Information
|
||
zur<75>ckgehalten um das Vertrauen in ein System nicht zu verlieren, obwohl dieses nicht mehr gerechtfertigt ist.
|
||
|
||
\item Wenn Details zur<75>ckgehalten werden, hat niemand die M<>glichkeit, aus den gemachten Fehlern zu lernen und die
|
||
Fehler werden ggf. wiederholt.
|
||
|
||
\item Fehler in der Implementierung oder ein schlechtes Userinterface (z.B. unsichere Default Werte) k<>nnen ein
|
||
theoretisch sicheres System unsicher machen.
|
||
|
||
\end{enumerate}
|
||
|
||
\end{document}
|
||
|