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 | 7.9 | 0.769 | 1399 |
| AES/GCM (64K tables) | 235 | 7.4 | 3.677 | 6689 |
| AES/CCM (128-bit key) | 125 | 13.9 | 0.308 | 560 |
| AES/EAX (128-bit key) | 125 | 13.8 | 0.628 | 1142 |
| GMAC(AES) (2K tables) | 851 | 2.0 | 0.767 | 1395 |
| GMAC(AES) (64K tables) | 1234 | 1.4 | 3.678 | 6690 |
| VMAC(AES)-64 (128-bit key) | 7822 | 0.2 | 1.191 | 2167 |
| VMAC(AES)-128 (128-bit key) | 4186 | 0.4 | 1.439 | 2617 |
| HMAC(SHA-1) (128-bit key) | 264 | 6.6 | 0.260 | 473 |
| Two-Track-MAC (160-bit key) | 213 | 8.2 | 0.015 | 27 |
| CMAC(AES) (128-bit key) | 220 | 7.9 | 0.228 | 415 |
| DMAC(AES) (128-bit key) | 221 | 7.8 | 0.717 | 1304 |
| BLAKE2s (256-bit key) | 568 | 3.1 | 0.249 | 453 |
| BLAKE2b (512-bit key) | 752 | 2.3 | 0.301 | 548 |
| CRC32 | 435 | 4.0 | ||
| CRC32C | 4258 | 0.4 | ||
| Adler32 | 1316 | 1.3 | ||
| MD5 | 531 | 3.3 | ||
| SHA-1 | 267 | 6.5 | ||
| SHA-256 | 186 | 9.3 | ||
| SHA-512 | 234 | 7.4 | ||
| Keccak-224 | 157 | 11.0 | ||
| Keccak-256 | 149 | 11.7 | ||
| Keccak-384 | 114 | 15.2 | ||
| Keccak-512 | 79 | 22.0 | ||
| SHA3-224 | 157 | 11.0 | ||
| SHA3-256 | 149 | 11.7 | ||
| SHA3-384 | 114 | 15.2 | ||
| SHA3-512 | 79 | 21.9 | ||
| Tiger | 432 | 4.0 | ||
| Whirlpool | 134 | 12.9 | ||
| RIPEMD-160 | 216 | 8.0 | ||
| RIPEMD-320 | 232 | 7.5 | ||
| RIPEMD-128 | 319 | 5.4 | ||
| RIPEMD-256 | 344 | 5.0 | ||
| BLAKE2s | 569 | 3.0 | ||
| BLAKE2b | 753 | 2.3 | ||
| Panama-LE (256-bit key) | 1614 | 1.1 | 0.777 | 1414 |
| Panama-BE (256-bit key) | 685 | 2.5 | 1.428 | 2597 |
| Salsa20 (256-bit key) | 210 | 8.3 | 0.144 | 261 |
| Salsa20/12 | 332 | 5.2 | 0.167 | 303 |
| Salsa20/8 | 471 | 3.7 | 0.166 | 301 |
| ChaCha20 (256-bit key) | 324 | 5.3 | 0.090 | 164 |
| ChaCha12 (256-bit key) | 523 | 3.3 | 0.093 | 169 |
| ChaCha8 (256-bit key) | 712 | 2.4 | 0.092 | 167 |
| Sosemanuk (128-bit key) | 1261 | 1.4 | 0.474 | 863 |
| MARC4 (128-bit key) | 386 | 4.5 | 1.407 | 2558 |
| SEAL-3.0-LE (160-bit key) | 642 | 2.7 | 37.378 | 67990 |
| WAKE-OFB-LE (256-bit key) | 328 | 5.3 | 1.728 | 3143 |
| AES/CTR (128-bit key) | 289 | 6.0 | 0.243 | 443 |
| AES/CTR (192-bit key) | 239 | 7.3 | 0.246 | 447 |
| AES/CTR (256-bit key) | 201 | 8.6 | 0.261 | 476 |
| AES/CBC (128-bit key) | 221 | 7.9 | 0.185 | 336 |
| AES/CBC (192-bit key) | 189 | 9.2 | 0.187 | 341 |
| AES/CBC (256-bit key) | 164 | 10.6 | 0.203 | 370 |
| AES/OFB (128-bit key) | 214 | 8.1 | 0.236 | 430 |
| AES/CFB (128-bit key) | 220 | 7.9 | 0.345 | 627 |
| AES/ECB (128-bit key) | 230 | 7.5 | 0.093 | 168 |
| Camellia/CTR (128-bit key) | 117 | 14.9 | 0.228 | 415 |
| Camellia/CTR (256-bit key) | 92 | 18.9 | 0.252 | 459 |
| Twofish/CTR (128-bit key) | 145 | 12.0 | 2.580 | 4693 |
| Serpent/CTR (128-bit key) | 69 | 25.1 | 0.466 | 848 |
| CAST-256/CTR (128-bit key) | 74 | 23.4 | 1.229 | 2235 |
| RC6/CTR (128-bit key) | 121 | 14.3 | 2.033 | 3699 |
| MARS/CTR (128-bit key) | 83 | 20.9 | 1.508 | 2743 |
| SHACAL-2/CTR (128-bit key) | 114 | 15.2 | 0.311 | 565 |
| SHACAL-2/CTR (512-bit key) | 115 | 15.1 | 0.319 | 581 |
| DES/CTR (64-bit key) | 61 | 28.3 | 2.567 | 4669 |
| DES-XEX3/CTR (192-bit key) | 57 | 30.3 | 2.586 | 4703 |
| DES-EDE3/CTR (192-bit key) | 24 | 73.3 | 8.178 | 14876 |
| IDEA/CTR (128-bit key) | 71 | 24.4 | 0.260 | 473 |
| RC5 (r=16) | 105 | 16.5 | 1.586 | 2885 |
| Blowfish/CTR (128-bit key) | 105 | 16.5 | 36.777 | 66898 |
| TEA/CTR (128-bit key) | 59 | 29.2 | 0.212 | 385 |
| XTEA/CTR (128-bit key) | 58 | 29.8 | 0.212 | 386 |
| CAST-128/CTR (128-bit key) | 83 | 20.9 | 0.344 | 626 |
| SKIPJACK/CTR (80-bit key) | 36 | 48.6 | 1.823 | 3317 |
| SEED/CTR (1/2 K table) | 53 | 32.4 | 0.286 | 520 |
| 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.22 | 0.41 |
| DLIES 1024 Encryption with precomputation | 0.42 | 0.76 |
| DLIES 1024 Decryption | 0.31 | 0.57 |
| 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.54 | 2.80 |
| LUC 2048 Encryption | 0.05 | 0.08 |
| LUC 2048 Decryption | 2.56 | 4.67 |
| DLIES 2048 Encryption | 1.07 | 1.95 |
| DLIES 2048 Encryption with precomputation | 1.22 | 2.22 |
| 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.78 |
| RSA 1024 Signature | 0.34 | 0.62 |
| RSA 1024 Verification | 0.02 | 0.04 |
| RW 1024 Signature | 0.37 | 0.66 |
| RW 1024 Signature with precomputation | 0.37 | 0.67 |
| RW 1024 Verification | 0.01 | 0.02 |
| LUC 1024 Signature | 0.55 | 1.00 |
| LUC 1024 Verification | 0.02 | 0.04 |
| NR 1024 Signature | 0.12 | 0.21 |
| NR 1024 Signature with precomputation | 0.12 | 0.21 |
| 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.14 | 0.25 |
| DSA 1024 Verification with precomputation | 0.18 | 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.13 | 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.09 | 0.17 |
| ESIGN 1536 Verification | 0.03 | 0.06 |
| RSA 2048 Signature | 1.54 | 2.81 |
| RSA 2048 Verification | 0.04 | 0.07 |
| RW 2048 Signature | 1.58 | 2.88 |
| RW 2048 Signature with precomputation | 1.59 | 2.89 |
| RW 2048 Verification | 0.02 | 0.04 |
| LUC 2048 Signature | 2.57 | 4.68 |
| LUC 2048 Verification | 0.04 | 0.08 |
| NR 2048 Signature | 0.54 | 0.99 |
| NR 2048 Signature with precomputation | 0.27 | 0.50 |
| NR 2048 Verification | 0.61 | 1.11 |
| NR 2048 Verification with precomputation | 0.43 | 0.79 |
| LUC-HMP 1024 Signature | 0.49 | 0.90 |
| LUC-HMP 1024 Signature with precomputation | 0.50 | 0.91 |
| LUC-HMP 1024 Verification | 0.50 | 0.91 |
| LUC-HMP 1024 Verification with precomputation | 0.50 | 0.91 |
| ESIGN 2046 Signature | 0.12 | 0.21 |
| ESIGN 2046 Verification | 0.04 | 0.06 |
| XTR-DH 171 Key-Pair Generation | 0.16 | 0.30 |
| XTR-DH 171 Key Agreement | 0.32 | 0.59 |
| XTR-DH 342 Key-Pair Generation | 0.42 | 0.77 |
| 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.22 | 0.39 |
| DH 1024 Key Agreement | 0.31 | 0.56 |
| 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.90 |
| 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.26 | 0.47 |
| 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.12 | 0.21 |
| MQV 1024 Key-Pair Generation with precomputation | 0.11 | 0.21 |
| 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 | 0.99 | 1.79 |
| ECIES over GF(p) 256 Encryption | 1.40 | 2.55 |
| ECIES over GF(p) 256 Encryption with precomputation | 1.18 | 2.15 |
| ECIES over GF(p) 256 Decryption | 0.99 | 1.80 |
| ECDSA over GF(p) 256 Signature | 0.71 | 1.30 |
| ECDSA over GF(p) 256 Signature with precomputation | 0.61 | 1.11 |
| ECDSA over GF(p) 256 Verification | 2.49 | 4.53 |
| ECDSA over GF(p) 256 Verification with precomputation | 1.01 | 1.83 |
| ECDHC over GF(p) 256 Key-Pair Generation | 0.70 | 1.27 |
| ECDHC over GF(p) 256 Key-Pair Generation with precomputation | 0.60 | 1.09 |
| ECDHC over GF(p) 256 Key Agreement | 0.72 | 1.31 |
| 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.48 | 4.51 |
| ECIES over GF(2^n) 233 Encryption | 7.71 | 14.03 |
| ECIES over GF(2^n) 233 Encryption with precomputation | 2.13 | 3.87 |
| ECIES over GF(2^n) 233 Decryption | 4.34 | 7.90 |
| ECDSA over GF(2^n) 233 Signature | 3.88 | 7.07 |
| ECDSA over GF(2^n) 233 Signature with precomputation | 1.09 | 1.98 |
| ECDSA over GF(2^n) 233 Verification | 4.71 | 8.57 |
| ECDSA over GF(2^n) 233 Verification with precomputation | 1.83 | 3.33 |
| ECDHC over GF(2^n) 233 Key-Pair Generation | 3.83 | 6.97 |
| ECDHC over GF(2^n) 233 Key-Pair Generation with precomputation | 1.07 | 1.94 |
| ECDHC over GF(2^n) 233 Key Agreement | 3.90 | 7.09 |
| ECMQVC over GF(2^n) 233 Key-Pair Generation | 3.84 | 6.98 |
| ECMQVC over GF(2^n) 233 Key-Pair Generation with precomputation | 1.06 | 1.93 |
| ECMQVC over GF(2^n) 233 Key Agreement | 4.81 | 8.75 |