Coursebooks 2017-2018

PDF
 

Number theory in cryptography

MATH-489

Lecturer(s) :

Jetchev Dimitar Petkov

Language:

English

Summary

The goal of the course is to introduce basic notions from public key cryptography (PKC) as well as basic number-theoretic methods and algorithms for cryptanalysis of protocols and schemes based on PKC.

Content

Basic notions and algorithms from public key cryptography such as RSA, ElGamal, key exchange protocols, zero knowledge proofs. Main topics may include, but are not limited to

Keywords

public key cryptography, key exchange, digital signatures, zero knowledge proofs, RSA, ElGamal, integer factorization, index calculus, elliptic curve cryptography

Teaching methods

lecture notes, additional references 

Assessment methods

Theoretical assignments: Weekly problem sets focusing on number-theoretic and complexity-theoretic aspects. Theoretical assignments will count for 30% of the final grade.  

 

Programming assignments: All of the programming exercises will be in SAGE which is a Python-based computer algebra system. No prior experience with SAGE or Python is required. Programming assignments will count for 30% of the final grade.   

One mid-term exam (15% of the final grade) and one final exam (25% of the final grade). Both exams will test theoretical understanding as well as understanding of the algorithms and protocols. The exams will include no SAGE programming exercises. If needed, algorithms could be presented with pseudo-code.  

In the programs

Reference week

 MoTuWeThFr
8-9     
9-10     
10-11     
11-12     
12-13     
13-14     
14-15     
15-16     
16-17     
17-18     
18-19     
19-20     
20-21     
21-22     
Under construction
 
      Lecture
      Exercise, TP
      Project, other

legend

  • Autumn semester
  • Winter sessions
  • Spring semester
  • Summer sessions
  • Lecture in French
  • Lecture in English
  • Lecture in German