The openssl-speed utility can be used to measure the efficiency of cryptographic hash algorithms. For this purposes of this exercise, no additional flags or switches were added to the command. Strictly running openssl-speed will attempt a speed test on each supported hash algorithm and output the hash algorithm along with the amount of time, block size, and created hashes. The results listed here are for 3 seconds and 16384 block size and sorted by the most efficient algorithm to the least efficient algorithm. The test was run on Ubuntu 18.04 using openssl 1.1. Instructions on installing openssl are not included in this post.
openssl-speed results
Algorithm Time Size Block Results
ghash 3s 16384 1659050
md4 3s 16384 232078
sha1 3s 16384 200056
rc4 3s 16384 156477
md5 3s 16384 142734
hmac(md5) 3s 16384 142276
sha512 3s 16384 113421
sha256 3s 16384 91136
rand 3s 16384 76795
rmd160 3s 16384 55031
camellia-128 cbc 3s 16384 39531
aes-128 cbc 3s 16384 30665
whirlpool 3s 16384 29676
camellia-192 cbc 3s 16384 29533
camellia-256 cbc 3s 16384 29443
aes-128 ige 3s 16384 29297
blowfish cbc 3s 16384 26208
aes-192 cbc 3s 16384 24970
aes-192 ige 3s 16384 24604
cast cbc 3s 16384 21776
aes-256 cbc 3s 16384 21775
aes-256 ige 3s 16384 20769
seed cbc 3s 16384 17956
des cbc 3s 16384 15094
rc2 cbc 3s 16384 10904
des ede3 3s 16384 5639
openssl speed algorithm
You can also specify an algorithm with the key size in some cases. In this example we will compare the speed of rsa2048 with rsa4096.
openssl speed rsa2048
openssl speed rsa4096
As you can see in the output below, the rsa algorithm is much faster with the 2048 bit key than with the 4096 bit key.

Result discussion
The results conclude that the ghash algorithm is the most efficient algorithm supported by the openssl-speed utility. Note that efficiency does not equal security. Additional analysis is necessary to reach a conclusion on the right cryptographic hash algorithm for your use case but for speed concerns, these results should help you.
For additional details on the openssl-speed utility, view the official docs at https://www.openssl.org/docs/man1.1.1/man1/openssl-speed.html

Visit our blog for more content.
Leave a Reply