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) | 217 | 8.0 | 0.796 | 1448 |
| AES/GCM (64K tables) | 234 | 7.4 | 3.726 | 6778 |
| AES/CCM (128-bit key) | 126 | 13.8 | 0.300 | 545 |
| AES/EAX (128-bit key) | 125 | 13.8 | 0.640 | 1164 |
| GMAC(AES) (2K tables) | 844 | 2.1 | 0.795 | 1446 |
| GMAC(AES) (64K tables) | 1232 | 1.4 | 3.752 | 6825 |
| VMAC(AES)-64 (128-bit key) | 7955 | 0.2 | 1.210 | 2201 |
| VMAC(AES)-128 (128-bit key) | 4223 | 0.4 | 1.462 | 2659 |
| HMAC(SHA-1) (128-bit key) | 272 | 6.4 | 0.242 | 440 |
| Two-Track-MAC (160-bit key) | 214 | 8.1 | 0.014 | 26 |
| CMAC(AES) (128-bit key) | 221 | 7.9 | 0.230 | 418 |
| DMAC(AES) (128-bit key) | 222 | 7.8 | 0.600 | 1091 |
| BLAKE2s (256-bit key) | 570 | 3.0 | 0.225 | 409 |
| BLAKE2b (512-bit key) | 758 | 2.3 | 0.263 | 478 |
| CRC32 | 435 | 4.0 | ||
| CRC32C | 4230 | 0.4 | ||
| Adler32 | 1315 | 1.3 | ||
| MD5 | 529 | 3.3 | ||
| SHA-1 | 273 | 6.4 | ||
| SHA-256 | 186 | 9.3 | ||
| SHA-512 | 235 | 7.4 | ||
| Keccak-224 | 157 | 11.0 | ||
| Keccak-256 | 148 | 11.7 | ||
| Keccak-384 | 114 | 15.3 | ||
| Keccak-512 | 78 | 22.1 | ||
| SHA3-224 | 157 | 11.0 | ||
| SHA3-256 | 149 | 11.7 | ||
| SHA3-384 | 114 | 15.3 | ||
| SHA3-512 | 79 | 22.0 | ||
| Tiger | 435 | 4.0 | ||
| Whirlpool | 135 | 12.9 | ||
| RIPEMD-160 | 215 | 8.1 | ||
| RIPEMD-320 | 232 | 7.5 | ||
| RIPEMD-128 | 318 | 5.5 | ||
| RIPEMD-256 | 344 | 5.0 | ||
| BLAKE2s | 548 | 3.2 | ||
| BLAKE2b | 757 | 2.3 | ||
| Panama-LE (256-bit key) | 1524 | 1.1 | 0.769 | 1399 |
| Panama-BE (256-bit key) | 680 | 2.6 | 1.443 | 2625 |
| Salsa20 (256-bit key) | 210 | 8.3 | 0.137 | 249 |
| Salsa20/12 | 335 | 5.2 | 0.164 | 298 |
| Salsa20/8 | 474 | 3.7 | 0.164 | 298 |
| ChaCha20 (256-bit key) | 327 | 5.3 | 0.089 | 162 |
| ChaCha12 (256-bit key) | 512 | 3.4 | 0.088 | 160 |
| ChaCha8 (256-bit key) | 726 | 2.4 | 0.090 | 163 |
| Sosemanuk (128-bit key) | 1266 | 1.4 | 0.458 | 833 |
| MARC4 (128-bit key) | 393 | 4.4 | 1.449 | 2636 |
| SEAL-3.0-LE (160-bit key) | 632 | 2.7 | 38.470 | 69976 |
| WAKE-OFB-LE (256-bit key) | 332 | 5.2 | 1.756 | 3194 |
| AES/CTR (128-bit key) | 285 | 6.1 | 0.243 | 442 |
| AES/CTR (192-bit key) | 235 | 7.4 | 0.242 | 440 |
| AES/CTR (256-bit key) | 200 | 8.7 | 0.256 | 466 |
| AES/CBC (128-bit key) | 221 | 7.8 | 0.184 | 334 |
| AES/CBC (192-bit key) | 189 | 9.2 | 0.186 | 338 |
| AES/CBC (256-bit key) | 165 | 10.5 | 0.201 | 366 |
| AES/OFB (128-bit key) | 213 | 8.1 | 0.231 | 421 |
| AES/CFB (128-bit key) | 219 | 7.9 | 0.342 | 622 |
| AES/ECB (128-bit key) | 231 | 7.5 | 0.092 | 167 |
| Camellia/CTR (128-bit key) | 117 | 14.9 | 0.224 | 408 |
| Camellia/CTR (256-bit key) | 92 | 18.9 | 0.249 | 454 |
| Twofish/CTR (128-bit key) | 146 | 11.9 | 2.542 | 4623 |
| Serpent/CTR (128-bit key) | 71 | 24.6 | 0.511 | 930 |
| CAST-256/CTR (128-bit key) | 73 | 23.8 | 1.252 | 2278 |
| RC6/CTR (128-bit key) | 119 | 14.5 | 2.008 | 3653 |
| MARS/CTR (128-bit key) | 85 | 20.5 | 1.501 | 2730 |
| SHACAL-2/CTR (128-bit key) | 114 | 15.2 | 0.305 | 555 |
| SHACAL-2/CTR (512-bit key) | 114 | 15.2 | 0.314 | 571 |
| DES/CTR (64-bit key) | 61 | 28.5 | 2.758 | 5016 |
| DES-XEX3/CTR (192-bit key) | 57 | 30.4 | 2.827 | 5143 |
| DES-EDE3/CTR (192-bit key) | 24 | 73.2 | 11.654 | 21198 |
| IDEA/CTR (128-bit key) | 71 | 24.5 | 0.255 | 464 |
| RC5 (r=16) | 105 | 16.5 | 1.612 | 2933 |
| Blowfish/CTR (128-bit key) | 105 | 16.5 | 36.799 | 66936 |
| TEA/CTR (128-bit key) | 58 | 29.8 | 0.204 | 371 |
| XTEA/CTR (128-bit key) | 58 | 30.0 | 0.204 | 372 |
| CAST-128/CTR (128-bit key) | 83 | 20.8 | 0.336 | 612 |
| SKIPJACK/CTR (80-bit key) | 35 | 49.3 | 1.835 | 3338 |
| SEED/CTR (1/2 K table) | 54 | 32.2 | 0.278 | 505 |
| Operation | Milliseconds/Operation | Megacycles/Operation |
|---|---|---|
| RSA 1024 Encryption | 0.02 | 0.04 |
| RSA 1024 Decryption | 0.34 | 0.63 |
| LUC 1024 Encryption | 0.02 | 0.04 |
| LUC 1024 Decryption | 0.56 | 1.02 |
| DLIES 1024 Encryption | 0.23 | 0.42 |
| DLIES 1024 Encryption with precomputation | 0.42 | 0.77 |
| DLIES 1024 Decryption | 0.33 | 0.61 |
| LUCELG 512 Encryption | 0.15 | 0.27 |
| LUCELG 512 Encryption with precomputation | 0.14 | 0.26 |
| LUCELG 512 Decryption | 0.16 | 0.29 |
| RSA 2048 Encryption | 0.04 | 0.07 |
| RSA 2048 Decryption | 1.56 | 2.83 |
| LUC 2048 Encryption | 0.05 | 0.08 |
| LUC 2048 Decryption | 2.60 | 4.73 |
| DLIES 2048 Encryption | 1.11 | 2.01 |
| DLIES 2048 Encryption with precomputation | 1.27 | 2.30 |
| DLIES 2048 Decryption | 1.07 | 1.94 |
| LUCELG 1024 Encryption | 0.51 | 0.93 |
| LUCELG 1024 Encryption with precomputation | 0.51 | 0.93 |
| LUCELG 1024 Decryption | 0.47 | 0.85 |
| RSA 1024 Signature | 0.34 | 0.63 |
| 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.57 | 1.04 |
| LUC 1024 Verification | 0.02 | 0.04 |
| NR 1024 Signature | 0.12 | 0.22 |
| NR 1024 Signature with precomputation | 0.12 | 0.21 |
| NR 1024 Verification | 0.13 | 0.24 |
| NR 1024 Verification with precomputation | 0.18 | 0.33 |
| DSA 1024 Signature | 0.12 | 0.23 |
| DSA 1024 Signature with precomputation | 0.12 | 0.22 |
| DSA 1024 Verification | 0.14 | 0.25 |
| DSA 1024 Verification with precomputation | 0.19 | 0.34 |
| 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.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.81 |
| RSA 2048 Verification | 0.04 | 0.07 |
| RW 2048 Signature | 1.60 | 2.91 |
| RW 2048 Signature with precomputation | 1.60 | 2.91 |
| RW 2048 Verification | 0.02 | 0.04 |
| LUC 2048 Signature | 2.57 | 4.67 |
| LUC 2048 Verification | 0.05 | 0.08 |
| NR 2048 Signature | 0.55 | 1.01 |
| NR 2048 Signature with precomputation | 0.27 | 0.50 |
| NR 2048 Verification | 0.62 | 1.14 |
| NR 2048 Verification with precomputation | 0.43 | 0.78 |
| LUC-HMP 1024 Signature | 0.50 | 0.90 |
| LUC-HMP 1024 Signature with precomputation | 0.49 | 0.90 |
| LUC-HMP 1024 Verification | 0.50 | 0.91 |
| LUC-HMP 1024 Verification with precomputation | 0.51 | 0.93 |
| 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.60 |
| XTR-DH 342 Key-Pair Generation | 0.43 | 0.79 |
| XTR-DH 342 Key Agreement | 0.85 | 1.54 |
| 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.30 | 0.54 |
| DH 2048 Key-Pair Generation | 0.56 | 1.02 |
| DH 2048 Key-Pair Generation with precomputation | 0.63 | 1.15 |
| DH 2048 Key Agreement | 1.02 | 1.86 |
| 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.26 | 0.47 |
| LUCDIF 1024 Key Agreement | 0.43 | 0.78 |
| MQV 1024 Key-Pair Generation | 0.11 | 0.20 |
| MQV 1024 Key-Pair Generation with precomputation | 0.12 | 0.21 |
| 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.40 | 2.55 |
| ECIES over GF(p) 256 Encryption with precomputation | 1.19 | 2.17 |
| ECIES over GF(p) 256 Decryption | 1.01 | 1.83 |
| ECDSA over GF(p) 256 Signature | 0.72 | 1.30 |
| ECDSA over GF(p) 256 Signature with precomputation | 0.61 | 1.12 |
| ECDSA over GF(p) 256 Verification | 2.49 | 4.52 |
| ECDSA over GF(p) 256 Verification with precomputation | 1.01 | 1.84 |
| ECDHC over GF(p) 256 Key-Pair Generation | 0.73 | 1.32 |
| ECDHC over GF(p) 256 Key-Pair Generation with precomputation | 0.62 | 1.12 |
| ECDHC over GF(p) 256 Key Agreement | 0.69 | 1.26 |
| ECMQVC over GF(p) 256 Key-Pair Generation | 0.71 | 1.29 |
| ECMQVC over GF(p) 256 Key-Pair Generation with precomputation | 0.61 | 1.11 |
| ECMQVC over GF(p) 256 Key Agreement | 2.53 | 4.60 |
| ECIES over GF(2^n) 233 Encryption | 7.70 | 14.00 |
| ECIES over GF(2^n) 233 Encryption with precomputation | 2.12 | 3.86 |
| ECIES over GF(2^n) 233 Decryption | 4.39 | 7.98 |
| ECDSA over GF(2^n) 233 Signature | 3.87 | 7.04 |
| ECDSA over GF(2^n) 233 Signature with precomputation | 1.08 | 1.97 |
| ECDSA over GF(2^n) 233 Verification | 4.83 | 8.78 |
| ECDSA over GF(2^n) 233 Verification with precomputation | 1.77 | 3.21 |
| ECDHC over GF(2^n) 233 Key-Pair Generation | 3.93 | 7.14 |
| ECDHC over GF(2^n) 233 Key-Pair Generation with precomputation | 1.09 | 1.98 |
| ECDHC over GF(2^n) 233 Key Agreement | 4.07 | 7.40 |
| ECMQVC over GF(2^n) 233 Key-Pair Generation | 3.88 | 7.06 |
| ECMQVC over GF(2^n) 233 Key-Pair Generation with precomputation | 1.08 | 1.97 |
| ECMQVC over GF(2^n) 233 Key Agreement | 4.88 | 8.88 |