Comments
Description
Transcript
特別講演 暗号2010年問題(神田 雅透 講師)
1 暗号技術の最新動向 ~ 暗号をめぐる2010年問題 ~ 2006年8月22日 日本電信電話株式会社 情報流通プラットフォーム研究所 神田 雅透 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 2 本日の話題 暗号技術の基礎 「暗号が安全」とはどういうことを指すのか 暗号をめぐる2010年問題 「暗号技術の2010年問題」の本質は何か 暗号標準化の国際的動向 2010年以降のデファクト暗号は 暗号製品に関する国際的認証制度 CC認証とCMVP認証 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 1 3 暗号技術の基礎 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 4 セキュリティ技術とは あらゆる脅威から「C. I. A.」を確保する技術 災害リスク 物理的セキュリティ対策 システム障害リスク 人為的ミスによる障害リスク 情報セキュリティ対策 人為的不正行為リスク 基盤技術としての「暗号技術」 機密性と完全性の確保 Confidentiality(機密性): 権限のない第三者から情報を秘匿 Integrity(完全性): 情報が改竄されていないこと(原本性)を保証 Availability(可用性): 権限を有するものはいつでも情報にアクセス可能 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 2 5 暗号技術の分類 送信者と受信者が同じ鍵を利用する方式 (秘匿性) 共通鍵暗号 (完全性) メッセージ認証子 送信者と受信者が異なる鍵を利用する方式 (秘匿性) 公開鍵暗号 (完全性) デジタル署名 暗号技術を使うための補助的役割を果たすために ハッシュ関数 擬似乱数生成器・(真性)乱数生成器 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 6 共通鍵暗号 #1 同じ鍵を利用して暗号文の生成・復号を行う 平文(メッセージ)空間 平文 1 復号鍵 (秘密) 暗号化 暗号文 鍵 暗号文 01 かわ 02 うみ 03 こだま 秘密鍵ごとに異なる 第三者には未知の乱数表 復号 暗号化鍵 (秘密) 平文 やま A 暗号文空間 共通鍵暗号アルゴリズムは 効率的に乱数表を作るため の演算手法 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 3 7 共通鍵暗号 #2 ブロック暗号(AES, Camellia, Triple DES, MISTY1) 一定長のブロックに分割、各ブロックを暗号化 秘密鍵 (鍵長128ビット以上) 平文 暗号文 段関数 段関数 段関数 段関数 段関数 段関数 ブロック長 64-bit: 64ビットブロック暗号 128-bit: 128ビットブロック暗号 副鍵 副鍵生成部 データ撹拌部 ここに安全性の根拠を置く ストリーム暗号(RC4, Panama, MUGI) 擬似乱数系列によってビット単位で暗号化 秘密鍵 (鍵長128ビット以上) ここに安全性の根拠を置く 擬似乱数生成器 平文 暗号文 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 8 メッセージ認証子(ブロック暗号ベース) 同じ秘密鍵を利用してメッセージの正当性を検証 メッセージ 通信路 MAC生成 MAC生成 秘密鍵 秘密鍵 一致? ブロック 暗号 ブロック 暗号 ブロック 暗号 ブロック 暗号 ブロック 暗号 メッセージ認証子 メッセージ 一定ルールに基づく パディング 秘密鍵 秘密鍵 秘密鍵 20060822 情報セキュリティ人材育成公開講座@中央大 秘密鍵 秘密鍵 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 4 9 共通鍵暗号の安全性 仕様によって決まる安全性=安全性の上限 鍵全数探索攻撃への耐性 秘密鍵を一つずつチェックする攻撃法 鍵長に依存 誕生日攻撃への耐性(ブロック暗号のみ) ランダムに集めた暗号文が一致する(=平文が同じ)ことを利用する攻撃法 ブロック長に依存 アルゴリズムの出来によって決まる安全性 ショートカット攻撃への耐性 一般に、いい(強い)/ 悪い(弱い)暗号という 場合には、この意味で の安全性を指す 鍵全数探索攻撃よりも効率的に秘密鍵を求める攻撃法 攻撃者が多量の平文・暗号文の組を入手 将来予測への攻撃への耐性(ストリーム暗号のみ) 過去(既知)の鍵系列から将来(未知)の鍵系列を求める攻撃法 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 10 ブロック暗号の安全性評価例 安全性が高い 鍵長128ビットの128ビットブロック 暗号が安全であるときの状態 (例:AESやCamellia) 168 3-key Triple DES 128 解読計算量(log2) 鍵全数探索攻撃による鍵長 128ビットのときの解読計算量 (設計上期待される安全性) 鍵長128ビットの64ビットブロック 暗号が安全であるときの状態 (例:MISTY1) 112 100 中間一致攻撃による解読 80 解読攻撃が成功した暗号は、 平文・暗号文の組数によって解 読計算量が変わる (右肩下がりになる) 2-key Triple DES 64 56 40 鍵全数探索攻撃による鍵長64ビット のときの解読計算量 Oorschot&Wienerによる解読 DES 線形解読法による解読 64ビットブロック暗号が 生成できる組数の最大値 鍵全数探索攻撃による DESの解読計算量 (1999年時点で、22時間 15分で解読に成功) 128ビットブロック暗号が 生成できる組数の最大値 差分解読法による解読 0 0 64 攻撃に必要となる平文・暗号文の組数(log2) 20060822 情報セキュリティ人材育成公開講座@中央大 128 鍵全数探索攻撃による鍵長 40ビットのときの解読計算量 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 5 11 公開鍵暗号 異なる鍵を利用して暗号文の生成・復号を行う 計算に必要な値が すべて公開 復号鍵を持っている 場合に限り容易に 計算可能 平文 平文 暗号化鍵 (公開) 暗号化鍵から 復号鍵を求める ことが困難 復号 暗号化 誰もが容易に 計算可能 復号鍵 (秘密) 暗号化 計算に必要な値が 秘密になっている 暗号文 復号 暗号文 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 12 デジタル署名 異なる鍵を利用してメッセージと署名者の正当性を保証 平文 ハッシュ関数 ダイジェスト 計算に必要な値が 秘密になっている 平文 誰もが容易に 検証可能 平文と署名が正しい 関係にあるかを確認 するのに必要な値が すべて公開 署名 検証 検証 署名鍵 (秘密) 検証鍵 (公開) 署名 復号鍵を持って いる場合に限り 容易に計算可能 True/False 署名 検証鍵から署名鍵 を求めることが困難 20060822 情報セキュリティ人材育成公開講座@中央大 署名 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 6 13 公開鍵暗号とデジタル署名の安全性 #1 公開鍵から秘密鍵を算出することは困難 数学的未解決問題に安全性の根拠 素因数分解問題困難性(RSA) n = pq ( p, q ) : 素数 n 有限体上の離散対数問題困難性(ElGamal, DSA) z = g x (mod p) (z, g , p ) x 楕円曲線上の離散対数問題困難性(PSEC-KEM, ECDSA) Q = [k ]P (on E ) (Q, P, E ) k ナップザック問題困難性 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 14 公開鍵暗号とデジタル署名の安全性 #2 定性的な安全性 「根拠となる数学的未解決問題の困難性との等価性」を指す 公開鍵暗号/デジタル署名が破れる ⇔ 数学的未解決問題が解ける 「証明可能安全性」もこの延長線上 低 強秘匿性 (IND) 頑強性 (NM) OW-CPA IND-CPA NM-CPA CCA1 OW-CCA1 IND-CCA1 NM-CCA1 CCA2 OW-CCA2 IND-CCA2 NM-CCA2 受動的攻撃 (CPA) 能動的 攻撃 (CCA) 潜在的 偽造不可 受動的攻撃 高 高 選択的 偽造不可 高 低 能動的攻撃 攻撃力 一方向性 (OW) 安全性レベル 一般的 偽造不可 攻撃力 低 低 高 安全性レベル 公開鍵暗号の安全性 20060822 情報セキュリティ人材育成公開講座@中央大 既知メッセージ 攻撃 選択メッセージ 攻撃 適応的選択 メッセージ攻撃 デジタル署名の安全性 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 7 15 公開鍵暗号とデジタル署名の安全性 #3 定量的な安全性 計算機能力だけに依存して数学的未解決問題が解けない 必要な鍵長 3500 3000 参考文献: A.K.Lenstra,E.Verhaul "Selecting cryptographic key sizes" Proc. PKC 2000 R.P.Brent "Recent progress and prospects for integer factorization algorithm" ,Proc. COCOON 2000 RSAが安全と 期待される鍵長 2500 一般数体ふるい法により素因数分解 されたビット数 2000 特殊数体ふるい法により素因数分解 されたビット数 1500 1000 809 822 753 500 576 512 524 530 911 素因数分解が可能と される鍵長 663 582 0 1990 1995 2000 2005 2010 2015 2020 2025 2030 2035 2040 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 16 ハッシュ関数 #1 任意長のメッセージを一定長のダイジェストに写像 メッセージ空間よりもダイジェスト空間のほうが小さいので、理 論上必ず衝突が起こる(この点が暗号と異なる) SHA-1:メッセージ空間 2512 ⇒ ダイジェスト空間 2160 メッセージ空間 M7 M4 M2 M1 M0 M8 Db Da M9 M3 M5 M6 Dd Dc De ダイジェスト空間 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 8 17 ハッシュ関数 #2 一方向性-1 (Preimage Resistance) ダイジェストからもとのメッセージ(の候補)が導き出せない Message Digest value 一方向性-2 (Second Preimage Resistance) 特定のダイジェストに一致する別メッセージを作り出せない Message 1 Digest value Message 2 衝突困難性・非衝突性 (Collision-free/resistance) 同じダイジェストになる異なるメッセージ組を作り出せない Message 1 Digest value Message 2 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 18 ハッシュ関数の安全性 #1 仕様によって決まる安全性=安全性の上限 全数探索的攻撃への耐性(→一方向性) メッセージを一つずつチェックする攻撃法 ハッシュ長に依存 誕生日攻撃への耐性(→衝突困難性) ランダムに集めたメッセージのダイジェストが一致すること を利用する攻撃法 「ハッシュ長/2」に依存 アルゴリズムの出来によって決まる安全性 一般に、いい(強い)/ 悪い(弱い)ハッシュ関数 という場合には、この 意味での安全性を指す ショートカット攻撃への耐性 誕生日攻撃よりも効率的に衝突するメッセージ組を求める 攻撃法 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 9 19 ハッシュ関数の安全性 #2 「衝突困難性」に脆弱性が見つかると 同じダイジェストになるような異なるメッセージ組を作り出せる 改竄検知が不可能となるような情報を意図的に二つ生成できる 状態となる(例:デジタル署名の偽造が可能) ******************** CONTRACT ******************** CONTRACT At the price of $176,495 Alf Blowfish sells his house to Ann Bonidea. … At the price of $176,495 Alf Blowfish sells his house to Ann Bonidea. … 印 ******************** CONTRACT ******************** CONTRACT ******************** CONTRACT At the price of $276,495 Alf Blowfish sells his house to Ann Bonidea. … At the price of $276,495 Alf Blowfish sells his house to Ann Bonidea. … At the price of $276,495 Alf Blowfish sells his house to Ann Bonidea. … 印 印 同じダイジェストになる 2つの文書を作成 偽造文書への すり替え 参考文献:Dobbertin, “Cryptanalysis of MD4,” Journal of Cryptology, Vol. 11 No. 4 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 20 ハッシュ関数の安全性 #3 衝突させるように作られた乱数を制御部の分岐条件に することで別メッセージを出力 制御部 メッセージA メッセージB x R1 If R1 メッセージAを 出力 x R2 If R1 メッセージBを 出力 条件分岐式 ハッシュの衝突 h(x|R1) = h(x|R2) 条件分岐用の乱数 参考文献: Daum and Lucks, “Attacking Hash Functions by Poisoned Messages "The Story of Alice and her Boss",” Presented at the rump session of EUROCRYPT ’05, 2005 Max Gebhardt, Georg Illies, and Werner Schindler, “A Note on the Practical Value of Single Hash Collisions for Special File Formats,” Proceedings of Cryptographic Hash Workshop 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 10 21 「暗号が破れた」とは 共通鍵暗号 鍵全数探索攻撃よりも効率的に秘密鍵を求められる攻撃法 が発見される 公開鍵暗号・デジタル署名 根拠となる数学的問題困難性と等価ではないことが示される ハッシュ関数 誕生日攻撃よりも効率的にハッシュ値が一致する異なる2つの メッセージを作り出すことが出来る 個別のアルゴリズムが仕様上の安全性上限を満たさないこと 【2010年問題の本質】 そもそも安全の上限が十分/妥当なのか? (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 22 計算機を回せば現在どこまで解けるのか #1 必要な暗号解読時間を求めるときの攻撃方法 (設計者にとっては最良、攻撃者にとっては最悪の攻撃方法) 正解 KS 共通鍵暗号 KS 全数探索攻撃 鍵全数探索法 公開鍵暗号・デジタル署名 [素因数分解] 数体ふるい法 [離散対数] 指数計算法 鍵を一つずつ検査 正解 KS KS [ECC] ρ法 KS 誕生日攻撃 全数探索以外の攻撃 ハッシュ関数 誕生日攻撃 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 KS 不 5 これらの攻撃法で暗号が解けると 実用的にも安全性に問題あり 13 11 19 3 23 29 KS 7 正解 6 8 18 9 15 24 17 25 26 27 21 12 10 4 228 14 16 0 20 122 2k-1 不正解の鍵は検査しない 20060822 情報セキュリティ人材育成公開講座@中央大 2k-1 4 KS 22 16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 2k-1 ランダムに選択したなかに 同じものが含まれるか (c)日本電信電話株式会社 情報流通プラットフォーム研究所 11 23 計算機を回せば現在どこまで解けるのか #2 共通鍵暗号 DES Challenge 140日('97/6)⇒ 40日('98/2)⇒ 56時間('98/7)⇒ 22時間15分('99/1) Symmetric key Challenge – RC5 challenge 40-bit('97/1; 3.5時間) ⇒ 48-bit('97/2; 313時間) ⇒ 56-bit('97/10; 265日) ⇒ 64-bit('02/7; 1757日) 公開鍵暗号・デジタル署名 一般数体ふるい法による素因数分解 512-bit('99/8) ⇒ 524-bit('02/1) ⇒ 530-bit('03/4) ⇒ 576-bit('03/12) ⇒ 582-bit('05/5) ⇒ 663-bit('05/5) 特殊数体ふるい法による素因数分解 753-bit('00/11)⇒ 809-bit('03/1)⇒ 822-bit('04/4)⇒ 911-bit (’06/1) (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 24 等価安全性 異なる暗号技術の安全性を同一尺度で判断する手法 安全性は、鍵長・ハッシュ長ではなく、等価安全性で決まる 仕様上の安全性の上限は「最良の攻撃法」によって決まる 最良の攻撃法よりも効果的な攻撃法が発見された暗号技術 は、期待された等価安全性が担保されない (例)鍵長168ビット Triple DES ⇒ 112ビット安全性 期待される安全性 (等価安全性)の上限 最良の攻撃法 (解読成功鍵長) 公開鍵暗号・デジタル署名[鍵長] 素因数分解 離散対数 楕円曲線 共通鍵暗号 [鍵長] ハッシュ関数 [ハッシュ長] 数体ふるい法 (663 bit) 指数計算法 (607 bit) ρ法 (109 bit) 鍵全数探索法 (64 bit) 誕生日攻撃 (Unknown) 80ビット安全性 1024 bit 1024 bit 160 bit 80 bit 160 bit 112ビット安全性 2048 bit 2048 bit 224 bit 112 bit 224 bit 128ビット安全性 3072 bit 3072 bit 256 bit 128 bit 256 bit 192ビット安全性 7680 bit 7680 bit 384 bit 192 bit 384 bit 256ビット安全性 15360 bit 15360 bit 512 bit 256 bit 512 bit 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 12 25 暗号をめぐる2010年問題 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 26 2010年問題とは 2010年を境にしたデファクト暗号技術の総入れ替え 米国政府標準暗号の移行計画宣言が大きく影響 2010年末までに次期米国政府標準暗号へ移行 現在のデファクト暗号の多くは“米国政府標準暗号”という お墨付きを失う 共通鍵 暗号 DES 2-key Triple DES 3-key Triple DES AES デジタル RSA 署名 DSA ECDSA ハッシュ 関数 05年5月廃止 05年5月推奨暗号に格下げ。10年末で廃止 05年5月推奨暗号に格下げ 05年5月米国政府標準暗号として一本化 鍵長1024ビットについて認証用途は10年末、 署名用途は08年末(検証は10年末)で廃止 新仕様の作成中 鍵長160ビットについて認証用途は10年末、 署名用途は08年末(検証は10年末)で廃止 SHA-1 10年末で廃止 SHA-2(SHA-224/256/384/512) 次期米国政府標準ハッシュ関数との位置づけ 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 13 27 なぜ移行しようと考えたのか 現在のデファクト暗号に対する安全性低下の深刻化 等価安全性からみた安全性バランスの不均衡是正 公開鍵暗号・デジタル署名[鍵長] 等価安全性 離散対数 素因数分解 共通鍵暗号 [鍵長] 楕円曲線 56ビット安全性 ハッシュ関数 [ハッシュ長] DES SHA-1 64ビット安全性 80ビット安全性 RSA-1024 DSA-1024 ECDSA-160 2key TDES SHA-1 112ビット安全性 RSA-2048 DSA-2048 ECDSA-224 3key TDES SHA-224 128ビット安全性 RSA-3072 DSA-3072 ECDSA-256 AES-128 SHA-256 192ビット安全性 RSA-7680 DSA-7680 ECDSA-384 AES-192 SHA-384 256ビット安全性 RSA-15360 DSA-15360 ECDSA-512 AES-256 SHA-512 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 28 FIPS移行タイムスケジュール 2010年末までに112ビット安全性以上の暗号技術へ 2005 2006 2007 2008 2009 2010 共通鍵暗号 ハッシュ関数 2-key Triple DES (2DES):政府標準から政府推奨に格下げ 3-key Triple DES (3DES) :政府標準から政府推奨に格下げ 移行 2012 2013 運用終了 AES 運用終了 SHA-1 移行 2011 SHA-224/256/384/512 + 新ハッシュ関数? 署名生成での運用終了 署名・ 認証 1024-bit RSA署名/DSA 署名検証・認証での運用終了 160-bit ECDSA 移行 2048-/3072-bit RSA署名/DSA 256-/283-bit ECDSA 鍵配送・ 鍵共有 1024-bit RSA暗号/DH法 運用終了 160-bit ECDH法/ECC-MQV法 移行 2048-/3072-bit RSA暗号/DH法 256-/283-bit ECDH法/ECMQV法 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 14 29 次世代暗号とは -共通鍵暗号- キーワードは「より安全で、より処理性能が高い“新しい” アルゴリズムへ」 64ビットブロック暗号から128ビットブロック暗号への移行 米国:AESに政府標準暗号を一本化 Triple DESは政府標準暗号から政府推奨暗号へ格下げ 欧州:128ビットブロック暗号がNormal 日本:より長いブロック長の暗号を選択することが望ましい ブロック長 鍵長 代表例 ブロック長 鍵長 64ビット ブロック暗号 64 bit 56/64/112/ 128/168 bit DES/Triple DES, MISTY1, FEAL 平文 秘密鍵 128ビット ブロック暗号 128 bit 128/192/256 bit AES, Camellia, SEED 64ビットブロック暗号より安全性が高い ブロック暗号 暗号文 暗号文を利用する攻撃法に対する安全性向上 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 30 次世代暗号とは -公開鍵暗号- キーワードは「より安全にするためにアルゴリズムで使う 鍵長を“より長く”」 素因数分解系:鍵長1024ビット ⇒ 2048ビット以上 離散対数系 :鍵長1024ビット ⇒ 2048ビット以上 楕円曲線系 :鍵長160ビット ⇒ 224ビット以上 問題は「処理性能が低下する可能性が極めて高い」 RSAやDSAでは必要鍵長が長すぎて実用に耐えないかも 楕円曲線系の高速実装は、特許抵触リスクが高くので、使い にくいかも 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 15 31 次世代暗号とは -ハッシュ関数- キーワードは「安全性確保のために “緊急避難的に”とり あえずSHA-2へ」 SHA-1 ⇒ SHA-256 (SHA-224/384/512) 問題は「SHA-2の安全性の懸念が払拭できているわけ ではないが、SHA-1のままで新しい安全なハッシュ関数 が出来るまでも待てない」 10年以内にはSHA-2の衝突例が見つかるかもしれない でも、それよりはるかに早くSHA-1の衝突例が実際に見つかるだろう ということで、新しい安全なハッシュ関数を決めるコンテストを します(たぶん) でも、コンテストで決めた新しいハッシュ関数が市場に出てくるのは早く ても10年ぐらい先の話・・・ (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 32 Advanced Hash Standard (AHS) SHA-1/2に替わる高度標準ハッシュ関数 AESコンテストと同じような形式で選定する計画案 2006 2007 NIST workshop 2008 2009 公募 2010 2011 第1次評価 第2次評価 2012 2013 新ハッシュ関数発行 新ハッシュ関数は1個ないし数個が選定 あらゆる条件を満たすもの1個を選定(汎用的なハッシュ関数) 特定の要求条件ごとに1個ずつ選定(目的別のハッシュ関数) 具体的要求条件が出てくるのは2008年になってから 特許に関してはおそらく無償実施許諾を要求 すべては 8/24-25 のHash Workshopの議論次第 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 16 33 暗号標準化の国際的動向 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 34 暗号の国際標準といえば 今までは暗号の国際標準といえば“米国政府標準暗号” とほぼ同義 以前は「武器」 扱い&厳格な輸出管理(輸出規制) ⇒ 「標準化対象外(署名のみ標準化対象)」 公的機関が安全性のお墨付きを与えていたのは米国だけ 後は、実質的に輸出規制に対抗するための暗号 2000年以降、暗号技術の国際標準化が進展 1997年に始まったAESプロジェクトの成功が実質的な契機 インターネットの普及に伴う暗号技術の「社会的基盤化」 ⇒ 「標準化の対象」 日本・欧州でも安全な暗号技術の推奨規格を選定 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 17 35 暗号技術選定プロジェクト AESプロジェクト(1997.1 – 2000.10) 新米国政府標準暗号選定プロジェクト 米国商務省技術標準局(NIST)が実施 NESSIEプロジェクト(2000.1 – 2003.3) 暗号に関する欧州の産業力向上などを目的とした強力な欧州 連合推奨暗号選定プロジェクト 欧州連合の情報社会プログラム第5次R&D計画の一環 CRYPTRECプロジェクト(一期2000.5 – 2003.3) 電子政府用調達暗号推奨リスト作成プロジェクト E-Japan重点計画の総務省・経済産業省施策の一環 総務省・経済産業省(事務局:IPA, TAO)が主体となり実施 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 36 暗号の位置付けが変化 1985 1990 1995 2000 2005 武器とみなされていた時代 社会的基盤技術 (規制対象)⇒⇒⇒(暗号乱立時代) (標準化対象) 暗号登録制度(ISO/IEC9979) 廃止 暗号はISO国際標準対象外 DES安全性低下 方針転換 影響 AESプロジェクト(米) ISO/IEC国際標準暗号 (ISO/IEC18033) 米国政府標準暗号AES NESSIEプロジェクト(欧) CRYPTREC(日) 影響 各種インターネット規格化 IETFによるインターネット標準暗号 20060822 情報セキュリティ人材育成公開講座@中央大 欧州連合推奨暗号 電子政府推奨暗号 次世代インターネット 標準暗号の追加 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 18 37 暗号標準化の相関 米国政府標準以外にも国際標準・推奨暗号が出来た 共通鍵暗号 公開鍵暗号 デジタル署名 ハッシュ関数 対象外 対象外 対象 対象 対象 対象 ※選定なし 対象 対象 対象 電子政府推奨 対象 対象 対象 対象 対象 ISO/IEC国際 標準 18033-3 18033-4 18033-2 9796 14888 15946 10118 IETFインター ネット標準 次世代暗号 追加 変化なし 変化なし 検討WG発足 ブロック暗号 ストリーム暗号 米国政府標準 対象 欧州連合推奨 9979は廃止 変化なし AES(米国政府標準)、Camellia(NTT/三菱電機)、 SEED(韓国政府標準)の追加 SHA-256の追加指令 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 38 共通鍵暗号の標準化状況 米国政府標準・推奨暗号 FIPS 197 AES 128ビット ブロック 暗号 欧州連合推奨暗号 ISO/IEC国際標準暗号 インターネット標準暗号 AES Camellia AES Camellia ISO/IEC 18033-3 AES Camellia SEED AES Camellia SEED ISO/IEC 18033-3 Triple DES Triple DES CIPHERUNICRON-A Hierocrypt-3 SC2000 FIPS 185, SP 800-67 Triple DES 64ビット ブロック 暗号 電子政府推奨暗号(1) 3-key Triple DES(*3,*4) MISTY1(*3) Skipjack ストリーム (推奨なし) 暗号 MISTY1 MISTY1 CAST-128 CAST-128 RC2 RC5 IDEA CIPHERUNICORN-E(*3) Hierocrypt-L1(*3) MUGI MULTI-S01 (推奨なし) ISO/IEC 18033-4 MUGI MULTI-S01(モード) RC4 (128ビット)(*5) RC4 SNOW 2.0 備考: (1) 電子政府推奨暗号リストにおいては以下の注釈が付記されている. (*3) 新たな電子政府用システムを構築する場合,より長いブロック長の暗号が使用できるのであれば,128 ビットブロック暗号を選択することが望ましい. (*4) 3-key Triple DES は,以下の条件を考慮し,当面の使用を認める.1) SP800-67として規定されていること,2) デファクトスタンダードとしての位置を保っていること (*5) 128-bit RC4 は,SSL3.0/TLS1.0 以上に限定して利用することを想定している.なお,リストに掲載されている別の暗号が利用できるのであれば,そちらを使用することが望ましい. 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 19 39 公開鍵暗号の標準化状況 米国政府標準・推奨暗号 FIPS 186-2 (FIPS 186-3 draft) RSA (ANS X9.31, RSASA-PKCS1-v1_5, RSA-PSS) デジタル 署名 DSA ECDSA 電子政府推奨暗号(1) RSA-PSS RSASA-PKCS1-v1_5 DSA ECDSA ISO/IEC国際標準暗号 インターネット標準暗号 RSA-PSS (primary) ISO/IEC 9796, 14888, 15946 RSA-PSS RSA-PSS RSASA-PKCS1-v1_5 RSA-OAEP RSAES–PKCS1-v1_5(*1) DSA ECDSA ESIGN-PSS ECAO Schnorr など ISO/IEC 11770, 18033-2 RSA–KEM (secondary) RSA-KEM RSA-OAEP PSEC–KEM(*2) PSEC-KEM (primary) PSEC-KEM ACE-KEM (special) ACE–KEM ECDSA (secondary) SFLASH (special) SP 800-56, 800-57 守秘・ 鍵配送 欧州連合推奨暗号 DSA ECDSA RSA-OAEP RSAES–PKCS1-v1_5 DH DH DH DH ECDH MQV ECMQV ECDH ECDH HIME(R) ECIES-KEM ECDH 備考: (1) 電子政府推奨暗号リストにおいては以下の注釈が付記されている. (*1) SSL3.0/TLS1.0 で使用実績があることから当面の使用を認める. (*2) KEM(Key Encapsulation Mechanism)-DEM(Data Encapsulation Mechanism) 構成における利用を前提とする. (2) 守秘・鍵配送における“DH”はDiffie-Hellman方式を,“MQV”はMenezes-Qu-Vanstone方式を意味する (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 40 ハッシュ関数の標準化状況 米国政府標準・推奨 暗号 電子政府推奨暗号(1) 欧州連合推奨暗号 FIPS 180-2 ISO/IEC国際標準暗号 インターネット標準暗号 ISO/IEC 10118 SHA-(224, 256, 384, 512) SHA-(256, 384, 512) SHA-(256, 384, 512) SHA-(224, 256, 384, 512) SHA-256 ハッシュ関数 SHA-1 SHA-1(*6) RIPEMD-160(*6) SHA-1 Whirlpool SHA-1 など MD5 備考: (1) 電子政府推奨暗号リストにおいては以下の注釈が付記されている. (*6) 新たな電子政府用システムを構築する場合,より長いハッシュ値のものが使用できるのであれば,256 ビット以上のハッシュ関数を選択すること が望ましい.ただし,公開鍵暗号での仕様上,利用すべきハッシュ関数が指定されている場合には,この限りではない. 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20 41 日本の暗号が占める位置 日本の暗号アルゴリズムのなかには技術的に世界最先 端と評価されているものもある ブロック暗号: Camellia: AES同等と評価されている国際標準暗号 MISTY1 : 64ビットブロック暗号としての最終形の暗号 KASUMI: 唯一の3GPP標準暗号 公開鍵暗号: PSEC-KEM: NESSIEでは第1推奨を獲得 普及の面では他国の政府標準暗号に比べて苦戦 政府標準暗号がある国:米国・英国・韓国・中国・カナダ・・・・ (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 42 次世代暗号の比較 暗号名 AES Camellia SEED 開発元 NIST(米国立標準技術研究所) NTT・三菱電機 KISA(韓国情報保護振興院) 開発年 1998 Rijnmen, Daemenが開発 2001 米国政府標準暗号認定 2000 1998 鍵長 128/192/256 ビット 128/192/256 ビット 128 ビット セキュリティ マージン 1.25 – 1.4 1.8 – 2.0 (2.0以下) 構造 SPN構造 適用領域 ◎ ソフトウェア ○ ICカード、高速ハードウェア Feistel構造 ◎ ICカード、小型ハードウェア ○ ソフトウェア 政府規格 米連邦情報処理標準規格(FIPS) 電子政府推奨暗号 Feistel構造 ○ ソフトウェア、高機能ICカード × ハードウェア、低機能ICカード 韓国情報通信標準規格(KICS) 「連邦情報セキュリティ管理法(FISMA • 「e-Japan重点計画」による総務省・ 「情報通信網利用促進および情報保護 法)」および「大統領令」に基づく、 米国 経済産業省主管の実施施策の一環 等に関する法律」などに基づく、政府機 連邦政府システムに対する唯一の暗号 • 12個の推奨暗号のひとつ 関に対する唯一の暗号強制規格 強制規格 現状 • 金融機関における標準仕様と • 官公庁向けシステムをはじめと • 韓国内の金融機関での標準仕 しても採用 するSE/SI案件で導入 様としても採用 • 事実上の次期デファクト暗号と • 特許無償化/オープンソースも • 690以上の韓国企業、大学、研 して様々な標準化や製品供給 公開 究所で利用 が進展 • 国外では事実上日本を代表す • 韓国内におけるSEEDとAESの両 る暗号と認識 立が促進 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 21 43 暗号製品に関する認証制度 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 44 セキュリティ技術の認証制度 セキュリティマネジメント BS7799, ISO/IEC17799/27000, ISMS 運用時の情報管理・保護体制が適切であることを 認証 運用システムの利用環境や組織のセキュリティ要求事項などを考慮して 必要な管理項目(管理分野・管理目的・セキュリティ対策)を選択・実施 セキュリティプロダクト Common Criteria, ISO/IEC15408 (TCSEC, ITSEC, CTCPEC) 暗号モジュール FIPS140-2, ISO/IEC19790 日本版CMVP(JCMVP) 必要なセキュリティ機能がもれなく正確に実装され ていることを認証 セキュリティ機能要件(必要な機能の洗い出し)とセキュリティ保証要件 (実装の信頼性)に基づき、セキュリティプロダクトの品質保証を実施 期待されたセキュリティ機能を担保するように暗号 技術が実装されていることを認証 実装される暗号技術が正しく動作するとともに、不正な行為・攻撃を検 知・適切な防御を実行することにより、モジュール内部の安全性を担保 暗号技術 ISO/IEC9796, 10118, 14888, 18033 米国政府標準暗号, 欧州連合推奨暗号, 電子政府推奨暗号 など 安全な暗号技術の採用を促進 暗号研究者らによる十分な安全性検証が行われた暗号技術の標準化・ 推奨を国際的に行うことにより、安全な暗号技術の採用を促進 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 22 45 ISO/IEC15408(CC) 情報システムや部品に採用されているセキュリティ技術を 統一的な基準によって評価・認定する制度 11クラスのセキュリティ技術要件(必要なセキュリティ機能はど れか) 10クラスのセキュリティ保証要件(どの程度の信頼度でセキュリ ティ機能が正確かつ適切に実装されているか) 実装の信頼度を7段階の評価保証レベルEALで表現 暗号技術は審査対象外 相互認証協定(CCRA) 22カ国が加盟(2006.3現在) 2003年10月に日本も加盟 日本では EAL4+ までの認定取得が可能 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 46 ISO/IEC19790(CMVP) セキュリティ機能を正しく安全に動作させるように暗号モ ジュールが実装されていることを検査・認証する制度 11カテゴリのセキュリティ要件 認定を受けた暗号技術が正しくバイパスされずに動作するか 不正な行為・攻撃の検知が行えるか 重要セキュリティ情報の漏洩防止のための適切な防御対策が施され ているか 検知・防御能力に応じて4段階のセキュリティレベルで表現 あらかじめ認証された暗号技術のみが検査対象 日本では2006年度からの認証体制の試行運用開始 2007年度から本格運用予定 相互認証協定はまだない 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 23 47 CMVPの認証範囲 例外)機密情報保護認定済モ ジュールは無検査で使用可能 機密情報保護認定済み 暗号モジュール 2)インタフェースの規定 アプリケーションモジュールB アプリケーションモジュールC 通信プロトコル 5)物理的セキュリティの規定 8)電磁妨害/電磁干渉 通信インタフェース アプリケーションモジュールA システムモジュール OS 暗号通信プロトコル 状態表示 状態出力 4)状態モデルの規定 認証機能 オペレータ 6)操作環境の規定 データ出力 データ入力 認定動作モードA 状態管理 鍵ゼロ化 不正検知 不正応答 認定動作モードB ISO19790 ISO/IEC9797 ISO/IEC10116 FIPS/SP認定 カプセル化技術 ISO/IEC19772 FIPS/SP認定 デジタル署名 ISO/IEC9796 ISO/IEC14888 FIPS/SP認定 ハッシュ関数 ISO/IEC10118 認定アルゴリズムA 3)認証方法の規定 電力供給 外部電源 制御入力 FIPS140 FIPS/SP認定 暗号利用モード 7)鍵管理の規定 1)暗号モジュール仕様の規定 9)セルフテスト 10)設計保証 11)その他の攻撃(実装攻撃) への防御策 乱数生成 認定アルゴリズムB 個別鍵 鍵生成 認定アルゴリズムC 秘密鍵 暗号化 非認定アルゴリズムa CSP 鍵共有 非認定アルゴリズムb 暗号モジュール 非認定アルゴリズムc 公開鍵 暗号化 個別鍵 暗号化 秘密鍵 暗号化 CSP FIPS/SP認定 暗号 ISO/IEC18033 FIPS/SP非認定 暗号 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 20060822 情報セキュリティ人材育成公開講座@中央大 48 本日の講義のまとめに 新規システムには次期の認証された暗号技術の採用を NIST移行期限 2006 2008 2010 2012 2015 2020 Triple DES AES, Camellia 1024-bit RSA/DSA 2048-bit RSA/DSA 256-bit ECDSA/PSEC-KEM SHA-1 SHA-256 Advanced Hash 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 24 49 ご清聴ありがとうございました ご質問をどうぞ NTT情報流通プラットフォーム研究所 情報セキュリティプロジェクト 神田 雅透 [email protected] 20060822 情報セキュリティ人材育成公開講座@中央大 (c)日本電信電話株式会社 情報流通プラットフォーム研究所 25