Skip to content

Add simple x25519-dalek key exchange module

Katharina Fey requested to merge feature/new-crypto into develop

Previously we were using libsodium for cryptography. Considering that the ERIS encoding layer uses a symmetric stream cipher to encrypt blocks, we may want to simply use a diffie-hellman key exchange to compute a key for this purpose. Cryptography was previously removed from Ratman in a big refactor at the beginning on 2022 (an abstraction layer which no longer exists handled the user identities and key store mechanisms).

This code uses static secrets, meaning that keys between two network participants remain the same. This is the same behaviour as we previously implemented on top of libsodium.

Whether this is the correct approach to take remains to be seen (in future audits).

Edited by Katharina Fey

Merge request reports