Cryptography on Software Platforms (SS 2026)
Table of Content
Content
This course delves into the efficient implementation of cryptographic algorithms on software platforms. Main learning objectives
1.How to implement cryptographic primitives efficiently
Discord channel Discussions with other students are possible in the #cryptoengineering channel on Discord.
- Assignment 1: Symmetric-key algorithm
- Assignment 2: Public-key algorithm
- High-end Intel/AMD processors with AVX vector processing
- Resource-constrained Arm microcontrollers
- Constant-time implementations
- Power side-channel resistance
- Jasmin framework for formally verified code
Material
Slides and code are available here.00. Course Information
01. General C code optimization -- Sample code
02. Optimization for memory hierarchy
Matrix multiplication
Code
03. Bitslicing
Administrative Information
Previous Knowledge
Familiarity with C/C++ programming. Knowing the basics of cryptography helps.Prerequisites Curriculum
See position in the curriculumObjective
Optimized software code development for cryptographic primitives targeting high-end and low-end computer architectures, secure implementation techniques, and basic formal verification techniques.Language
EnglishTeaching Method
See the General Information slides.How to get a grade
See the General Information slides.Registration
https://online.tugraz.at/tug_online/ee/rest/pages/slc.tm.cp/course-registration/592113Lecture Dates
| Date | Begin | End | Location | Event | Type | Comment |
|---|---|---|---|---|---|---|
| 2026/03/25 | 10:00 | 11:30 | Seminarraum | Abhaltung | VU | fix/ |
| 2026/04/15 | 10:00 | 11:30 | Seminarraum | Abhaltung | VU | fix/ |
| 2026/04/22 | 10:00 | 11:30 | Seminarraum | Abhaltung | VU | fix/ |
| 2026/04/29 | 10:00 | 11:30 | Seminarraum | Abhaltung | VU | fix/ |
| 2026/05/06 | 10:00 | 11:30 | Seminarraum | Abhaltung | VU | fix/ |
| 2026/05/13 | 10:00 | 11:30 | Seminarraum | Abhaltung | VU | fix/ |
| 2026/05/20 | 10:00 | 11:30 | Seminarraum | Abhaltung | VU | fix/ |
| 2026/05/27 | 10:00 | 11:30 | Seminarraum | Abhaltung | VU | fix/ |
| 2026/06/03 | 10:00 | 11:30 | Seminarraum | Abhaltung | VU | fix/ |
| 2026/06/10 | 10:00 | 11:30 | Seminarraum | Abhaltung | VU | fix/ |
| 2026/06/17 | 10:00 | 11:30 | Seminarraum | Abhaltung | VU | fix/ |
| 2026/06/17 | 10:00 | 11:30 | Seminarraum | Abhaltung | VU | fix/ |
| 2026/06/24 | 10:00 | 11:30 | Seminarraum | Abhaltung | VU | fix/ |