OpenSSLのパフォーマンス比較

提供: セキュリティ
2015年11月11日 (水) 00:38時点におけるDaemon (トーク | 投稿記録)による版 (ページの作成:「OpenSSL のパフォーマンスを比較してみました。 '''読み方''' ;OpenSSL:おーぷん えすえすえる __TOC__ == 概要 == opensslには、ベ...」)

(差分) ←前の版 | 最新版 (差分) | 次の版→ (差分)
移動: 案内検索
スポンサーリンク

OpenSSL のパフォーマンスを比較してみました。

読み方

OpenSSL
おーぷん えすえすえる

概要

opensslには、ベンチマークのオプションが実装されています。openssl speed で実行できます。

openssl-1.0.2d vs openssl-0.9.8q sha 256

openssl-0.9.8q は、FreeBSD 9.0-RELEASE にはじめから入っていたバイナリです。 openssl-1.0.2d は、自分でビルドしました。config のオプションは、zlib のみです。 SHA-256 でテストしました。

結論

1.0.2d のほうが 0.9.8qの1.79倍速い結果となりました。

openssl-1.0.2d > openssl-0.9.8q

テスト環境

AMDのCPUの環境でテストを実施しました。

AMD Phenom(tm) II X4 980 Processor (4017.87-MHz K8-class CPU)

ベンチマーク openssl 0.9.8q

% openssl version
OpenSSL 0.9.8q 2 Dec 2010
% which openssl
/usr/bin/openssl
% openssl speed sha256
To get the most accurate results, try to run this
program when this computer is idle.
Doing sha256 for 3s on 16 size blocks: 5324850 sha256's in 3.00s
Doing sha256 for 3s on 64 size blocks: 3231766 sha256's in 3.00s
Doing sha256 for 3s on 256 size blocks: 1478358 sha256's in 3.00s
Doing sha256 for 3s on 1024 size blocks: 466211 sha256's in 3.00s
Doing sha256 for 3s on 8192 size blocks: 63113 sha256's in 3.00s
OpenSSL 0.9.8q 2 Dec 2010
built on: date not available
options:bn(64,64) md2(int) rc4(ptr,int) des(idx,cisc,16,int) aes(partial) blowfish(idx)
compiler: cc
available timing options: USE_TOD HZ=128 [sysconf value]
timing function used: getrusage
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
sha256           28375.34k    68923.07k   126113.99k   159083.83k   172285.95k

ベンチマーク openssl 1.0.2d

% env OPENSSL_CONF=$PWD/apps/openssl.cnf apps/openssl version
OpenSSL 1.0.2d 9 Jul 2015
% env OPENSSL_CONF=$PWD/apps/openssl.cnf apps/openssl speed sha256
Doing sha256 for 3s on 16 size blocks: 9568123 sha256's in 3.00s
Doing sha256 for 3s on 64 size blocks: 5501981 sha256's in 3.00s
Doing sha256 for 3s on 256 size blocks: 2399658 sha256's in 3.00s
Doing sha256 for 3s on 1024 size blocks: 740101 sha256's in 3.01s
Doing sha256 for 3s on 8192 size blocks: 99283 sha256's in 3.00s
OpenSSL 1.0.2d 9 Jul 2015
built on: reproducible build, date unspecified
options:bn(64,64) rc4(8x,int) des(idx,cisc,16,int) aes(partial) idea(int) blowfish(idx)
compiler: cc -I. -I.. -I../include  -DZLIB -DOPENSSL_THREADS -pthread -D_THREAD_SAFE -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
sha256           51029.99k   117375.59k   204770.82k   251964.98k   271108.78k

関連項目




スポンサーリンク