1 \section{Public Key Infrastructures}
4 Public-Key Infrastructures aim to provide a way to simplify the verification of
5 a certificates trustworthiness. For this, certificate authorities (CAs) are
6 used to create a signature chain from the root CA down to the server (or client).
7 Accepting a CA as a generally-trusted mediator solves the trust-scaling problem
8 at the cost of introducing an actor that magically is more trustworthy.
10 This section deals with settings related to trusting CAs. However, our main
11 recommendations for PKIs is: if you are able to run your own PKI and disable
12 any other CA, do so. This makes sense most in environments where any machine-to-machine
13 communication system compatibility with external entities is not an issue.
15 %% this needs discussion! self-signed certificates simply do not work in practices
16 %% for real-world scenarios - i.e. websites that actually serve a lot of people
18 A good background on PKIs can be found in
19 \footnote{\url{https://developer.mozilla.org/en/docs/Introduction_to_Public-Key_Cryptography}}
20 \footnote{\url{http://cacr.uwaterloo.ca/hac/about/chap8.pdf}}
21 \footnote{\url{http://www.verisign.com.au/repository/tutorial/cryptography/intro1.shtml}}
24 \todo{ts: Background and Configuration (EMET) of Certificate Pinning, TLSA integration,
25 When to use self-signed certificates, how to get certificates from public CA authorities
26 (CACert, StartSSL), Best-practices how to create a CA and how to generate private keys/CSRs,
27 Discussion about OCSP and CRLs. TD: Useful Firefox plugins: CipherFox, Conspiracy, Perspectives.}
30 %``Certificate Policy''\cite{Wikipedia:Certificate_Policy}