fix URLs, minor typo
[ach-master.git] / src / ECC.tex
1 \section{A note on Elliptic Curve Cryptography}
2
3 Elliptic Curve Cryptogaphy (simply called ECC from now on) is a branch of 
4 cryptography that emerged in the mid-80ties. Like RSA and Diffie-Hellman 
5 it's security is based on the discrete logarithm problem
6 \footnote{\url{http://www.mccurley.org/papers/dlog.pdf}} 
7 \footnote{\url{http://en.wikipedia.org/wiki/Discrete\_logarithm}}
8 \footnote{\url{http://mathworld.wolfram.com/EllipticCurve.html}}.
9 Finding the descrete logarithm of an elliptic curve from it's public base
10 point is thought to be infeaseble. This is known as the Elliptic Curve Descrete 
11 Logarithm Problem (ECDLP). ECC and the underlying mechanisms are not easy 
12 to understand - luckily there have been some great introductions on the topic lately
13 \footnote{\url{http://arstechnica.com/security/2013/10/a-relatively-easy-to-understand-primer-on-elliptic-curve-cryptography}}
14 \footnote{\url{https://www.imperialviolet.org/2010/12/04/ecc.html}}.
15
16 ECC provides for much stronger security with less computonally expensive
17 operations in comparison to traditional PKI algorithms. (See the section 
18 on keylenghts to get an idea)
19
20 The security of ECC relies on the elliptic curves and curve points chosen
21 as parameters for the algorithm in question. Even before the NSA-leak scandal
22 there has been a lot of discussion regarding these parameters. A part of the
23 discussion involved recommended sets of curves and curve points chosen by
24 different standardization bodies such as NIST. Those parameters came under
25 question from various cryptographers
26 \footnote{\url{http://cr.yp.to/talks/2013.09.16/slides-djb-20130916-a4.pdf}}
27 \footnote{\url{https://www.schneier.com/blog/archives/2013/09/the\_nsa\_is\_brea.html\#c1675929}}
28 \footnote{\url{http://crypto.stackexchange.com/questions/10263/should-we-trust-the-nist-recommended-ecc-parameters}}.
29 At the time of writing there is ongoing research as to the security of 
30 various ECC parameters
31 \footnote{\url{http://safecurves.cr.yp.to}}.
32 The authors of this paper include configurations and recommendations
33 with and without ECC - the reader may choose to adopt those settings
34 as he finds best suited to his environment. The authors will not make
35 this decision for the reader.
36
37 A word of warning: One should get familiar with ECC, different curves and
38 parameters if one chooses to adopt ECC configurations. Since there is much 
39 discussion on the security of ECC, flawed settings might compromise the 
40 security of the entire system. %% find better wording for last paragraph!
41
42 %% mention different attacks on ECC besides flawed parameters!
43