Block read/write, 1MB block size, 1GB total, 2GHz Athlon, 40 GB WDC WD400EB-00CPF0
|
|
| read | read | write | write
|
| plain | | plain |
|
| total 26.96 | | total 33.89 |
|
| sys 3.046 | | sys 2.623 |
|
| 37.98 MB/s | | 30.21 MB/s |
|
|
|
| AES-i586-128 | AES-i586-256 | AES-i586-128 | AES-i586-256
|
| total 40.96 | total 43.40 | total 35.15 | total 35.65
|
| sys 3.36 | sys 3.20 | sys 25.21 | sys 11.37
|
| 25.00 MB/s | 23.59 MB/s | 29.13 MB/s | 28.72 MB/s
|
|
|
| Serpent-128 | Serpent-256 | Serpent-128 | Serpent-256
|
| total 47.81 | total 47.69 | total 40.79 | total 40.93
|
| sys 3.37 | sys 3.23 | sys 6.35 | sys 6.18
|
| 21.41 MB/s | 21.47 MB/s | 25.10 MB/s | 25.01 MB/s
|
|
|
| Twofish-128 | Twofish-256 | Twofish-128 | Twofish-256
|
| total 47.70 | total 47.82 | total 42.81 | total 42.90
|
| sys 3.48 | sys 3.37 | sys 12.62 | sys 12.86
|
| 21.46 MB/s | 21.41 MB/s | 23.91 MB/s | 23.86 MB/s
|
|
|
| Blowfish-128 | Blowfish-256 | Blowfish-128 | Blowfish-256
|
| total 53.02 | total 53.18 | total 50.69 | total 50.65
|
| sys 3.43 | sys 3.38 | sys 14.91 | sys 14.91
|
| 19.31 MB/s | 19.26 MB/s | 20.20 MB/s | 20.21 MB/s
|
|
|
| AES-128 | AES-256 | AES-128 | AES-256
|
| total 50.57 | total 59.10 | total 46.49 | total 52.61
|
| sys 3.28 | sys 3.26 | sys 13.99 | sys 15.46
|
| 20.24 MB/s | 17.32 MB/s | 22.02 MB/s | 19.46 MB/s
|
|
|
| DES-64 | 3-DES-192 | DES-64 | 3-DES-192
|
| total 64.65 | total 125.62 | total 68.24 | total 125.48
|
| sys 3.32 | sys 3.53 | sys 18.91 | sys 34.11
|
| 15.84 MB/s | 8.15 MB/s | 15.00 MB/s | 8.16 MB/s
|
Conclusions:
- The speed of Twofish, Blowfish and Serpent is not affected by keysize
- DES and Triple-DES are completely outdated
-
DES is not secure, keys are simply too short
- Assembler-optimized code (AES-i586) really makes a difference
In recent versions of Linux (2.6.8 or newer) AES-i586 has been included.
When compiling for an x86-CPU >=i586 it will be used instead of the default implementation.
Further readings on ciphers:
Twofish
Blowfish
Serpent
AES
(Triple-)DES
The performance of encryption algorithms is greatly affected by hardware details. PowerPCs, SPARCs and even different x86-CPUs will give different results.