%hide
%latex
\subsection*{1.1 This Document}
The goal of this document is to provide a high-level overview as well as a mathematical understanding of elliptic curve cryptography. It covers the basics of elliptic curves relevant for cryptography and the most important mathematical prerequisites, assuming that the reader is familiar with the topics covered in the German Mathe-Abitur. Many references to more detailed explanations of the mathematical prerequisites are provided. It also shows how ECC builds on conventional public key techniques and points out the major advantages, explaining why many see the future of cryptography in ECC. Finally, it provides an overview of ECC protocols, how they may be employed in a safe manner, and some examples of where they are already in use today.
The document is meant for anyone interested in how elliptic curve cryptography works and why it is good, and willing to dig into the mathematical and exciting world of ECC. Understanding part of the content, especially in Chapter 3, requires some effort by the reader; we can't relieve the reader of this task since elliptic curves are naturally a highly mathematical topic. Nevertheless the effort will surely pay off when connections become clear and the understanding of the topic grows. That's the beauty of mathematics: Everything connects back to something else and as we learn more and more, the picture starts to become more complete and we understand things that previously seemed to belong to only distantly related areas.
Some paragraphs are marked by ``$**$'', which designate extra knowledge. The information contained therein is not essential for the understanding of the rest of the document, but they provide just that extra knowledge that might help getting the big picture.
Unfortunately, SAGE is a bit buggy sometimes. It is developing quickly and problems are fixed regularly, but for now, here are solutions to two common problems that you may run into. Firstly, some of the applications do not always work after opening a worksheet. Instead of nice output, they show lots of blue error messages. In such a case, simply click on the gray {\tt \%hide} above the program and execute the code again by typing {\tt Shift+Enter.} Doing this once or twice should solve the problem. Secondly, after doing this, the code does not always disappear. Instead, it sometimes turns gray. Should this happen, click on the gray text, then click somewhere outside of the text box. The code will then disappear and leave you with a nice layout of the worksheet.
We would like to thank Prof. Hsieh from NSU for useful feedback.