diff --git a/Zusammenfassung_DC.aux b/Zusammenfassung_DC.aux index 708da57..98679f3 100644 --- a/Zusammenfassung_DC.aux +++ b/Zusammenfassung_DC.aux @@ -93,6 +93,7 @@ \newlabel{zustandsabhängige Stromverschlüsselung}{{5.2}{17}} \@writefile{toc}{\contentsline {subsection}{\numberline {5.2.1}Additive zustandsabhängige Stromverschlüsselungsverfahren}{18}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.1.1}Synchrone additive Stromverschlüsselungsverfahren}{18}\protected@file@percent } +\newlabel{synchron additive Stromverschlüsselung}{{5.2.1.1}{18}} \@writefile{toc}{\contentsline {section}{\numberline {5.3}Schlüsselstrom vs. One-Time-Pad}{19}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {5.4}Nonces zur Initialisierung eines Schlüsselstromgenerators}{19}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {5.5}ChaCha20}{20}\protected@file@percent } @@ -104,3 +105,9 @@ \@writefile{toc}{\contentsline {section}{\numberline {6.2}Betriebsmodi}{22}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {6.2.1}ECB (Electronic Code Book)}{22}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {6.2.2}CBC (Cipher Block Chaining)}{23}\protected@file@percent } +\newlabel{CBC}{{6.2.2}{23}} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.3}CBC-CS (Chiphertext Stealing for CBC Mode)}{24}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.3.1}CBC-CS1}{24}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.3.2}CBC-CS2}{25}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.3.3}CBC-CS3}{25}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.4}CTR (Counter)}{25}\protected@file@percent } diff --git a/Zusammenfassung_DC.fdb_latexmk b/Zusammenfassung_DC.fdb_latexmk index 6272f70..d531cfb 100644 --- a/Zusammenfassung_DC.fdb_latexmk +++ b/Zusammenfassung_DC.fdb_latexmk @@ -1,11 +1,12 @@ # Fdb version 3 -["pdflatex"] 1600024822 "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.tex" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.pdf" "Zusammenfassung_DC" 1600024823 +["pdflatex"] 1600097658 "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.tex" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.pdf" "Zusammenfassung_DC" 1600097698 "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/Abhörung.png" 1599946545 2649 d6dd82c7c38c06d31f966207a71dc01b "" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/Authenzitätsstörung_0.png" 1599947572 2910 b2497355ec1d31d5fce9d57d122a91f3 "" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/Authenzitätsstörung_1.png" 1599947589 3427 a39ecab3779301930ce6bed4cf3141a1 "" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/Authenzitätsstörung_2.png" 1599947603 3783 f12b3b1eb521e69049eb7e178c05f8b3 "" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/CBC_dec.png" 1600024808 8681 d1beef3bdda855c03f924aa8842c6f10 "" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/CBC_enc.png" 1600024618 9872 3da7196411819ef22737f9578e1e4842 "" + "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/CTR.png" 1600097631 13658 0582e8e8db1e916ebd0932a4aeac6d3f "" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/ECB.png" 1600023997 7379 9b90ee7b021f6a66a389f5bb954ac3ff "" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/ECB_Nonce.png" 1600024218 11089 e5625d7199c0bbb3f1d47f8a50c3c7ce "" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/Schlüsselstromgenerator mit Nonce.png" 1600006036 6830 255eed9add3dd8e899b4714f95b6f466 "" @@ -17,13 +18,13 @@ "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/synchrone additive Stromverschlüsselung.png" 1600003271 10891 bfed2f0ea0241a4a2a4bf215a3d59c32 "" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/zustandsabhängige Stromverschlüsselung.png" 1600002333 10276 422a1760594d1c860f8d7aa6dc5ed032 "" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/Übertragungsmanipulation.png" 1599947212 3178 33bbd19fca19c787748d9158d802ceb1 "" - "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.aux" 1600024823 10386 1381afbb713336eb5c93879a24aed9c1 "pdflatex" + "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.aux" 1600097659 11041 3e87ed2c565044c72fe62fd1e8d8f97c "pdflatex" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.tex" 1600023076 1092 0054d3a68ecb6150a0a78b54c52b707b "" - "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.toc" 1600024823 6214 b889a013155fdb1d6a98154f42bf0083 "pdflatex" - "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/chapters/Blockverschlüsselungsverfahren.tex" 1600024821 3601 1118c09158d3fca27c9b2395db514ca0 "" + "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.toc" 1600097659 6570 2a6279de1342d7b9b46f0358940e852a "pdflatex" + "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/chapters/Blockverschlüsselungsverfahren.tex" 1600097698 6544 054e2fb40c42b0e614fa3644c95144d1 "" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/chapters/IT-Sicherheit.tex" 1599950390 6191 fdec0aff09dab6668264963cb44ee2f3 "" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/chapters/Modulare Arithmetik.tex" 1600002690 6678 5f1596dba278e6bc1791a5615776653a "" - "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/chapters/Stromverschlüsselungsverfahren.tex" 1600021754 9750 78c046cdfed5970c89760677c32ba2ee "" + "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/chapters/Stromverschlüsselungsverfahren.tex" 1600097419 9797 68b851044876e76551e52baafc59f5d7 "" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/chapters/Substitutionsverfahren.tex" 1600001305 6264 cba30a66f463934bc822d2ee54ac4b90 "" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/chapters/Verschlüsselungsverfahren.tex" 1600003902 7321 b77786564ba0de93d6d5b8a73400fcd1 "" "/usr/local/share/texmf/tex/latex/dirtytalk/dirtytalk.sty" 1599986679 1915 75d8498f106e3f673b6267693e944869 "" @@ -135,7 +136,7 @@ "/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map" 1599837712 334180 163417853e75f7c89e92e140d6d6e976 "" "/var/lib/texmf/web2c/pdftex/pdflatex.fmt" 1599837703 2514050 ecf9fe402c479fca46412778ddf38de8 "" (generated) - "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.log" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.toc" - "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.aux" "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.pdf" + "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.aux" + "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.log" diff --git a/Zusammenfassung_DC.fls b/Zusammenfassung_DC.fls index 5cbc8c4..e6fc736 100644 --- a/Zusammenfassung_DC.fls +++ b/Zusammenfassung_DC.fls @@ -215,6 +215,9 @@ INPUT /home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/CBC_ INPUT /home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/CBC_dec.png INPUT /home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/CBC_dec.png INPUT /home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/CBC_dec.png +INPUT /home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/CTR.png +INPUT /home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/CTR.png +INPUT /home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/./images/CTR.png INPUT /home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.aux INPUT /usr/share/texmf-dist/fonts/enc/dvips/cm-super/cm-super-ts1.enc INPUT /usr/share/texmf-dist/fonts/enc/dvips/cm-super/cm-super-t1.enc diff --git a/Zusammenfassung_DC.log b/Zusammenfassung_DC.log index 9d3db53..85f1fa7 100644 --- a/Zusammenfassung_DC.log +++ b/Zusammenfassung_DC.log @@ -1,4 +1,4 @@ -This is pdfTeX, Version 3.14159265-2.6-1.40.21 (TeX Live 2020/Arch Linux) (preloaded format=pdflatex 2020.9.11) 13 SEP 2020 21:20 +This is pdfTeX, Version 3.14159265-2.6-1.40.21 (TeX Live 2020/Arch Linux) (preloaded format=pdflatex 2020.9.11) 14 SEP 2020 17:34 entering extended mode restricted \write18 enabled. file:line:error style messages enabled. @@ -491,20 +491,45 @@ File: ./images/CBC_dec.png Graphic file (type png) Package pdftex.def Info: ./images/CBC_dec.png used on input line 51. (pdftex.def) Requested size: 469.3385pt x 214.3174pt. -) [24 ] (/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.aux) ) + +Overfull \hbox (61.4574pt too wide) in paragraph at lines 59--64 +\T1/cmr/m/n/10.95 Wenn die Län-ge der Nach-richt $\OML/cmm/m/it/10.95 m$ \T1/cmr/m/n/10.95 ein Viel-fa-ches des Block-län-ge $\OML/cmm/m/it/10.95 l$ \T1/cmr/m/n/10.95 ist wird das nor-ma-le CBC-Verschlüsselungsverfahren + [] + +[24 ] +Overfull \hbox (61.4574pt too wide) in paragraph at lines 68--70 +\T1/cmr/m/n/10.95 Wenn die Län-ge der Nach-richt $\OML/cmm/m/it/10.95 m$ \T1/cmr/m/n/10.95 ein Viel-fa-ches des Block-län-ge $\OML/cmm/m/it/10.95 l$ \T1/cmr/m/n/10.95 ist wird das nor-ma-le CBC-Verschlüsselungsverfahren + [] + +<./images/CTR.png, id=125, 515.02759pt x 240.0693pt> +File: ./images/CTR.png Graphic file (type png) + +Package pdftex.def Info: ./images/CTR.png used on input line 85. +(pdftex.def) Requested size: 515.02632pt x 240.06871pt. +) +Overfull \hbox (31.32945pt too wide) in paragraph at lines 84--57 +[] + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 84--57 + + [] + +[25 ] (/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.aux) ) Here is how much of TeX's memory you used: - 6231 strings out of 480478 - 86787 string characters out of 5905959 - 350843 words of memory out of 5000000 - 22120 multiletter control sequences out of 15000+600000 + 6239 strings out of 480478 + 86930 string characters out of 5905959 + 350871 words of memory out of 5000000 + 22127 multiletter control sequences out of 15000+600000 553344 words of font info for 81 fonts, out of 8000000 for 9000 1141 hyphenation exceptions out of 8191 30i,9n,37p,377b,255s stack positions out of 5000i,500n,10000p,200000b,80000s {/usr/share/texmf-dist/fonts/enc/dvips/cm-super/cm-super-ts1.enc}{/usr/share/texmf-dist/fonts/enc/dvips/cm-super/cm-super-t1.enc} -Output written on "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.pdf" (25 pages, 2429659 bytes). +Output written on "/home/paul/Documents/TH/Datensicherheit (DC)/Zusammenfassung/Zusammenfassung_DC.pdf" (26 pages, 2447532 bytes). PDF statistics: - 201 PDF objects out of 1000 (max. 8388607) - 131 compressed objects within 2 object streams + 205 PDF objects out of 1000 (max. 8388607) + 133 compressed objects within 2 object streams 0 named destinations out of 1000 (max. 500000) - 86 words of extra memory for PDF output out of 10000 (max. 10000000) + 91 words of extra memory for PDF output out of 10000 (max. 10000000) diff --git a/Zusammenfassung_DC.pdf b/Zusammenfassung_DC.pdf index 848e6c6..8471373 100644 Binary files a/Zusammenfassung_DC.pdf and b/Zusammenfassung_DC.pdf differ diff --git a/Zusammenfassung_DC.synctex.gz b/Zusammenfassung_DC.synctex.gz index 7e2e75b..855a0e5 100644 Binary files a/Zusammenfassung_DC.synctex.gz and b/Zusammenfassung_DC.synctex.gz differ diff --git a/Zusammenfassung_DC.toc b/Zusammenfassung_DC.toc index 49dafae..85066ad 100644 --- a/Zusammenfassung_DC.toc +++ b/Zusammenfassung_DC.toc @@ -79,3 +79,8 @@ \contentsline {section}{\numberline {6.2}Betriebsmodi}{22}% \contentsline {subsection}{\numberline {6.2.1}ECB (Electronic Code Book)}{22}% \contentsline {subsection}{\numberline {6.2.2}CBC (Cipher Block Chaining)}{23}% +\contentsline {subsection}{\numberline {6.2.3}CBC-CS (Chiphertext Stealing for CBC Mode)}{24}% +\contentsline {subsubsection}{\numberline {6.2.3.1}CBC-CS1}{24}% +\contentsline {subsubsection}{\numberline {6.2.3.2}CBC-CS2}{25}% +\contentsline {subsubsection}{\numberline {6.2.3.3}CBC-CS3}{25}% +\contentsline {subsection}{\numberline {6.2.4}CTR (Counter)}{25}% diff --git a/chapters/Blockverschlüsselungsverfahren.tex b/chapters/Blockverschlüsselungsverfahren.tex index 2ba6a6f..c29573a 100644 --- a/chapters/Blockverschlüsselungsverfahren.tex +++ b/chapters/Blockverschlüsselungsverfahren.tex @@ -35,7 +35,7 @@ Da diese Modus anfällig für Wörterbuchangriffe ist wird häufig ein Nonce-Wert verwendet, der jeweils mit dem Klartextblock addiert ($\oplus$) wird:\\ \includegraphics{ECB_Nonce.png} - \subsection{CBC (Cipher Block Chaining)} + \subsection{CBC (Cipher Block Chaining)}\label{CBC} Der CBC-Modus ist eine spezielle Form des ECB-Modus, bei dem der errechnete Geheimtextblock als Nonce-Wert für die Verschlüsselung des nächsten Blocks verwendet wird. Hierbei wird der erste Nonce-Wert $c_0$ durch einen Initialisierungsvektor $IV\in\mathscr M$ gegeben. $$\begin{aligned} @@ -48,4 +48,38 @@ m_i :=&D_k(c_i)+c_{i-1}\\ D_{k,IV}(c_1,...,c_r):=&(m_1,...,m_r) \end{aligned}$$ - \includegraphics{CBC_dec.png} \ No newline at end of file + \includegraphics{CBC_dec.png} + + \subsection{CBC-CS (Chiphertext Stealing for CBC Mode)} + Der CBC-CS-Modus wird auch als CTS-Modus (Chiphertext Stealing Mode) bezeichnet. + Dieser Modus basiert auf dem CBC-Modus (siehe \ref{CBC}), erlaubt aber eine Verschlüsselung von Nachrichten mit beliebiger Länge (ohne Padding). + Um das Padding zu umgehen gibt es mehrere Varianten: + + \subsubsection{CBC-CS1} + Bei der Variante 1 der CBC-CS-Verschlüsselung wird der letzte Block $m^*_r$ der Nachricht mit 00-Bytes auf die Blocklänge aufgefüllt (00-Padding). + Anschließend wird die Nachricht inkl. dem gepaddeten Block $m_r$ mit dem CBC-Verfahren (siehe \ref{CBC}) verschlüsselt. + Um wieder auf die ursprüngliche Länge der Nachricht zu kommen werden aus dem vorletzten Block $c_{r-1}$ des Geheimtextes die gleiche Anzahl Bytes entfernt, die zu $m^*_r$ hinzugefügt wurden. + Hierdurch ergibt sich die Geheimtextnachricht $c_1,...,c_{r-2},c^*_{r-1},c_r$, die die gleiche Länge wie $m$ hat.\\ + Wenn die Länge der Nachricht $m$ ein Vielfaches des Blocklänge $l$ ist wird das normale CBC-Verschlüsselungsverfahren angewandt. + + \subsubsection{CBC-CS2} + Bei der Variante 2 der CBC-CS-Verschlüsselung wird auf die gleiche Weise vorgegangen, wie bei Variante 1. + Allerdings werden, \textbf{falls} ein Padding notwendig ist nach der Verschlüsselung und dem Stealing die letzten beiden Blöcke vertauscht. + $$E-CBC-CS2_{k,IV}(m_1,...,m_{r-1},m^*_r) := (c_1,...,c_r,c^*_{r-1})$$ + Wenn die Länge der Nachricht $m$ ein Vielfaches des Blocklänge $l$ ist wird das normale CBC-Verschlüsselungsverfahren angewandt. + + \subsubsection{CBC-CS3} + Die Variante 3 der CBC-CS-Verschlüsselung unterscheidet sich nur darin von der Variante 2, dass immer die letzten beiden Blöcke vertauscht werden. + Dies geschieht ungeachtet davon, ob die Länge der Nachricht $m$ ein Vielfaches der Blocklänge $l$ ist. + + \subsection{CTR (Counter)} + Im CTR-Modus wird ein Blockverschlüsselungsverfahren $E$ mit einem Schlüssel $k$ und einem Nonce-Wert $Ctr\in\mathscr M$ wie folgt verwendet: + $$\begin{aligned} + c_i :=&m_i+E_k(Ctr\boxplus(i-1)) + E-CTR_{k,Ctr}(m_1,...,m_r):=&(c_1,...,c_r) + \end{aligned}$$ + Der CTR-Modus definiert ein synchrones additives Stromverschlüsselungsverfahren (siehe \ref{synchron additive Stromverschlüsselung}). + Die Menge der $z_i=E_k(Ctr\boxplus(i-1))$ definiert hierbei den Schlüsselstrom.\\ + Aufgrund dessen ist die Entschlüsselungsfunktion $D$ gleich der Verschlüsselungsfunktion $E$: + $$D-CTR_{k,Ctr}(c_1,...,c_r)=E-CTR_{k,Ctr}(c_1,...,c_r)$$ + \includegraphics{CTR.png} \ No newline at end of file diff --git a/chapters/Stromverschlüsselungsverfahren.tex b/chapters/Stromverschlüsselungsverfahren.tex index 06723a4..096c075 100644 --- a/chapters/Stromverschlüsselungsverfahren.tex +++ b/chapters/Stromverschlüsselungsverfahren.tex @@ -45,7 +45,7 @@ \includegraphics{additive zustandsabhängige Stromverschlüsselung.png} - \subsubsection{Synchrone additive Stromverschlüsselungsverfahren} + \subsubsection{Synchrone additive Stromverschlüsselungsverfahren}\label{synchron additive Stromverschlüsselung} eine additive Stromverschlüsselung lässt sich synchron durchführen, falls die Übergangsfunktion $s$ nicht von den Zeichen des Klartextes abhängt. $$\sigma_{i+1}=s(\sigma_i) \text{ mit } s:\mathscr{S}\rightarrow\mathscr{S}$$ Hierdurch definiert sich der Schlüsselstrom: diff --git a/images/CTR.png b/images/CTR.png new file mode 100644 index 0000000..aea8651 Binary files /dev/null and b/images/CTR.png differ