Softwareprojekt: Cryptoengineering S20
to Whiteboard Site

Description

This software project offers the opportunity to learn about cryptographic engineering by working on one of the mentioned project ideas under our guidance

Time frame: 17.8 - 31.10.20
Coordinators: Benjamin Zengin / Tudor Soroceanu

Requirements: The course has compulsory attendance. It is expected that the participants write code and contribute to an existing code base. Basic knowledge of IT-security and cryptography are required.

Potential projects:

  • Optimization of post-quantum cryptographic schemes for new processor architectures
    Task: Optimize post-quantum cryptographic schemes for processor architectures other than Haswell and Cortex M-4 (e.g. Cortex A-7).
  • Visualization of post-quantum cryptography algorithms
    Task: Implement PQ algorithms and think about visualizations.
  • Implement crypto algorithms in Rust and hacspec
    Task: Implement an cryptographic algorithm of your choice (that hasn't been implemented already) in hacspec. If there's enough time, use the specification to verify existing implementations or generate a C reference implementation from it.
  • Verify parts of Botan (with cryptol and saw)
    Task: Verify the correctness of crypto implementations in Botan using tools such as cryptol and saw.
  • Implement hacspec to XXX compiler
    Task: Implement a compiler from the hacspec language (which will look a little like this but in Rust) to a formal language such as cryptol or gallina.
  • Implement isogeny basics in sage
    Task: Implement efficient arithmetic for isogeny-based cryptography in sage (Tudor has references)
  • Do something in Botan
    Task: Implement a new crypto algorithm in the Botan library, e.g. csidh or kyber.
    Task: Implement FFI API and Rust bindings for Botan.
Basic Course Info

Course No Course Type Hours
19323812 Projektseminar 2

Time Span
Instructors
Jonas Heyden
Franziskus Kiefer
Marian Margraf
Marian Sigler
Tudor Alexis Andrei Soroceanu
Benjamin Cemal Zengin

Study Regulation

0086c_k150 2014, BSc Informatik (Mono), 150 LPs
0086d_k135 2014, BSc Informatik (Mono), 135 LPs
0087d_k90 2015, BSc Informatik (Kombi), 90 LPs
0088d_m60 2015, MSc Informatik (Kombi), 60 LPs
0089c_MA120 2014, MSc Informatik (Mono), 120 LPs
0159c_m30 2014, ABV Informatik, 30 LPs
0207b_m37 2015, MSc Informatik (Lehramt), 37 LPs
0208b_m42 2015, MSc Informatik (Lehramt), 42 LPs
0458a_m37 2015, MSc Informatik (Lehramt), 37 LPs
0471a_m42 2015, MSc Informatik (Lehramt), 42 LPs
0511a_m72 2016, MSc Informatik (Lehramt), 72 LPs
0511b_m72 2019, M-Ed Fach 2 Informatik (Lehramt an Gymnasien - Quereinstieg), 72 LP
0556a_m37 2018, M-Ed Fach 1 Informatik (Lehramt an Integrierten Sekundarschulen und Gymnasien), 37 LPs
0557a_m42 2018, M-Ed Fach 2 Informatik (Lehramt an Integrierten Sekundarschulen und Gymnasien), 42 LPs

Softwareprojekt: Cryptoengineering S20
to Whiteboard Site

Main Events

Day Time Location Details

Softwareprojekt: Cryptoengineering S20
to Whiteboard Site

Most Recent Announcement

:  

Currently there are no public announcements for this course.


Older announcements

Softwareprojekt: Cryptoengineering S20
to Whiteboard Site

Currently there are no resources for this course available.
Or at least none which you're allowed to see with your current set of permissions.
Maybe you have to log in first.