tiny-AES-c
tiny-AES-c copied to clipboard
Add CCM mode
I have written a python script to generate test cases with different length of data, nonce and tag, However, only one case is added to test.c . Should I upload the scripts, too?
This version is just for review and not ready to be merged. Any comments or suggestions are welcomed.
I have written a python script to generate test cases with different length of data, nonce and tag, However, only one case is added to test.c . Should I upload the scripts, too?
Nah, I think I get the point. I do like the idea though. I've done something similar e.g. with the bignum library: using Python to generate random inputs -> calculate expected output, and then compare results with the C-code.
This version is just for review and not ready to be merged. Any comments or suggestions are welcomed.
At first glance it looks super clean :)
I'll take a deeper dive tonight, when I get home from work.
Sorry for the silence, but I did not get around to writing something substantial after reviewing your code.
I have a few ideas I would like to try out, e.g. consolidating the CCM struct into the already-existing context object.
I am on vacation for the next two weeks though, so please bear with me until I’m back.
No hurry.
Why not use different context types for each of modes? This would make it more extensible.
Has there been progress on this? CCM support would be a terrific addition to tiny-AES! In support of CCM over GCM, the CTR mode implementation is particularly attractive due to its exceptionally small footprint. By comparison, an existing Tiny-AES-GCM implementation (https://github.com/FukuanWang/tiny_aes_gcm) consumes 1.4K more flash than stock TinyAES-CTR (which doesn't sound like a lot but breaks my budget). If CCM could be implemented without a huge expansion of the CTR footprint, it would be a great addition to tiny-AES.
Many thanks to the devs!