Here are speed benchmarks for some commonly used cryptographic algorithms.
CPU frequency of the test platform is 1.81899e+09 Hz.| Algorithm | MiB/Second | Cycles Per Byte | Microseconds to Setup Key and IV | Cycles to Setup Key and IV |
|---|---|---|---|---|
| AES/GCM (2K tables) | 218 | 8.0 | 0.761 | 1383 |
| AES/GCM (64K tables) | 231 | 7.5 | 3.776 | 6868 |
| AES/CCM (128-bit key) | 126 | 13.8 | 0.319 | 580 |
| AES/EAX (128-bit key) | 125 | 13.8 | 0.643 | 1169 |
| GMAC(AES) (2K tables) | 852 | 2.0 | 0.761 | 1384 |
| GMAC(AES) (64K tables) | 1233 | 1.4 | 3.704 | 6737 |
| VMAC(AES)-64 (128-bit key) | 7953 | 0.2 | 1.158 | 2107 |
| VMAC(AES)-128 (128-bit key) | 4197 | 0.4 | 1.424 | 2591 |
| HMAC(SHA-1) (128-bit key) | 276 | 6.3 | 0.258 | 470 |
| Two-Track-MAC (160-bit key) | 215 | 8.1 | 0.014 | 26 |
| CMAC(AES) (128-bit key) | 220 | 7.9 | 0.226 | 412 |
| DMAC(AES) (128-bit key) | 221 | 7.8 | 0.847 | 1541 |
| BLAKE2s (256-bit key) | 568 | 3.1 | 0.224 | 407 |
| BLAKE2b (512-bit key) | 773 | 2.2 | 0.273 | 496 |
| CRC32 | 434 | 4.0 | ||
| CRC32C | 4264 | 0.4 | ||
| Adler32 | 1310 | 1.3 | ||
| MD5 | 529 | 3.3 | ||
| SHA-1 | 275 | 6.3 | ||
| SHA-256 | 186 | 9.4 | ||
| SHA-512 | 234 | 7.4 | ||
| Keccak-224 | 158 | 11.0 | ||
| Keccak-256 | 149 | 11.6 | ||
| Keccak-384 | 114 | 15.2 | ||
| Keccak-512 | 79 | 21.9 | ||
| SHA3-224 | 158 | 11.0 | ||
| SHA3-256 | 149 | 11.7 | ||
| SHA3-384 | 114 | 15.2 | ||
| SHA3-512 | 79 | 21.9 | ||
| Tiger | 435 | 4.0 | ||
| Whirlpool | 134 | 13.0 | ||
| RIPEMD-160 | 215 | 8.1 | ||
| RIPEMD-320 | 233 | 7.5 | ||
| RIPEMD-128 | 318 | 5.5 | ||
| RIPEMD-256 | 345 | 5.0 | ||
| BLAKE2s | 569 | 3.0 | ||
| BLAKE2b | 761 | 2.3 | ||
| Panama-LE (256-bit key) | 1603 | 1.1 | 0.770 | 1401 |
| Panama-BE (256-bit key) | 688 | 2.5 | 1.423 | 2588 |
| Salsa20 (256-bit key) | 209 | 8.3 | 0.132 | 240 |
| Salsa20/12 | 335 | 5.2 | 0.161 | 293 |
| Salsa20/8 | 477 | 3.6 | 0.161 | 293 |
| ChaCha20 (256-bit key) | 328 | 5.3 | 0.087 | 158 |
| ChaCha12 (256-bit key) | 509 | 3.4 | 0.087 | 159 |
| ChaCha8 (256-bit key) | 725 | 2.4 | 0.088 | 159 |
| Sosemanuk (128-bit key) | 1262 | 1.4 | 0.453 | 825 |
| MARC4 (128-bit key) | 395 | 4.4 | 1.402 | 2550 |
| SEAL-3.0-LE (160-bit key) | 651 | 2.7 | 37.322 | 67889 |
| WAKE-OFB-LE (256-bit key) | 329 | 5.3 | 1.718 | 3125 |
| AES/CTR (128-bit key) | 294 | 5.9 | 0.237 | 431 |
| AES/CTR (192-bit key) | 240 | 7.2 | 0.239 | 435 |
| AES/CTR (256-bit key) | 203 | 8.6 | 0.255 | 464 |
| AES/CBC (128-bit key) | 222 | 7.8 | 0.181 | 330 |
| AES/CBC (192-bit key) | 189 | 9.2 | 0.184 | 334 |
| AES/CBC (256-bit key) | 165 | 10.5 | 0.201 | 366 |
| AES/OFB (128-bit key) | 214 | 8.1 | 0.232 | 422 |
| AES/CFB (128-bit key) | 220 | 7.9 | 0.333 | 606 |
| AES/ECB (128-bit key) | 230 | 7.6 | 0.092 | 168 |
| Camellia/CTR (128-bit key) | 116 | 14.9 | 0.224 | 407 |
| Camellia/CTR (256-bit key) | 91 | 19.0 | 0.247 | 449 |
| Twofish/CTR (128-bit key) | 146 | 11.9 | 2.526 | 4594 |
| Serpent/CTR (128-bit key) | 71 | 24.5 | 0.457 | 831 |
| CAST-256/CTR (128-bit key) | 74 | 23.4 | 1.230 | 2237 |
| RC6/CTR (128-bit key) | 121 | 14.3 | 1.982 | 3605 |
| MARS/CTR (128-bit key) | 86 | 20.2 | 1.492 | 2714 |
| SHACAL-2/CTR (128-bit key) | 114 | 15.2 | 0.307 | 559 |
| SHACAL-2/CTR (512-bit key) | 114 | 15.2 | 0.315 | 572 |
| DES/CTR (64-bit key) | 61 | 28.5 | 2.525 | 4593 |
| DES-XEX3/CTR (192-bit key) | 57 | 30.4 | 2.546 | 4632 |
| DES-EDE3/CTR (192-bit key) | 24 | 73.5 | 8.158 | 14840 |
| IDEA/CTR (128-bit key) | 71 | 24.4 | 0.255 | 464 |
| RC5 (r=16) | 105 | 16.6 | 1.582 | 2877 |
| Blowfish/CTR (128-bit key) | 104 | 16.6 | 36.796 | 66931 |
| TEA/CTR (128-bit key) | 59 | 29.4 | 0.206 | 375 |
| XTEA/CTR (128-bit key) | 58 | 29.9 | 0.205 | 373 |
| CAST-128/CTR (128-bit key) | 83 | 21.0 | 0.339 | 616 |
| SKIPJACK/CTR (80-bit key) | 36 | 48.7 | 1.835 | 3337 |
| SEED/CTR (1/2 K table) | 54 | 32.4 | 0.280 | 509 |
| Operation | Milliseconds/Operation | Megacycles/Operation |
|---|---|---|
| RSA 1024 Encryption | 0.02 | 0.04 |
| RSA 1024 Decryption | 0.34 | 0.62 |
| LUC 1024 Encryption | 0.02 | 0.04 |
| LUC 1024 Decryption | 0.55 | 1.00 |
| DLIES 1024 Encryption | 0.23 | 0.42 |
| DLIES 1024 Encryption with precomputation | 0.42 | 0.77 |
| DLIES 1024 Decryption | 0.33 | 0.60 |
| LUCELG 512 Encryption | 0.14 | 0.25 |
| LUCELG 512 Encryption with precomputation | 0.14 | 0.25 |
| LUCELG 512 Decryption | 0.14 | 0.26 |
| RSA 2048 Encryption | 0.04 | 0.07 |
| RSA 2048 Decryption | 1.54 | 2.81 |
| LUC 2048 Encryption | 0.05 | 0.08 |
| LUC 2048 Decryption | 2.56 | 4.66 |
| DLIES 2048 Encryption | 1.07 | 1.95 |
| DLIES 2048 Encryption with precomputation | 1.21 | 2.21 |
| DLIES 2048 Decryption | 1.03 | 1.88 |
| LUCELG 1024 Encryption | 0.50 | 0.90 |
| LUCELG 1024 Encryption with precomputation | 0.49 | 0.90 |
| LUCELG 1024 Decryption | 0.43 | 0.79 |
| RSA 1024 Signature | 0.34 | 0.62 |
| RSA 1024 Verification | 0.02 | 0.04 |
| RW 1024 Signature | 0.37 | 0.67 |
| RW 1024 Signature with precomputation | 0.37 | 0.67 |
| RW 1024 Verification | 0.01 | 0.02 |
| LUC 1024 Signature | 0.56 | 1.02 |
| LUC 1024 Verification | 0.02 | 0.04 |
| NR 1024 Signature | 0.12 | 0.21 |
| NR 1024 Signature with precomputation | 0.12 | 0.22 |
| NR 1024 Verification | 0.13 | 0.24 |
| NR 1024 Verification with precomputation | 0.19 | 0.35 |
| DSA 1024 Signature | 0.12 | 0.22 |
| DSA 1024 Signature with precomputation | 0.12 | 0.22 |
| DSA 1024 Verification | 0.13 | 0.24 |
| DSA 1024 Verification with precomputation | 0.19 | 0.34 |
| LUC-HMP 512 Signature | 0.13 | 0.24 |
| LUC-HMP 512 Signature with precomputation | 0.13 | 0.24 |
| LUC-HMP 512 Verification | 0.14 | 0.25 |
| LUC-HMP 512 Verification with precomputation | 0.14 | 0.25 |
| ESIGN 1023 Signature | 0.06 | 0.10 |
| ESIGN 1023 Verification | 0.02 | 0.03 |
| ESIGN 1536 Signature | 0.09 | 0.17 |
| ESIGN 1536 Verification | 0.03 | 0.06 |
| RSA 2048 Signature | 1.55 | 2.82 |
| RSA 2048 Verification | 0.04 | 0.07 |
| RW 2048 Signature | 1.61 | 2.92 |
| RW 2048 Signature with precomputation | 1.60 | 2.90 |
| RW 2048 Verification | 0.02 | 0.04 |
| LUC 2048 Signature | 2.61 | 4.75 |
| LUC 2048 Verification | 0.04 | 0.08 |
| NR 2048 Signature | 0.55 | 1.00 |
| NR 2048 Signature with precomputation | 0.28 | 0.51 |
| NR 2048 Verification | 0.61 | 1.12 |
| NR 2048 Verification with precomputation | 0.42 | 0.76 |
| LUC-HMP 1024 Signature | 0.50 | 0.92 |
| LUC-HMP 1024 Signature with precomputation | 0.50 | 0.91 |
| LUC-HMP 1024 Verification | 0.51 | 0.93 |
| LUC-HMP 1024 Verification with precomputation | 0.52 | 0.94 |
| ESIGN 2046 Signature | 0.12 | 0.21 |
| ESIGN 2046 Verification | 0.04 | 0.06 |
| XTR-DH 171 Key-Pair Generation | 0.17 | 0.30 |
| XTR-DH 171 Key Agreement | 0.33 | 0.60 |
| XTR-DH 342 Key-Pair Generation | 0.43 | 0.78 |
| XTR-DH 342 Key Agreement | 0.86 | 1.56 |
| DH 1024 Key-Pair Generation | 0.12 | 0.21 |
| DH 1024 Key-Pair Generation with precomputation | 0.21 | 0.39 |
| DH 1024 Key Agreement | 0.32 | 0.58 |
| DH 2048 Key-Pair Generation | 0.55 | 1.00 |
| DH 2048 Key-Pair Generation with precomputation | 0.63 | 1.15 |
| DH 2048 Key Agreement | 1.04 | 1.89 |
| LUCDIF 512 Key-Pair Generation | 0.07 | 0.13 |
| LUCDIF 512 Key-Pair Generation with precomputation | 0.07 | 0.13 |
| LUCDIF 512 Key Agreement | 0.14 | 0.26 |
| LUCDIF 1024 Key-Pair Generation | 0.25 | 0.46 |
| LUCDIF 1024 Key-Pair Generation with precomputation | 0.25 | 0.46 |
| LUCDIF 1024 Key Agreement | 0.44 | 0.80 |
| MQV 1024 Key-Pair Generation | 0.11 | 0.20 |
| MQV 1024 Key-Pair Generation with precomputation | 0.11 | 0.20 |
| MQV 1024 Key Agreement | 0.22 | 0.41 |
| MQV 2048 Key-Pair Generation | 0.54 | 0.98 |
| MQV 2048 Key-Pair Generation with precomputation | 0.27 | 0.49 |
| MQV 2048 Key Agreement | 1.00 | 1.81 |
| ECIES over GF(p) 256 Encryption | 1.41 | 2.57 |
| ECIES over GF(p) 256 Encryption with precomputation | 1.20 | 2.19 |
| ECIES over GF(p) 256 Decryption | 1.00 | 1.82 |
| ECDSA over GF(p) 256 Signature | 0.72 | 1.31 |
| ECDSA over GF(p) 256 Signature with precomputation | 0.62 | 1.12 |
| ECDSA over GF(p) 256 Verification | 2.47 | 4.50 |
| ECDSA over GF(p) 256 Verification with precomputation | 1.02 | 1.85 |
| ECDHC over GF(p) 256 Key-Pair Generation | 0.71 | 1.29 |
| ECDHC over GF(p) 256 Key-Pair Generation with precomputation | 0.60 | 1.09 |
| ECDHC over GF(p) 256 Key Agreement | 0.71 | 1.29 |
| ECMQVC over GF(p) 256 Key-Pair Generation | 0.70 | 1.28 |
| ECMQVC over GF(p) 256 Key-Pair Generation with precomputation | 0.60 | 1.08 |
| ECMQVC over GF(p) 256 Key Agreement | 2.50 | 4.55 |
| ECIES over GF(2^n) 233 Encryption | 7.69 | 13.98 |
| ECIES over GF(2^n) 233 Encryption with precomputation | 2.13 | 3.87 |
| ECIES over GF(2^n) 233 Decryption | 4.44 | 8.08 |
| ECDSA over GF(2^n) 233 Signature | 3.86 | 7.03 |
| ECDSA over GF(2^n) 233 Signature with precomputation | 1.08 | 1.97 |
| ECDSA over GF(2^n) 233 Verification | 4.80 | 8.74 |
| ECDSA over GF(2^n) 233 Verification with precomputation | 1.83 | 3.33 |
| ECDHC over GF(2^n) 233 Key-Pair Generation | 3.85 | 7.01 |
| ECDHC over GF(2^n) 233 Key-Pair Generation with precomputation | 1.06 | 1.94 |
| ECDHC over GF(2^n) 233 Key Agreement | 3.92 | 7.13 |
| ECMQVC over GF(2^n) 233 Key-Pair Generation | 3.85 | 7.01 |
| ECMQVC over GF(2^n) 233 Key-Pair Generation with precomputation | 1.06 | 1.94 |
| ECMQVC over GF(2^n) 233 Key Agreement | 4.85 | 8.82 |