暗号鍵関連の各種変数について

no extension

ECDSA鍵をGitHubで使う方法」で SP 800-57 第一部が Rev.4 になってるのを見て一瞬「ふぁ!」となったが,よく考えたら今年始めに書いた「最初の SHA-1 衝突例」では既に Rev.4 を参照していたのだった。 でも古い記事を見返したら結構 Rev.3 のままになってるので,このさい全部アップデートすることにした。

この記事は将来の記事で再利用するための snippet 置き場として使うことにする。 表のレイアウトの関係で携帯端末で見ている人は見づらいかもしれないけど,そこはご容赦。

【2020-06-07】 SP 800-57 第一部 の Rev.5 の最終版がリリースされていたので,以降 Rev.5 をベースに書き換えた。

参照資料

ここで参照する資料は,米国 NIST の Special Publication (SP) 800-57 Part 1 で正式タイトルは「Recommendation for Key Management Part 1: General (鍵管理における推奨事項 第一部:一般事項)」となっている(日本語訳は IPA によるもの)。

なお,ひとつ前の Rev.4 については IPA による日本語訳 があるので参考にどうぞ。

セキュリティ強度と鍵長の関係

最初はセキュリティ強度と鍵長の関係を示す表。 単位は全てビットである。

Security
Strength
Symmetric
key
algorithms
FFC
(DSA, DH,
MQV)
IFC
(RSA)
ECC
(ECDSA,
EdDSA, DH,
MQV)
80 2TDEA L=1024
N=160
k=1024 f=160 - 223
112 3TDEA L=2048
N=224
k=2048 f=224 - 255
128 AES-128 L=3072
N=256
k=3072 f=256 - 383
192 AES-192 L=7680
N=384
k=7680 f=384 - 511
256 AES-256 L=15360
N=512
k=15360f=512+
Comparable security strengths of symmetric block cipher and asymmetric-key algorithms (via SP 800-57 Part 1 Revision 5 5.6.1.1)

Symmetric key algorithms は共通鍵暗号アルゴリズム全般を指す。 たとえば AES とか。 IFC (Integer Factorization Cryptosystems) は素因数分解問題ベースの公開鍵暗号アルゴリズムで RSA がこれに該当する。 FFC (Finite Field Cryptosystems) は離散対数問題ベースの公開鍵暗号アルゴリズムで Diffie-Hellman や ElGamal, DSA などがこれに該当する。 ECC (Elliptic Curve Cryptosystems) は離散対数問題でも特に楕円曲線上の離散対数問題ベースの公開鍵暗号アルゴリズムを指す。 たとえば ECDH や ECDSA など。

IFC では k,FFC では L,ECC では f が鍵長を示す。 たとえばセキュリティ強度が128ビットなら

  • AES 128bit
  • ElGamal, DSA 3072bit
  • RSA 3072bit
  • ECDH, ECDSA 256bit

の組み合わせで「ベストマッチ キター!」となる。

セキュリティ強度と Hash 関数の関係

次はセキュリティ強度とHash 関数の関係を示す表。

Security
Strength
Digital Signatures and Other
Applications Requiring Collision
Resistance
HMAC, KMAC,
Key Derivation Functions,
Random Bit Generation
80 SHA-1  
112 SHA-224, SHA-512/224, SHA3-224  
128 SHA-256, SHA-512/256, SHA3-256 SHA-1, KMAC128
192 SHA-384, SHA3-384 SHA-224, SHA-512/224, SHA3-224
256 SHA-512, SHA3-512 SHA-256, SHA-512/256, SHA-384, SHA-512, SHA3-256, SHA3-384, SHA3-512, KMAC256
Maximum security strengths for hash and hash-based functions (via SP 800-57 Part 1 Revision 5 5.6.1.2)

考え方は先程の暗号鍵長のときと同じ。 ただし Hash 関数の場合は使用目的ごとに要求されるアルゴリズムが異なるので注意が必要である。

セキュリティ強度と有効期限

こちらはセキュリティ強度の有効期限を表したものだ。

Security Strength Through
2030
2031 and
Beyond
<112Applying Disallowed
Processing Legacy use
112 Applying AcceptableDisallowed
Processing Legacy use
128 Applying/ProcessingAcceptableAcceptable
192 AcceptableAcceptable
256 AcceptableAcceptable
Security-strength time frames (via SP 800-57 Part 1 Revision 5 5.6.3)

各用語はそれぞれ

用語 意味
Applying 適用
Processing 処理
Acceptable 許容
Legacy use 許容(レガシー使用のみ)
Disallowed 禁止

という意味だ。 例を挙げると,セキュリティ強度112ビットの暗号スイート(Cipher Suites)を適用する場合は2030年までは許容するけど2031年以降は禁止。 すでに暗号化されているデータを復号したい場合でも2031年以降はレガシー・システムしか許容しない,ということになる。

たとえば ssh 認証は「適用」なので,いまだ多くの人が使ってる(かもしれない) RSA 2048ビットの鍵は2031年以降は使用禁止となるわけだ。 まぁ,そんな先まで同じシステムで同じ鍵を使い続けるかどうかは分からないが(なので今使ってる鍵を慌てて新調する必要はない。新規に作成するなら128ビット強度の鍵をお勧めするが)。

なお,これは各アルゴリズムに危殆化要因となる脆弱性等がない場合の話である。 したがって暗号製品を使うシステムの管理者やセキュリティ管理者は常に暗号関係のトピックに耳を澄ませておくべきであろう。

OpenPGP で利用可能なアルゴリズム

この項は「OpenPGP で利用可能なアルゴリズム」に移動した。

パスワードの強度

これは NIST ではなく IPA の資料だが,文字種と文字数の組み合わせによるパスワードの強度についても上げておこう。 出典は以下。


利用する文字種類数と内訳 パスワード長
種類数 数字 文字 シンボル 4文字 8文字 12文字 16文字
10種0-9なしなし1円未満
213.3
1円未満
226.6
約35円
239.9
約35万円
253.2
36種0-9a-zなし1円未満
220.7
約100円
241.4
約1.65億円
262.0
約276兆円
282.7
62種0-9a-z
A-Z
なし1円未満
223.8
約7,500円
247.6
約1,120億円
271.5
約165京円
295.3
94種0-9a-z
A-Z
! " # $ %
& ' ( ) =
~ | - ^ `
¥ { @ [
+ * ] ; :
} < > ? _
, . /
1円未満
226.2
約21万円
252.4
約16.5兆円
278.7
約129,000京円
2104.9
パスワード解読の想定コスト例(情報漏えいを防ぐためのモバイルデバイス等設定マニュアル 解説編 2.4.2.2項より)

測定基準は以下の通り。

利用できる文字種類すべてを完全にランダムに選択して作ったパスワードを一つ一つ調べる全数探索により1日で解読しようとした際にかかるおおまかな想定攻撃コストを示しています。ここでは、全数探索(暗号鍵の総数256)でDES10を1日で解読するためのコストを約250万円と仮定します。また、パスワードを1つ検査するのとDESの暗号鍵を1つ検査するコストは同じであるとし、パスワードを求めるのに必要な計算量(検査する個数)が半分になればコストも半分、2倍になればコストも2倍になるものとしています。
情報漏えいを防ぐためのモバイルデバイス等設定マニュアル 解説編 2.4.2.2項より

ブックマーク

参考図書

photo
暗号技術入門 第3版 秘密の国のアリス
結城 浩 (著)
SBクリエイティブ 2015-08-25 (Release 2015-09-17)
Kindle版
B015643CPE (ASIN)
評価     

SHA-3 や Bitcoin/Blockchain など新しい知見や技術要素を大幅追加。暗号技術を使うだけならこれ1冊でとりあえず無問題。

reviewed by Spiegel on 2015-09-20 (powered by PA-APIv5)

photo
暗号化 プライバシーを救った反乱者たち
スティーブン・レビー (著), 斉藤 隆央 (翻訳)
紀伊國屋書店 2002-02-16
単行本
4314009071 (ASIN), 9784314009072 (EAN), 4314009071 (ISBN)
評価     

20世紀末,暗号技術の世界で何があったのか。知りたかったらこちらを読むべし!

reviewed by Spiegel on 2015-03-09 (powered by PA-APIv5)