Skip to content

Simple constant-time AES implementation

License

Notifications You must be signed in to change notification settings

bitcoin-core/ctaes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ctaes

Simple C module for constant-time AES encryption and decryption.

Features:

Performance

Compiled with GCC 5.3.1 with -O3, on an Intel(R) Core(TM) i7-4800MQ CPU, numbers in CPU cycles:

Algorithm Key schedule Encryption per byte Decryption per byte
AES-128 2.8k 154 161
AES-192 3.1k 169 181
AES-256 4.0k 191 203

Build steps

Object code:

$ gcc -O3 ctaes.c -c -o ctaes.o

Tests:

$ gcc -O3 ctaes.c test.c -o test

Benchmark:

$ gcc -O3 ctaes.c bench.c -o bench

Review

Results of a formal review of the code can be found in http://bitcoin.sipa.be/ctaes/review.zip

About

Simple constant-time AES implementation

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages