The aim of this course is to give an overview of research problems at the intersection of Artificial Intelligence (AI) and Cryptography, namely exploring a) AI models and methods to design cryptographic algorithms, and b) cryptographic techniques for the design of secure and private machine learning models.
Main lecturer: Luca Mariot, University of Twente
Guest lecturer: Stjepan Picek, Radboud University
Credits: 2, Educational mode: 8 lectures (2 hours per lecture)
By the end of this course, you should be able to:
- Employ AI methods to:
- Design strong cryptographic primitives
- Assess the security of cryptographic primitives
- Employ cryptographic techniques to
- Analyze relevant security and privacy threats in AI models
- Apply cryptographic countermeasures to mitigate such threats
The course is designed for PhD students in computer science and related fields. Basic knowledge of Machine Learning is assumed. Knowledge of cryptography is useful, but all necessary concepts will be reviewed throughout the course.
Short report (of around 8 pages) on a research topic agreed with the lecturer. The report can be both a theoretical or experimental contribution, or a brief survey on a particular topic.
Lecture Plan and Syllabus
- Review of basic concepts of symmetric and public-key cryptography
- Cryptographic properties of Boolean functions and evolutionary algorithms
- Evolutionary algorithms and cellular automata for the design of Boolean functions
- Adversarial examples in deep neural networks, and how to generate them with evolutionary algorithms
- Differential privacy as a countermeasure to adversarial examples
- Deep learning-based side-channel analysis (guest lecture by Stjepan Picek, Radboud University)
- Secure Multiparty Computation for privacy-preserving machine learning
- Wrap-up, discussion of open problems and future directions of research
The recordings of all lectures are available on my YouTube channel.
References and Reading Material
See the references in the individual lecture links above.