3 ms·
I'd just like to take a minute to appreciate the quality of this RFC. You can implement the whole algorithm, start to finish, without referencing anything else
by beefhash 8y ago
I'd just like to take a minute to appreciate the quality of this RFC. You can implement the whole algorithm, start to finish, without referencing anything else for the most part. This is a good quality to have.
Nonetheless, this is only really valuable for learning and for toys. In production, you should use existing, tried and true libraries.
For an example of a hard-to-implement spec, see e.g. SPECK[1]. The order of everything is confusing: endianness, x/y variables in the pseudocode, and so on[2,3].
[1] https://eprint.iacr.org/2013/404.pdf https://eprint.iacr.org/2013/404.pdf
[2] https://github.com/timw/bc-java/blob/feature/simon-speck/core/src/main/java/org/bouncycastle/crypto/engines/SpeckEngine.java#L264-L272 https://github.com/timw/bc-java/blob/feature/simon-speck/cor...
[3] https://www.spinics.net/lists/arm-kernel/msg633602.html https://www.spinics.net/lists/arm-kernel/msg633602.html