Lighttpd Section finished and tested,
[ach-master.git] / src / applied-crypto-hardening.tex
1 %%% LaTeX Template: Two column article
2 %%%
3 %%% Source: http://www.howtotex.com/
4 %%% Feel free to distribute this template, but please keep to referal to http://www.howtotex.com/ here.
5 %%% Date: February 2011
6
7 %%% Preamble
8 \documentclass[ DIV=calc,%
9                                 paper=a4,%
10                                 fontsize=9pt,%
11                                 %onecolumn]{scrartcl}                                           % KOMA-article class
12                                 onecolumn]{scrreprt}                                            % KOMA-article class
13                                 %onecolumn]{report}                                             % KOMA-article class
14
15 \usepackage{lipsum}                                                                                                     % Package to create dummy text
16
17
18
19 \usepackage[english]{babel}                                                                             % English language/hyphenation
20 \usepackage[protrusion=true,expansion=true]{microtype}                          % Better typography
21 \usepackage{amsmath,amsfonts,amsthm}                                    % Math packages
22 \usepackage[pdftex]{graphicx}                                           % Enable pdflatex 
23 %\usepackage[svgnames]{xcolor}                                                                  % Enabling colors by their 'svgnames'
24 \usepackage[hang, small,labelfont=bf,up,textfont=it,up]{caption}        % Custom captions under/above floats
25 \usepackage{epstopdf}                                                                                           % Converts .eps to .pdf
26 \usepackage{subfig}                                                                                                     % Subfigures
27 \usepackage{booktabs}                                                                                           % Nicer tables
28 \usepackage{fix-cm}                                                                                                     % Custom fontsizes
29
30 \usepackage[usenames,dvipsnames]{color}
31 \usepackage{float}
32 \usepackage{subfig}
33 %\usepackage{tikz}
34 \usepackage{acronym}
35 \usepackage{amsthm}
36 \usepackage{fancyvrb}
37 \usepackage{listings}
38 \usepackage{longtable}
39
40 %% Epigraph patching
41 \usepackage{epigraph}
42 % \epigraphsize{\small}% Default
43 \setlength\epigraphwidth{8cm}
44 \setlength\epigraphrule{0pt}
45 \usepackage{etoolbox}
46 \makeatletter
47 \patchcmd{\epigraph}{\@epitext{#1}}{\itshape\@epitext{#1}}{}{}
48 \makeatother
49
50
51
52
53 \usepackage{gitinfo}
54
55 % custom changes:
56 \usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
57 \usepackage{placeins}
58 \usepackage{draftwatermark}
59
60 % human tables
61 \usepackage{booktabs}
62 \renewcommand{\arraystretch}{1.25}
63
64 % side box
65 \usepackage{wrapfig}
66 %\usepackage{tcolorbox}
67 \newenvironment{WrapText}[1][r]
68   {\wrapfigure{#1}{0.5\textwidth}\tcolorbox}
69   {\endtcolorbox\endwrapfigure}
70
71 % Add text symbols
72 \usepackage{pifont}
73 \newcommand{\yes}{\textcolor{green}{\ding{51}}}
74 \newcommand{\no}{\textcolor{red}{\ding{55}}}
75
76 % human tables
77 \usepackage{booktabs}
78
79 \renewcommand{\arraystretch}{1.25}
80
81 \definecolor{green}{RGB}{32,113,10}
82 \definecolor{orange}{RGB}{251,111,16}
83 \definecolor{red}{RGB}{247,56,0}
84 \definecolor{blue}{RGB}{0,28,128}
85 \definecolor{lightgreen}{RGB}{187,218,216}
86 \definecolor{intersectgreen}{RGB}{103,133,155}
87 \definecolor{darkblue}{RGB}{76,87,117}
88
89 \bibliographystyle{alphalink}
90
91 \definecolor{Brown}{cmyk}{0,0.81,1,0.60}
92 \definecolor{OliveGreen}{cmyk}{0.64,0,0.95,0.40}
93 \definecolor{CadetBlue}{cmyk}{0.62,0.57,0.23,0}
94 \definecolor{lightlightgray}{gray}{0.9}
95
96 % makes default font sans-serif
97  \renewcommand{\familydefault}{\sfdefault}
98
99 % make font Open Sans
100 % \usepackage{opensans}
101 \usepackage[defaultsans]{opensans}
102
103 % changes font encoding to T1
104 % \usepackage[T1]{fontenc}
105 % \usepackage{textcomp}
106
107 \lstset{
108 %language=Bash,                             % Code langugage
109 basicstyle=\ttfamily,                   % Code font, Examples: \footnotesize, \ttfamily
110 keywordstyle=\color{OliveGreen},        % Keywords font ('*' = uppercase)
111 commentstyle=\color{gray},              % Comments font
112 %numbers=left,                           % Line nums position
113 %numberstyle=\tiny,                      % Line-numbers fonts
114 %stepnumber=1,                           % Step between two line-numbers
115 %numbersep=5pt,                          % How far are line-numbers from code
116 backgroundcolor=\color{lightlightgray}, % Choose background color
117 frame=none,                             % A frame around the code
118 tabsize=2,                              % Default tab size
119 captionpos=b,                           % Caption-position = bottom
120 breaklines=true,                        % Automatic line breaking?
121 breakatwhitespace=false,                % Automatic breaks only at whitespace?
122 showspaces=false,                       % Dont make spaces visible
123 showtabs=false,                         % Dont make tabls visible
124 columns=fixed,                          % Column format
125 morekeywords={__global__, __device__},  % 
126 }
127
128
129 %% \todo{} command.
130 %
131 % Outputs red TODOs in the document. Requires \usepackage{color}.
132 %
133 % Usage: \todo{Document the TODO command.}
134 %
135 % Comment out second line to disable.
136 \newcommand{\todo}[1]{}
137 \renewcommand{\todo}[1]{{\color{Red} TODO: {#1}}}
138
139
140 %%% Custom sectioning (sectsty package)
141 \usepackage{sectsty}                                                                                                    % Custom sectioning (see below)
142 \allsectionsfont{%                                                                                                                      % Change font of al section commands
143         \usefont{OT1}{phv}{b}{n}%                                                                               % bch-b-n: CharterBT-Bold font
144         }
145
146 \sectionfont{%                                                                                                                          % Change font of \section command
147         \usefont{OT1}{phv}{b}{n}%                                                                               % bch-b-n: CharterBT-Bold font
148         }
149
150 % use more of the page
151 \usepackage{fullpage}
152
153 %%% Headers and footers
154 \usepackage{fancyhdr}                                                                                           % Needed to define custom headers/footers
155         \pagestyle{fancy}                                                                                                               % Enabling the custom headers/footers
156 \usepackage{lastpage}   
157
158 % Header (empty)
159 \lhead{}
160 \chead{}
161 \rhead{}
162 % Footer (you may change this to your own needs)
163 \lfoot{\footnotesize Applied Crypto Hardening \textbullet ~Draft revision\gitVtags: \gitAbbrevHash{} (\gitCommitterIsoDate) \gitCommitterName}
164 \cfoot{}
165 \rfoot{\footnotesize page \thepage\ of \pageref{LastPage}}      % "Page 1 of 2"
166 \renewcommand{\headrulewidth}{0.0pt}
167 \renewcommand{\footrulewidth}{0.4pt}
168
169
170
171 %%% Creating an initial of the very first character of the content
172 \usepackage{lettrine}
173 \newcommand{\initial}[1]{%
174      \lettrine[lines=3,lhang=0.3,nindent=0em]{
175                                 \color{darkblue}
176                                 {\textsf{#1}}}{}}
177
178
179
180 %%% Title, author and date metadata
181 \usepackage{titling}                                                                                                                    % For custom titles
182
183 \newcommand{\HorRule}{\color{darkblue}%                 % Creating a horizontal rule
184                                                                                 \rule{\linewidth}{1pt}%
185                                                                         }
186 % \usefont{OT1}{phv}{b}{n}
187 % \usefont{OT1}{phv}{b}{sl}
188
189 \pretitle{\vspace{-30pt} \begin{flushleft} \HorRule 
190                                 \fontsize{36}{36}  \color{darkblue} \selectfont 
191                                 }
192                         \title{Applied Crypto Hardening}% \\ \vskip 0.5em \large www.bettercrypto.org}
193 \posttitle{\par\end{flushleft}\vskip 0.5em}
194
195 \preauthor{\begin{flushleft}
196                                         \large \lineskip 0.5em  \color{intersectgreen}}
197
198                                         \author{Wolfgang Breyha, David Durvaux, Tobias Dussa, L. Aaron
199                                         Kaplan, Florian Mendel, Christian Mock, Manuel Koschuch, Adi
200                                         Kriegisch, Ulrich P\"oschl, Ramin Sabet, Berg San, Ralf Schlatterbeck, 
201                                         Thomas Schreck, Aaron Zauner, Pepi Zawodsky}
202 %\institute{
203 %FH Campus Wien
204 %\and
205 %VRVis
206 %\and
207 %CERT.at
208 %\and
209 %Karlsruhe Institute of Technology
210 %}
211
212
213 \setlength{\parindent}{0cm}
214
215 \postauthor{\footnotesize \usefont{OT1}{phv}{m}{sl} \color{Black} 
216 \\ \vskip 0.5em  (University of Vienna, CERT.be, KIT-CERT, CERT.at, IAIK, coretec.at, FH Campus Wien, VRVis, MilCERT Austria, A-Trust, , Runtux.com, Friedrich-Alexander University Erlangen-Nuremberg, azet.org, maclemon.at)
217                                         \par\end{flushleft}\HorRule}
218
219 \date{\today}
220
221 % hyperref needs to be the last package you load.
222 \usepackage[pdftex,breaklinks,colorlinks,citecolor=blue,urlcolor=blue]{hyperref}
223
224
225 %%% Begin document
226 \begin{document}
227 \maketitle
228
229 \thispagestyle{fancy}                   % Enabling the custom headers/footers for the first page 
230 % The first character should be within \initial{}
231 %\initial{H}\textbf{ere is some sample text to show the initial in the introductory paragraph of this template article. The color and lineheight of the initial can be modified in the preamble of this document.}
232
233 \input{abstract}
234 \tableofcontents
235 \chapter{Introduction}
236 \label{chapter:Intro}
237 \input{howtoread}
238 \input{disclaimer}
239 \input{motivation}
240 \input{methods}
241 %%
242 \chapter{Practical recommendations}
243 \label{chapter:PracticalSettings}
244 \input{practical_settings}
245 %%
246 \chapter{Theory}
247 \epigraph{``Number theorists are like lotus-eaters - having tasted this food they can never give it up.''}{-- Leopold Kronecker}
248 \label{chapter:Theory}
249 \input{PKIs}
250 \input{ECC}
251 \input{SHA}
252 \input{DH}
253 \input{keylengths}
254 \input{RNGs}
255 \input{cipher_suites}
256 \input{ssllibs}
257 \chapter{Appendix}
258 \input{tools}
259 \input{links}
260 \input{suggested_reading}
261 \input{cipher_suite_names}
262 \input{further_research}
263 \input{acknowledgements}
264 \input{reviewers}
265 \input{bib}
266
267 \end{document}