botan
botan copied to clipboard
Kuznyechik block cipher
Is there any interest in adding Kuznyechik as block cipher to Botan?
Just finished adding it to a project, basically took the (public domain) code from http://cppcrypto.sourceforge.net/ and adapted the interface to match Botan::BlockCipher. Pretty straightforward, seems to work nicely.
This block cipher is used by VeraCrypt (https://www.veracrypt.fr/en/Encryption%20Algorithms.html).
If this would be a welcome addition to Botan, I will do more work to integrate it in Botan's framework and make a pull request.
For the record: There seems to be a questionable internal structure hidden in both Streebog and Kuznyechik [1]. FWIW.
[1] https://www.sstic.org/media/SSTIC2019/SSTIC-actes/RussianStyleRandomness/SSTIC2019-Article-RussianStyleRandomness-perrin_bonnetain.pdf
Yeah, the Wikipedia page I linked to references similar studies. Still, users tend to want to decrypt whatever they encrypted in the past using this algorithm 😄
Added in commit 4ec8531e169d1241b1ab6731a2d7eebd25b02d49