Course manual 2024/2025

Course content

Security is one of the most important extra-functional  property of systems. Essential yet often overlooked, security ensures that our daily transactions remain protected, that our infrastucture operates regularly and that our communication stays private and safe from unauthorized parties.

The aim of this course is to provide solid foundations on the overall security domain and let the students expand with ease later in their study program. The course starts from the core components of cryptography, explaining their structure and implementation, while examinining their vulnerabilities at the abstract and applied level. Subsequently, it shows how these components are used to build the cryptographic protocols deployed in our everyday life. The overview of security topics continues covering fundamentals of operating systems security, intrusion detection/prevention and recent research topics such as privacy-preserving technology and blockchain.

Study materials

Literature

  • Every lecture will provide slides and related material from book chapters and various published work form cryptography-oriented and security-oriented conferences (such as CRYPTO, CHES, DEFCON, BLACKHAT, USENIX)

Other

  • Your laptop

Objectives

  • Understand, implement and apply the core components of cryptography: public and private cryptosystems, message authentication codes, digital signatures, hash functions, etc. Comprehend their differences and applications.
  • Analyze the real-world security of modern cryptographic primitives and their implementations. The students will starting with algebraic techniques at the mathematical cryptanalysis level and reach practical security at the electrical layer using side-channel and fault-based cryptanalysis.
  • Understand and apply cryptographic protocols to secure the exchange of information
  • Understand and practice basic principles of system and operating system security, in conjuction with attacks and common detection/prevention mechanisms
  • Learn recent techniques and topics in privacy
  • Demonstrate a security-oriented mindset solving given exercises
  • Perform intrusion detection analysis in real-world datasets, utilizing modern anomaly detection machine-learning algorithms

Teaching methods

  • Lecture
  • Seminar
  • Laptop seminar

Learning activities

Activity

Hours

Lectures

28

Exam

2

Work sessions

28

Self-study

110

Total

168

(6 EC x 28 hours)

Attendance

Programme's requirements concerning attendance (OER-B):

  • For practical trainings and tutorials/seminars with assignments attendance is, in principle, obligatory. When students do not meet the requirements for attendance, this may lead to not finishing a course with a pass mark.

Additional requirements for this course:

The attendance to lecture or TA sessions is not obligatory in this course.

Assessment

Item and weight Details

Final grade

1 (100%)

Tentamen digitaal

IDS assignment

Must be ≥ pass

Cryptanalysis assignment

Must be ≥ pass

Cryptography assignment

Must be ≥ pass

System Security assignment

Must be ≥ pass

Side-Channel Attack assignment

Must be ≥ pass

Random Number Generation assignment

Must be ≥ pass

The course grade is the grade of the final examination. The course has a set of assignments that are graded with pass/fail.

The assignments need to be passed in order to pass the course (i.e. all assignment grades need to be 'pass'). The exam grade also needs to be a passing grade to pass the exam.

Assignments

To pass the course you must pass all the weekly assignments. The assignments can be carried out in groups of 2 people. 

Fraud and plagiarism

Over het algemeen geldt dat elke uitwerking die je inlevert ter verkrijging van een beoordeling voor een vak je eigen werk moet zijn, tenzij samenwerken expliciet door de docent is toegestaan. Het inzien of kopiëren van andermans werk (zelfs als je dat hebt gevonden bij de printer, in een openstaande directory of op een onbeheerde computer) of materiaal overnemen uit een boek, tijdschrift, website, code repository of een andere bron - ook al is het gedeeltelijk - en inleveren alsof het je eigen werk is, is plagiaat.

We juichen toe dat je het cursusmateriaal en de opdrachten met medestudenten bespreekt om het beter te begrijpen. Je mag bronnen op het web raadplegen om meer te weten te komen over het onderwerp en om technische problemen op te lossen, maar niet voor regelrechte antwoorden op opgaven. Als in een uitwerking gebruik is gemaakt van externe bronnen zonder dat een bronvermelding is vermeld (bijvoorbeeld in de rapportage of in commentaar in de code), dan kan dat worden beschouwd als plagiaat.

Deze regels zijn er om alle studenten een eerlijke en optimale leeromgeving aan te kunnen bieden. De verleiding kan groot zijn om te plagiëren als de deadline voor een opdracht nadert, maar doe het niet. Elke vorm van plagiaat wordt bestraft. Als een student ernstige fraude heeft gepleegd, kan dat leiden tot het uitschrijven uit de Universiteit. Zie voor meer informatie over het fraude- en plagiaatreglement van de Universiteit van Amsterdam: www.student.uva.nl

Course structure

Week number Topic
1 Cryptography
2 Cryptographic implementations
3 Cryptanalysis from paper till electron
4 Privacy & User Authentication
5 OS & IoT Security
  Intrusion Detection Systems
7 Protocol & Network Security
8 Exam week

Additional information

  • The language for the course lectures and study material is English
  • The communication language is English

Contact information

Coordinator

  • dr. Kostas Papagiannopoulos

For questions via email contact Kostas Papagiannopoulos: k.papagiannopoulos@uva.nl and Francesco Regazzoni: f.regazzoni@uva.nl

Or join the Q&A Discord server:

https://discord.gg/fzFXjCR7QD