Skip to main content

OpenSSL

OpenSSL 3.0 is an open-source industry standard transport layer security (TLS, SSL) toolset. The OpenSSL toolset includes a feature/command (openssl speed) that enables measuring the performance of the CPU in processing operations associated with various cryptography/encryption algorithms supported by the toolset (e.g. md5, sha1, sha256, aes-256-cbc).

This toolset was compiled directly from the open source GitHub repo in order to take advantage of 3.0 beta features sets and expanded support for additional cryptography algorithms/operations.

What is Being Measured?

OpenSSL 3.0 is designed to be a very simple benchmarking tool. It produces a set of measurements each testing the performance of the CPU for handling a particular cryptography algorithm across a set of buffer sizes (e.g. 16-byte, 64-byte, 256-byte, 1024-byte, 8192-byte and 16384-byte).

The OpenSSL 3.0 build used by the VC Team runs the following CPU-intensive cryptography algorithm tests:

  • md5
  • sha1
  • sha256
  • sha512
  • hmac(md5)
  • des-ede3
  • aes-128-cbc
  • aes-192-cbc
  • aes-256-cbc
  • camellia-128-cbc
  • camellia-192-cbc
  • camellia-256-cbc
  • ghash

Workload Metrics

The following metrics are examples of those captured by the Virtual Client when running the OpenSSL Speed workload

Metric NameExample Value (min)Example Value (max)Example Value (avg)Unit
aes-128-cbc 1024-byte743221.38779174.02772402.6833333334KB/sec
aes-128-cbc 16-byte480032.11626316.78603386.664074074KB/sec
aes-128-cbc 16384-byte740298.6782401.03777006.7877777778KB/sec
aes-128-cbc 256-byte749001.86769747.19763158.7555555553KB/sec
aes-128-cbc 64-byte674625.69733641.34722047.8648148149KB/sec
aes-128-cbc 8192-byte740819.61782218.46775589.774074074KB/sec
aes-192-cbc 1024-byte636177.93650852.43646747.9537037036KB/sec
aes-192-cbc 16-byte269321.25540298.43510732.25333333338KB/sec
aes-192-cbc 16384-byte639476.94654000.67648852.6892592593KB/sec
aes-192-cbc 256-byte593617.01646267.33637929.6492592595KB/sec
aes-192-cbc 64-byte481352.87620238.22605616.2618518518KB/sec
aes-192-cbc 8192-byte640499.22653473.52649360.9251851852KB/sec
aes-256-cbc 1024-byte552828.37559189.84556096.7766666667KB/sec
aes-256-cbc 16-byte388865.18475468.6458766.4844444445KB/sec
aes-256-cbc 16384-byte550862.69561158.51557790.697037037KB/sec
aes-256-cbc 256-byte545001.23554559.1550489.4881481482KB/sec
aes-256-cbc 64-byte505109.8537577.39529298.1674074074KB/sec
aes-256-cbc 8192-byte555123.57561313.44558133.2844444445KB/sec
camellia-128-cbc 1024-byte196003.0201482.0199902.53814814814KB/sec
camellia-128-cbc 16-byte105480.64107996.46106831.78555555556KB/sec
camellia-128-cbc 16384-byte200965.4204080.29202701.8614814815KB/sec
camellia-128-cbc 256-byte189692.78193900.71192372.28111111115KB/sec
camellia-128-cbc 64-byte163067.16167298.27165350.6937037037KB/sec
camellia-128-cbc 8192-byte200821.95203738.81202458.41037037038KB/sec
camellia-192-cbc 1024-byte140974.7151461.24150052.69518518519KB/sec
camellia-192-cbc 16-byte86760.3191940.1490815.50444444444KB/sec
camellia-192-cbc 16384-byte148271.79152921.37151887.97592592598KB/sec
camellia-192-cbc 256-byte141535.93146474.95145306.7385185185KB/sec
camellia-192-cbc 64-byte127530.59131539.45130329.48555555556KB/sec
camellia-192-cbc 8192-byte144049.0152806.81151590.18555555555KB/sec
camellia-256-cbc 1024-byte149437.01151431.51150464.56666666666KB/sec
camellia-256-cbc 16-byte86338.1391581.6990527.69074074074KB/sec
camellia-256-cbc 16384-byte151277.78152956.65152096.0588888889KB/sec
camellia-256-cbc 256-byte144450.91146459.27145471.35148148149KB/sec
camellia-256-cbc 64-byte128175.52131470.9130429.96370370372KB/sec
camellia-256-cbc 8192-byte151075.06152811.4151938.33925925927KB/sec
des-ede3 1024-byte28783.829329.4429133.498518518514KB/sec
des-ede3 16-byte27667.1428270.5628057.690000000006KB/sec
des-ede3 16384-byte28889.0529438.3229209.654074074075KB/sec
des-ede3 256-byte28600.6529292.0429067.913333333334KB/sec
des-ede3 64-byte28374.7728995.7528784.202222222222KB/sec
des-ede3 8192-byte28872.6329430.9229197.996296296296KB/sec
md5 1024-byte541071.68562370.84557335.1180555555KB/sec
md5 16-byte41051.0544687.5844036.971388888895KB/sec
md5 16384-byte669983.67686605.66681825.9061111112KB/sec
md5 256-byte343673.88355983.55353118.2319444444KB/sec
md5 64-byte135846.31144694.23142455.1908333333KB/sec
md5 8192-byte659610.64675423.13670087.9744444445KB/sec
sha1 1024-byte518003.89720021.42709253.8599999999KB/sec
sha1 16-byte17825.0244057.0643025.363611111105KB/sec
sha1 16384-byte863560.56953382.3941411.4713888889KB/sec
sha1 256-byte217097.77400824.59392850.8069444444KB/sec
sha1 64-byte65566.0145517.68141894.745KB/sec
sha1 8192-byte869517.29934553.17925201.5333333333KB/sec
sha256 1024-byte310838.3374676.53367162.79472222217KB/sec
sha256 16-byte16463.9236128.9234169.54055555556KB/sec
sha256 16384-byte422172.75441639.53437536.81305555559KB/sec
sha256 256-byte164815.16250462.04241373.8311111111KB/sec
sha256 64-byte56583.42106414.3101591.33805555555KB/sec
sha256 8192-byte408205.29435258.14431032.23138888887KB/sec
sha512 1024-byte385470.51486102.23479484.17851851848KB/sec
sha512 16-byte14926.3429452.8328693.511851851854KB/sec
sha512 16384-byte632075.77648555.6643126.89KB/sec
sha512 256-byte172639.93271882.98266164.3025925926KB/sec
sha512 64-byte59402.31117240.32114292.82444444442KB/sec
sha512 8192-byte606058.11634570.56629781.2355555556KB/sec