diff options
Diffstat (limited to '')
-rw-r--r-- | buch/chapters/90-crypto/images/keys.tex | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/buch/chapters/90-crypto/images/keys.tex b/buch/chapters/90-crypto/images/keys.tex new file mode 100644 index 0000000..4b1b566 --- /dev/null +++ b/buch/chapters/90-crypto/images/keys.tex @@ -0,0 +1,121 @@ +%
+% keys.tex -- template for standalon tikz images
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\documentclass[tikz]{standalone}
+\usepackage{amsmath}
+\usepackage{times}
+\usepackage{txfonts}
+\usepackage{pgfplots}
+\usepackage{csvsimple}
+\usetikzlibrary{arrows,intersections,math}
+\begin{document}
+\def\skala{1}
+\begin{tikzpicture}[>=latex,thick,scale=\skala]
+\definecolor{darkgreen}{rgb}{0,0.6,0}
+\def\s{0.5}
+\def\punkt#1#2{({(#1)*\s},{(#2)*\s})}
+\def\wort#1#2#3{
+ \fill[color=#3] \punkt{#1}{#2} rectangle \punkt{(#1+1)}{(#2+4)};
+ \draw \punkt{#1}{#2} rectangle \punkt{(#1+1)}{(#2+4)};
+}
+
+\def\summe{
+ \foreach \x in {0,3,...,21}{
+ \draw[->] \punkt{(\x+0.5)}{-0.1} -- \punkt{(\x+0.5)}{-2.1};
+ \draw \punkt{(\x+0.5)}{-2.5} circle[radius={0.3*\s}];
+ \draw \punkt{(\x+0.5-0.2)}{-2.5}
+ --
+ \punkt{(\x+0.5+0.2)}{-2.5};
+ \draw \punkt{(\x+0.5)}{-2.5+0.2}
+ --
+ \punkt{(\x+0.5)}{-2.5-0.2};
+ \draw[->] \punkt{(\x+0.5)}{-2.9} -- \punkt{(\x+0.5)}{-4.9};
+ }
+ \foreach \x in {0,3,...,18}{
+ \draw[->] \punkt{(\x+1.1)}{-7} -- \punkt{(\x+2)}{-7}
+ -- \punkt{(\x+2)}{-2.5} -- \punkt{(\x+3.1)}{-2.5};
+ }
+ \fill[color=white]
+ \punkt{(9+1.25)}{-5.5}
+ rectangle
+ \punkt{(9+2.75)}{-4.00};
+ \draw
+ \punkt{(9+1.25)}{-5.5}
+ rectangle
+ \punkt{(9+2.75)}{-4.00};
+ \node at \punkt{(9+2)}{-4.75} {$S$};
+}
+
+\def\blocks#1{
+ \foreach \x in {0,3,...,21}{
+ \wort{\x}{0}{#1}
+ }
+}
+
+\def\schlange#1{
+ \draw[->] \punkt{22.1}{2} -- \punkt{23}{2}
+ -- \punkt{23}{-1.0} -- \punkt{-3}{-1.0}
+ -- \punkt{-3}{-8} -- \punkt{-1}{-8} -- \punkt{-1}{-2.5}
+ -- \punkt{0.1}{-2.5};
+ ;
+ \fill[color=white] \punkt{-3.75}{-1.75} rectangle \punkt{-2.25}{-3.25};
+ \draw \punkt{-3.75}{-1.75} rectangle \punkt{-2.25}{-3.25};
+ \node at \punkt{-3}{-2.5} {$\pi$};
+
+ \fill[color=white] \punkt{-3.75}{-3.75} rectangle \punkt{-2.25}{-5.25};
+ \draw \punkt{-3.75}{-3.75} rectangle \punkt{-2.25}{-5.25};
+ \node at \punkt{-3}{-4.5} {$S$};
+
+ \fill[color=white] \punkt{-3.75}{-5.75} rectangle \punkt{-2.25}{-7.25};
+ \draw \punkt{-3.75}{-5.75} rectangle \punkt{-2.25}{-7.25};
+ \node at \punkt{-3}{-6.5} {$r_{#1}$};
+}
+
+\begin{scope}
+ \blocks{blue!20}
+ \foreach \x in {0,...,7}{
+ \node at \punkt{(3*\x+0.5)}{2} {$K_\x$};
+ }
+ \schlange{1}
+ \summe
+\end{scope}
+
+\begin{scope}[yshift=-4.5cm]
+ \blocks{darkgreen!20}
+ \foreach \x in {8,...,15}{
+ \node at \punkt{(3*(\x-8)+0.5)}{2} {$K_{\x}$};
+ }
+ \schlange{2}
+ \summe
+\end{scope}
+
+\begin{scope}[yshift=-9cm]
+ \blocks{darkgreen!20}
+ \foreach \x in {16,...,23}{
+ \node at \punkt{(3*(\x-16)+0.5)}{2} {$K_{\x}$};
+ }
+ \schlange{3}
+ \summe
+\end{scope}
+
+\begin{scope}[yshift=-13.5cm]
+ \blocks{darkgreen!20}
+ \foreach \x in {24,...,31}{
+ \node at \punkt{(3*(\x-24)+0.5)}{2} {$K_{\x}$};
+ }
+ \foreach \x in {0,3,...,21}{
+ \draw[->,color=gray]
+ \punkt{(\x+0.5)}{-0.1} -- \punkt{(\x+0.5)}{-2.1};
+ \node[color=gray] at \punkt{(\x+0.5)}{-2.1} [below] {$\vdots$};
+ }
+ \draw[color=gray] \punkt{22.1}{2} -- \punkt{23}{2}
+ -- \punkt{23}{-1.0} -- \punkt{-3}{-1.0}
+ -- \punkt{-3}{-2.1};
+ \node[color=gray] at \punkt{-3}{-2.1} [below] {$\vdots$};
+\end{scope}
+
+\end{tikzpicture}
+\end{document}
+
|