Wussler, A. (2023). Post-quantum cryptography in OpenPGP [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://doi.org/10.34726/hss.2023.106226
Angesichts der neuesten Fortschritte im Quantencomputing und des Shor's Algorithmus zielt dieses Projekt darauf ab, Post-Quantum Kryptographie für die E-Mail- und Dateiverschlüsselung sowie die Softwareverteilung im OpenPGP-Protokoll zu integrieren. 14 neue Algorithmusbezeichner werden dem Protokoll hinzugefügt, die verschiedene Sicherheitsstufen von CRYSTALS-Dilithium und CRYSTALS-Kyber hybrid mit elliptischen Kurven und zwei eigenständige Varianten von SPHINCS+ implementieren. Die Wahl und Konstruktion der Algorithmen werden ausführlich diskutiert, unter Berücksichtigung von Sicherheitsfaktoren, Benutzererfahrung und den Interessen verschiedener Stakeholder. Das Projekt entwickelt auch eine Implementierung in Golang, welche die bestehende go-crypto Programmbibliothek erweitert, um sicherzustellen, dass der vorgeschlagene Standard problemlos implementiert werden kann und um die tatsächliche Leistung auf realen Desktop- und Mobilgeräten zu messen. Die Leistungsdaten werden dann sorgfältig analysiert, um Erkenntnisse über die zu erwartenden Unterschiede im Benutzererlebnis und die notwendigen Änderungen an den OpenPGP-Anwendungen zu erhalten.
de
Given the recent advancements in quantum computing and Shor's algorithm, this project aims at bringing Post-Quantum cryptography for e-mail and file encryption as well as software distribution to the OpenPGP protocol. 14 new algorithm identifiers are added to the protocol, implementing different security levels of CRYSTALS-Dilithium and CRYSTALS-Kyber hybrid with elliptic curves, and two standalone variants of SPHINCS+. An extensive discussion is provided on the algorithm choice and construction, considering security factors, user experience, and the interest of various stakeholders. The project also develops an implementation in Golang expanding the existing go-crypto library, to ensure that the proposed standard can be cleanly implemented, and to measure the actual performance on real desktop and mobile devices. The performance data is then carefully analyzed to provide insights on the expected differences in user experience and the necessary changes to the OpenPGP applications.