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 | 887 | 2.0 | 0.491 | 893 |
| AES/CCM (128-bit key) | 452 | 3.8 | 0.311 | 565 |
| AES/EAX (128-bit key) | 460 | 3.8 | 0.400 | 728 |
| GMAC(AES) | 1505 | 1.2 | 0.493 | 896 |
| VMAC(AES)-64 (128-bit key) | 7744 | 0.2 | 0.653 | 1188 |
| VMAC(AES)-128 (128-bit key) | 4007 | 0.4 | 0.740 | 1346 |
| HMAC(SHA-1) (128-bit key) | 268 | 6.5 | 0.259 | 472 |
| Two-Track-MAC (160-bit key) | 211 | 8.2 | 0.015 | 28 |
| CMAC(AES) (128-bit key) | 584 | 3.0 | 0.153 | 278 |
| DMAC(AES) (128-bit key) | 583 | 3.0 | 0.431 | 784 |
| BLAKE2s (256-bit key) | 569 | 3.0 | 0.250 | 455 |
| BLAKE2b (512-bit key) | 751 | 2.3 | 0.295 | 536 |
| CRC32 | 425 | 4.1 | ||
| CRC32C | 4124 | 0.4 | ||
| Adler32 | 1281 | 1.4 | ||
| MD5 | 528 | 3.3 | ||
| SHA-1 | 265 | 6.5 | ||
| SHA-256 | 181 | 9.6 | ||
| SHA-512 | 229 | 7.6 | ||
| Keccak-224 | 151 | 11.5 | ||
| Keccak-256 | 147 | 11.8 | ||
| Keccak-384 | 112 | 15.5 | ||
| Keccak-512 | 79 | 22.0 | ||
| SHA3-224 | 158 | 11.0 | ||
| SHA3-256 | 148 | 11.7 | ||
| SHA3-384 | 114 | 15.2 | ||
| SHA3-512 | 79 | 21.9 | ||
| Tiger | 436 | 4.0 | ||
| Whirlpool | 135 | 12.9 | ||
| RIPEMD-160 | 217 | 8.0 | ||
| RIPEMD-320 | 233 | 7.5 | ||
| RIPEMD-128 | 318 | 5.5 | ||
| RIPEMD-256 | 346 | 5.0 | ||
| BLAKE2s | 570 | 3.0 | ||
| BLAKE2b | 745 | 2.3 | ||
| Panama-LE (256-bit key) | 1606 | 1.1 | 0.771 | 1403 |
| Panama-BE (256-bit key) | 640 | 2.7 | 1.425 | 2592 |
| Salsa20 (256-bit key) | 210 | 8.3 | 0.141 | 256 |
| Salsa20/12 | 334 | 5.2 | 0.171 | 311 |
| Salsa20/8 | 478 | 3.6 | 0.175 | 318 |
| ChaCha20 (256-bit key) | 317 | 5.5 | 0.095 | 172 |
| ChaCha12 (256-bit key) | 517 | 3.4 | 0.093 | 169 |
| ChaCha8 (256-bit key) | 713 | 2.4 | 0.093 | 169 |
| Sosemanuk (128-bit key) | 1269 | 1.4 | 0.457 | 830 |
| MARC4 (128-bit key) | 395 | 4.4 | 1.397 | 2541 |
| SEAL-3.0-LE (160-bit key) | 651 | 2.7 | 37.303 | 67855 |
| WAKE-OFB-LE (256-bit key) | 334 | 5.2 | 1.725 | 3137 |
| AES/CTR (128-bit key) | 2350 | 0.7 | 0.236 | 430 |
| AES/CTR (192-bit key) | 2000 | 0.9 | 0.228 | 415 |
| AES/CTR (256-bit key) | 1736 | 1.0 | 0.248 | 451 |
| AES/CBC (128-bit key) | 590 | 2.9 | 0.180 | 327 |
| AES/CBC (192-bit key) | 499 | 3.5 | 0.170 | 310 |
| AES/CBC (256-bit key) | 433 | 4.0 | 0.190 | 345 |
| AES/OFB (128-bit key) | 553 | 3.1 | 0.232 | 422 |
| AES/CFB (128-bit key) | 574 | 3.0 | 0.258 | 469 |
| AES/ECB (128-bit key) | 2824 | 0.6 | 0.083 | 151 |
| Camellia/CTR (128-bit key) | 116 | 14.9 | 0.229 | 416 |
| Camellia/CTR (256-bit key) | 92 | 18.9 | 0.253 | 460 |
| Twofish/CTR (128-bit key) | 146 | 11.9 | 2.531 | 4604 |
| Serpent/CTR (128-bit key) | 71 | 24.5 | 0.461 | 838 |
| CAST-256/CTR (128-bit key) | 75 | 23.3 | 1.222 | 2223 |
| RC6/CTR (128-bit key) | 121 | 14.3 | 2.120 | 3857 |
| MARS/CTR (128-bit key) | 85 | 20.4 | 1.489 | 2708 |
| SHACAL-2/CTR (128-bit key) | 114 | 15.2 | 0.312 | 568 |
| SHACAL-2/CTR (512-bit key) | 115 | 15.1 | 0.318 | 578 |
| DES/CTR (64-bit key) | 61 | 28.4 | 2.570 | 4674 |
| DES-XEX3/CTR (192-bit key) | 57 | 30.4 | 2.593 | 4716 |
| DES-EDE3/CTR (192-bit key) | 24 | 73.4 | 8.212 | 14938 |
| IDEA/CTR (128-bit key) | 71 | 24.4 | 0.261 | 474 |
| RC5 (r=16) | 102 | 17.0 | 1.702 | 3096 |
| Blowfish/CTR (128-bit key) | 103 | 16.8 | 36.860 | 67048 |
| TEA/CTR (128-bit key) | 59 | 29.5 | 0.230 | 418 |
| XTEA/CTR (128-bit key) | 58 | 29.9 | 0.230 | 419 |
| CAST-128/CTR (128-bit key) | 83 | 20.9 | 0.344 | 625 |
| SKIPJACK/CTR (80-bit key) | 35 | 49.1 | 1.850 | 3366 |
| SEED/CTR (1/2 K table) | 54 | 32.3 | 0.282 | 514 |
| 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.56 | 1.02 |
| DLIES 1024 Encryption | 0.23 | 0.41 |
| DLIES 1024 Encryption with precomputation | 0.42 | 0.77 |
| DLIES 1024 Decryption | 0.32 | 0.59 |
| LUCELG 512 Encryption | 0.14 | 0.25 |
| LUCELG 512 Encryption with precomputation | 0.14 | 0.25 |
| LUCELG 512 Decryption | 0.15 | 0.27 |
| RSA 2048 Encryption | 0.04 | 0.07 |
| RSA 2048 Decryption | 1.57 | 2.85 |
| LUC 2048 Encryption | 0.05 | 0.08 |
| LUC 2048 Decryption | 2.54 | 4.62 |
| DLIES 2048 Encryption | 1.09 | 1.98 |
| DLIES 2048 Encryption with precomputation | 1.25 | 2.27 |
| DLIES 2048 Decryption | 1.04 | 1.90 |
| LUCELG 1024 Encryption | 0.50 | 0.91 |
| LUCELG 1024 Encryption with precomputation | 0.50 | 0.90 |
| LUCELG 1024 Decryption | 0.43 | 0.78 |
| RSA 1024 Signature | 0.35 | 0.63 |
| RSA 1024 Verification | 0.02 | 0.04 |
| RW 1024 Signature | 0.37 | 0.68 |
| 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.22 |
| NR 1024 Signature with precomputation | 0.12 | 0.22 |
| NR 1024 Verification | 0.13 | 0.24 |
| NR 1024 Verification with precomputation | 0.19 | 0.34 |
| 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.35 |
| LUC-HMP 512 Signature | 0.14 | 0.25 |
| LUC-HMP 512 Signature with precomputation | 0.14 | 0.25 |
| LUC-HMP 512 Verification | 0.14 | 0.25 |
| LUC-HMP 512 Verification with precomputation | 0.14 | 0.25 |
| ESIGN 1023 Signature | 0.06 | 0.11 |
| ESIGN 1023 Verification | 0.02 | 0.03 |
| ESIGN 1536 Signature | 0.10 | 0.17 |
| ESIGN 1536 Verification | 0.03 | 0.06 |
| RSA 2048 Signature | 1.60 | 2.91 |
| RSA 2048 Verification | 0.04 | 0.07 |
| RW 2048 Signature | 1.64 | 2.98 |
| RW 2048 Signature with precomputation | 1.67 | 3.04 |
| RW 2048 Verification | 0.02 | 0.04 |
| LUC 2048 Signature | 2.60 | 4.74 |
| LUC 2048 Verification | 0.05 | 0.08 |
| NR 2048 Signature | 0.57 | 1.03 |
| NR 2048 Signature with precomputation | 0.28 | 0.51 |
| NR 2048 Verification | 0.63 | 1.14 |
| NR 2048 Verification with precomputation | 0.41 | 0.74 |
| LUC-HMP 1024 Signature | 0.50 | 0.90 |
| LUC-HMP 1024 Signature with precomputation | 0.52 | 0.94 |
| LUC-HMP 1024 Verification | 0.51 | 0.92 |
| LUC-HMP 1024 Verification with precomputation | 0.51 | 0.92 |
| ESIGN 2046 Signature | 0.12 | 0.21 |
| ESIGN 2046 Verification | 0.04 | 0.07 |
| XTR-DH 171 Key-Pair Generation | 0.17 | 0.31 |
| XTR-DH 171 Key Agreement | 0.33 | 0.61 |
| XTR-DH 342 Key-Pair Generation | 0.44 | 0.79 |
| XTR-DH 342 Key Agreement | 0.88 | 1.59 |
| DH 1024 Key-Pair Generation | 0.12 | 0.22 |
| DH 1024 Key-Pair Generation with precomputation | 0.22 | 0.40 |
| DH 1024 Key Agreement | 0.33 | 0.60 |
| DH 2048 Key-Pair Generation | 0.56 | 1.02 |
| DH 2048 Key-Pair Generation with precomputation | 0.64 | 1.16 |
| DH 2048 Key Agreement | 1.05 | 1.91 |
| 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.15 | 0.27 |
| 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.43 | 0.79 |
| MQV 1024 Key-Pair Generation | 0.11 | 0.21 |
| 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.55 | 1.00 |
| MQV 2048 Key-Pair Generation with precomputation | 0.27 | 0.49 |
| MQV 2048 Key Agreement | 1.01 | 1.85 |
| ECIES over GF(p) 256 Encryption | 1.41 | 2.56 |
| ECIES over GF(p) 256 Encryption with precomputation | 1.20 | 2.18 |
| ECIES over GF(p) 256 Decryption | 0.99 | 1.79 |
| ECDSA over GF(p) 256 Signature | 0.72 | 1.31 |
| ECDSA over GF(p) 256 Signature with precomputation | 0.61 | 1.12 |
| ECDSA over GF(p) 256 Verification | 2.50 | 4.54 |
| ECDSA over GF(p) 256 Verification with precomputation | 1.00 | 1.82 |
| ECDHC over GF(p) 256 Key-Pair Generation | 0.71 | 1.28 |
| ECDHC over GF(p) 256 Key-Pair Generation with precomputation | 0.62 | 1.13 |
| ECDHC over GF(p) 256 Key Agreement | 0.72 | 1.31 |
| ECMQVC over GF(p) 256 Key-Pair Generation | 0.71 | 1.29 |
| ECMQVC over GF(p) 256 Key-Pair Generation with precomputation | 0.60 | 1.09 |
| ECMQVC over GF(p) 256 Key Agreement | 2.54 | 4.62 |
| ECIES over GF(2^n) 233 Encryption | 7.77 | 14.13 |
| ECIES over GF(2^n) 233 Encryption with precomputation | 2.14 | 3.89 |
| ECIES over GF(2^n) 233 Decryption | 4.42 | 8.04 |
| ECDSA over GF(2^n) 233 Signature | 3.94 | 7.16 |
| ECDSA over GF(2^n) 233 Signature with precomputation | 1.08 | 1.97 |
| ECDSA over GF(2^n) 233 Verification | 4.85 | 8.83 |
| ECDSA over GF(2^n) 233 Verification with precomputation | 1.79 | 3.25 |
| ECDHC over GF(2^n) 233 Key-Pair Generation | 3.89 | 7.08 |
| ECDHC over GF(2^n) 233 Key-Pair Generation with precomputation | 1.07 | 1.95 |
| ECDHC over GF(2^n) 233 Key Agreement | 3.93 | 7.15 |
| ECMQVC over GF(2^n) 233 Key-Pair Generation | 3.88 | 7.05 |
| ECMQVC over GF(2^n) 233 Key-Pair Generation with precomputation | 1.08 | 1.96 |
| ECMQVC over GF(2^n) 233 Key Agreement | 4.90 | 8.91 |