...

暗号モジュール試験及び 認証制度のご紹介

by user

on
Category: Documents
57

views

Report

Comments

Transcript

暗号モジュール試験及び 認証制度のご紹介
暗号モジュール試験及び
認証制度のご紹介
2009年3月25日
独立行政法人 情報処理推進機構
セキュリティセンター
1
目次
1. 暗号モジュール試験及び認証制度の概要
2. 暗号モジュール試験と暗号モジュール認証
3. 暗号アルゴリズム実装試験と暗号アルゴリズム確認
4. 暗号モジュールセキュリティ要件の標準化動向
2
JCMVP制度の全体像
暗号モジュール試験及び認証制度
暗号モジュール試験及び認証制度
認証機関
独立行政法人 情報処理推進機構
認定機関
NITE
技術指導
独立行政法人
製品評価技術基盤機構
ASNITE
試験事業者IT
試験報告書
提出
暗号アルゴリズム
確認書
暗号モジュール
認証書
試験機関
試験機関認定
試験報告書
提出
認証申請
試験
依頼
申請者
暗号アルゴリズム確認書/
暗号モジュール認証書 発行
試験用
提供物件
暗号モジュールの
ベンダ、供給者など
•
暗号モジュールとは
– 「承認されたセキュリティ機能」をソフトウエア/ファームウエア/ハードウエアで実装したものです。
•
「暗号モジュール試験及び認証制度」(JCMVP: Japan Cryptographic Module Validation Program)とは
– 暗号モジュールに実装されたセキュリティ機能が正しく実装されていることを確認すると共に、鍵やID、パス
ワード等の重要情報のセキュリティを確保していることを試験、認証する第三者適合性評価制度です。
3
JCMVP認証適用可能な製品例
•
•
•
•
•
•
スマートカード
USBトークン
PCIカード
ゲートウェイ
ソフトウェア暗号ライブラリ
ファイル暗号化ソフトウェア 等
4
暗号モジュール試験及び認証制度
• 米国・カナダのCMVP制度と同等の制度
– CMVPでは暗号モジュールセキュリティ要求事項としてFIPS 140-2を採用。また
暗号モジュールセキュリティ試験要件としてFIPS 140-2 DTRを採用しています。
– JCMVPでは暗号モジュールセキュリティ要求事項としてFIPS 140-2をベースにし
て作成されたISO/IEC 19790の国際一致規格であるJIS X 19790を採用。
暗号モジュールセキュリティ試験要件として、JIS X 5091を採用。
このJIS X 5091はFIPS 140-2 DTRをベースに提案されているISO/IEC WD
24759 を参考にして作成されたものです。
– CMVPでは承認されたセキュリティ機能はFIPS 140-2のAnnex Aで規定されてい
ます。
– JCMVPでは承認された暗号アルゴリズムはCRYPTREC作成の電子政府推奨暗
号リストに記載されたもの等からJCMVP技術審議委員会の審議を経て決定され
ます。
CMVP:
Cryptographic Module Validation Program
FIPS:
DTR:
Federal Information Processing Standards
Derived Test Requirements
5
JCMVPとCMVPの関係
それぞれ独立した制度 ∼ワンストップサービスによる利便性の向上∼
ワンストップサービスとは日本と米国の両方から認定された試験機関で暗号モジュール
試験を実施することにより、申請者は異なる二つの制度の認証申請を1回の試験で行
えるサービス です。
米国・カナダCMVP
認証機関
日本JCMVP
協力関係構築
NIST/CSEC
NIST/CSEC向け
試験報告書
IPA
IPA向け
試験報告書
試験機関
JCMVP
認証書
CMVP
認証書
申請者(ベンダ)
6
承認されたセキュリティ機能の比較
Approved Key Establishment Techniques
MQV, ECMQV, AES Key Wrap
Approved Security
Functions for FIPS 140-2
DH, ECDH
RSA-OAEP
RSAES-PKCS1-v1_5
PSEC-KEM, RIPEMD-160
CIPHERUNICORN-E
Hierocrypt-L1,MISTY1,Camellia
CIPHERUNICORN-A
Hierocrypt-3, SC2000,
MUGI,MULTI-S01,128-bit RC4
電子政府推奨暗号リスト
擬似乱数生成系の例示
・PRNG based on SHA-1 for general purpose in FIPS
186-2 (+ change notice 1) Appendix 3.1
・PRNG based on SHA-1 for general purpose in FIPS
186-2 (+ change notice 1) revised Appendix 3.1
・PRNG based on SHA-1 in ANSI X9.42-2001 Annex C.1
AES
3-key Triple DES
SHA-1,SHA-256,
SHA-384,SHA-512
RSASSA-PKCS1-v1_5
RSASSA-PSS
DSA, ECDSA
SHA-224
HMAC-SHA-1
HMAC-SHA-224,256
HMAC-SHA-384,512
CMAC,CCM
・ANSI X9.31 Appendix A.2.4
Using 3-Key Triple DES and AES
2-key Triple DES
Skipjack
Triple-DES MAC
GCM
Deterministic RNGs
・FIPS186-2 Appendix3.1
・FIPS186-2 Appendix3.2
・ANSI X9.31 Appendix A.2.4
・SP800-90(Dual_EC_DRBG)
・SP800-90(Hash_DRBG,
CTR_DRBG, HMAC_DRBG)
JCMVP制度で承認されたセキュリティ機能
7
JCMVP制度の立ち上げ
イベント
2006年6月
IPAが認証機関及び試験機関としてJCMVP制度の試行運用を開始した。
2007年3月
暗号モジュールセキュリティ要件JIS X 19790:2007及び暗号モジュール試験
要件JIS X 5091:2007が制定された。
2007年3月
IPAがNITEよりASNITE試験事業者ITに基づく暗号モジュール試験機関認定
を取得した。
2007年4月
IPAが認証機関及び試験機関としてJCMVP正式運用を開始した。
2007年6月
統一基準の強化遵守事項として暗号モジュール試験及び認証制度による認
証の取得が記述された。
2007年12月
(株)ECSECがNITEよりASNITE試験事業者ITに基づく認定を取得し、民間
で最初の暗号モジュール試験機関としてIPAが承認した。
2009年1月
(財)JQAがNITEよりASNITE試験事業者ITに基づく認定を取得し、民間で2
番目の暗号モジュール試験機関としてIPAが承認した。
2009年4月
JIS X 5091:2007が廃止され、JIS X 24759:2009が制定される予定。
8
JCMVPで使用する規格
セキュリティ要件
試験要件
CY2007
FIPS 140-2
FIPS 140-2 DTR
CY2009
移行期間
JIS X 19790:2007
JIS X 5091:2007
JIS X 19790:2007
JIS X 24759:2009
CY2008
移行期間
廃止
制定
制定
9
JIS X 19790
暗号モジュールのセキュリティレベル
セキュリティ
レベル
各セキュリティレベルの概要
1
市販品として求められる基本的なセキュリティ要求事項を満たすレベル。
セキュリティ確保のための物理的なメカニズムは要求されないレベル。
2
セキュリティレベル1に加え、タンパー証跡(暗号モジュールを開封した跡
が残るようなシールなど)に関する要求事項を加えたレベル。また、管理者、
ユーザといった役割ベースの認証機能を必須とする。
3
セキュリティレベル2に加え、タンパー検出・応答(暗号モジュールを開封し
たことを検出しデータ消去などの応答をする)に関する要求事項を加えた
レベル。IDベースの認証機能を必須とする。また、重要情報の入出力に関
する要求事項が追加されている。
4
セキュリティレベル3に加え、いかなる物理的な攻撃に対してもタンパー検
出・応答をするように完全に暗号モジュール部分を被覆保護する物理的メ
カニズムを加えたレベル。さらに、正常に動作する電圧・温度の範囲を超
えた環境条件・変動に関する要求事項も追加されている。
暗号モジュールが取扱うデータの重要度や利用環境を考慮して4つのレベルを設定
10
JIS X 19790
暗号モジュールセキュリティ要件要約
セキュリティレベル1
セキュリティレベル2
セキュリティレベル3
セキュリティレベル4
暗号モジュー
ルの仕様
暗号モジュール,暗号境界,承認されたアルゴリズム,承認された動作モードの仕様。すべてのハードウェア,ソフトウェア,ファームウェアの構成要素を
含む暗号モジュールの記述。暗号モジュールのセキュリティポリシの宣言。
暗号モジュー
ルのポート及び
インタフェース
必す(須)のインタフェース及び選択可能なインタフェース。すべてのインタ
フェースの仕様及びすべての入出力データパスの仕様。
他のデータポートから論理的に分離された,CSPのためのデータポート。
役割,サービス,
及び認証
必す(須)の役割及びサービスと選
択可能な役割及びサービスとの論
理的な分離。
IDベースのオペレータ認証。
有限状態モデ
ル
有限状態モデルの仕様。必す(須)の状態及び選択可能な状態。状態遷移図及び状態遷移の仕様。
物理的セキュリ
ティ
製品グレードの装置。
錠又はタンパー証跡。
カバー及びドアに対してのタン
パー検出及びタンパー応答。
タンパー検出及びタンパー応答
が可能な包被。EFP又はEFT。
動作環境
単一のオペレータ。実行可能なコー
ド。承認された完全性技術。
参照PPに適合し,EAL2の条件で評
価を受けた環境。EAL2の条件で評
価を受け,任意アクセス制御機構及
び監査機構をもつ環境。
参照PPに加え,高信頼パスに適
合し,EAL3に加え,セキュリティポ
リシのモデル化の条件で評価を
受けた環境。
参照PPに加え,高信頼パスに適
合し,EAL4の条件で評価を受け
た環境。
暗号鍵管理
鍵管理機構:乱数生成及び鍵生成,鍵確立,鍵配送,鍵入出力,鍵の保管,並びに鍵のゼロ化。
役割ベースのオペレータ認証又はID
ベースのオペレータ認証。
手動の転送方法を用いて転送された秘密鍵及びプライベート鍵は,平文の
形式で入力又は出力してもよい。
手動の転送方法を用いて転送された秘密鍵及びプライベート鍵は,暗
号化又は知識分散処理を用いて,入力又は出力されなければならない。
自己テスト
パワーアップ自己テスト:暗号アルゴリズムテスト,ソフトウェア/ファームウェア完全性テスト及び重要機能テスト。
条件自己テスト。
設計保証
構成管理。セキュアな設置及び生
成。設計とポリシとの対応。ガイダ
ンス文書。
その他の攻撃
への対処
攻撃への対処の仕様。
現在は,試験可能な要求事項は用意されていない。
構成管理システム。セキュアな配送。
機能仕様。
高級言語による実装。
セキュリティポリシのセキュリティ
ルール、特徴を記述する形式的
モデルの規定
試験可能な要求事項を備えた,
攻撃への対処の仕様。
11
JCMVPで承認されたセキュリティ機能
技術分類
公開鍵暗号
共通鍵暗号
その他
暗号名称
署名
DSA, ECDSA, RSASSARSASSA-PKCS1PKCS1-v1_5, RSASSARSASSA-PSS
守秘
RSARSA-OAEP, RSAESRSAES-PKCS1PKCS1-v1_5
鍵確立
DH, ECDH, PSECPSEC-KEM
64ビットブロック暗号
CIPHERUNICORNCIPHERUNICORN-E, HierocryptHierocrypt-L1, MISTY1, 33-key Triple DES
128ビットブロック暗号
AES, Camellia, CIPHERUNICORNCIPHERUNICORN-A,
HierocryptHierocrypt-3, SC2000
ストリーム暗号
MUGI, MULTIMULTI-S01, 128128-bit RC4
ハッシュ関数
RIPEMDRIPEMD-160, SHASHA-1, SHA-224, SHASHA-256, SHASHA-384, SHASHA-512
メッセージ認証
CCM, CMAC, HMAC-SHA-1, HMAC-SHA-224, HMAC-SHA-256,
HMAC-SHA-384, HMAC-SHA-512
擬似乱数生成系
・ NIST SP800-90(Hash_DRBG, HMAC_DRBG, CTR_DRBG)
・ NIST-Recommended Random Number Generator Based on ANSI
X9.31 Appendix A.2.4 Using the 3-key Triple DES and AES Algorithms
・PRNG based on SHASHA-1 for general purpose in FIPS 186186-2
(+ change notice 1) Appendix 3.1
・PRNG based on SHASHA-1 for general purpose in FIPS 186186-2
(+ change notice 1) revised Appendix 3.1
・PRNG based on SHASHA-1 in ANSI X9.42X9.42-2001 Annex C.1
注: 電子政府推奨暗号リストに記載されたセキュリティ機能は太字で表示。JCMVPではJCMVP運用ガイダンスを発行し、NIST SP800-90に
記載されているHash_DRBG、HMAC_DRBG、CTR_DRBGのみを、JIS X 19790で使用できる乱数生成器としています。
12
暗号モジュール認証取得のメリット
• 承認された暗号アルゴリズムが適正に実装されていることが、
暗号アルゴリズム実装試験ツールJCATT®により確認されます。
• 不正な操作または利用から暗号モジュールが保護されているこ
とが確認されます。
• 暗号モジュールの内部情報の不正な開示が防止されていること
が確認されます。
• 暗号モジュール及び暗号アルゴリズムに対する不正な改変から
保護されていることが確認されます。
• 暗号モジュールにエラーが発生した場合に、これを検出し、この
エラーによる重要情報の暴露、改変、毀損を防止することが確
認されます。
JCATT®:Japan Cryptographic Algorithm implementation Testing Tool
13
政府機関の情報セキュリティ対策のための
統一基準(第4版抜粋)平成21年2月3日 情報セキュリティ政策会議決定
【基本遵守事項】
情報システムの新規構築又は更新に伴い暗号化又は電子署名の付与を導入
する場合には、電子政府推奨暗号リストに記載されたアルゴリズムを使用する
こと。ただし、使用するアルゴリズムを複数のアルゴリズムの中から選択可能
とするよう暗号化又は電子署名の付与を実装する箇所においては、当該複数
のアルゴリズムに、少なくとも一つは電子政府推奨暗号リストに記載されたもの
を含めること。(1.5.2.4(1)(a)(イ))
【強化遵守事項】
情報システムセキュリティ責任者は、暗号化又は電子署名の付与を行う必要
があると認めた情報システムにおいて、選択したアルゴリズムがソフトウェア及
びハードウェアへ適切に実装され、暗号化された情報の復号又は電子署名の
付与に用いる鍵及び主体認証情報等が安全に保護された製品を使用するた
め、暗号モジュール試験及び認証制度に基づく認証を取得している製品を選
択すること。(2.1.1.6(1)(g))
供給者はJCMVPⓇ認証を取得することで政府機関向けセキュリティシステムに、選
択された暗号アルゴリズムが適切に実装され、鍵等の重要情報のセキュリティが
確保された暗号モジュールであることをアピールできます。
14
暗号モジュール試験及び認証制度の特徴
• ペーパーワークを限定し短期間で試験・認証を実施。
• セキュリティ要件はJIS X 19790で規定。
• 設置環境に対応してセキュリティレベル1からセキュリティレ
ベル4までに分類。
• 全てのレベルでセキュリティ要件と実装との整合性を確認。
• 実装レベルでの機能試験、ソースコードレビューを実施。
• 試験対象暗号アルゴリズムは強度の確認されたものに限定。
• 暗号アルゴリズムの実装確認をツールを用いて実施。
• 鍵やパスワード等の重要情報のセキュリティを確保。
• ハードウェア暗号モジュールの場合、物理的セキュリティ試
験を実施。
15
1. 暗号モジュール試験及び認証制度の概要
2. 暗号モジュール試験と暗号モジュール認証
3. 暗号アルゴリズム実装試験と暗号アルゴリズム確認
4. 暗号モジュールセキュリティ要件の標準化動向
16
暗号モジュール試験
暗号モジュール試験 = 暗号アルゴリズム実装試験 + その他の暗号モジュール試験
試験機関
暗号モジュール試験
正解ファイル
質問ファイル
暗号アルゴリズム
照合及び判定
回答ファイル
その他の暗号モジュール試験
鍵管理
暗号モジュール製品ベンダ
暗号モジュール
暗号アルゴリズム実装試験
自己テスト
試験用提供物件
(ソースコードなど)
検証
認証機関
試験報告書
暗号モジュール
認証
認証書
17
暗号モジュール試験内容
•
暗号アルゴリズム実装試験
– JCATTツールを用いたセキュリティ機能のブラックボックステスト
•
ドキュメントレビュー
–
–
–
–
•
セキュリティポリシ
有限状態モデル(FSM)
設計資料
VEドキュメント(ベンダ情報要件の説明/参照先指定)
物理的セキュリティ試験
– タンパー証跡
– 囲いの不透明性確認
– タンパー検出・応答
•
ソースコードレビュー
– FSM・設計資料とソースコードの一致
•
オペレーションテスト
– FSMとの一致(エラー状態を含む)
– ガイダンス文書との一致
18
暗号モジュール試験プロセス
目安期間
2,3日
暗号モジュール仕様事前確認
ベンダ
依存
設計変更、文書改訂等
暗号アルゴリズム
実装試験
開発文書レビュー
ソースコードレビュー
オペレーションテスト
試験報告書作成
認証機関とのQ/A対応
物理的セキュリティ
試験
4-6週間
2週間
1週間
2週間
1-2週間
19
暗号モジュール試験の有効性
CMVPのFAQには、北米CMVP試験機関の初期
調査結果として、次のデータが示されています。
・164の暗号モジュールの調査結果
 ・80 (48.8%) セキュリティ欠陥
・158 (96.3%) 文書上の誤り
20
暗号モジュールセキュリティ要求事項に
関するJCMVP不適合事例(1)
• 承認されていないセキュリティ機能の実装
– 暗号アルゴリズム自体は承認されているが、暗
号アルゴリズム実装試験を受けていない実装を
使用している。
– 自己テストで実装の確認をしていない。
• エントロピー源に対する試験
– エントロピー源から取得する乱数シードが十分な
最小エントロピーを持っていない。
21
暗号モジュールセキュリティ要求事項に
関するJCMVP不適合事例(2)
• パワーアップ自己テスト
– ブロック暗号のCBCモードに関する自己テストで、
1ブロック分しか確認していない。
– パワーアップ自己テストを実行するのに、オペレータの
操作を必要とする。
• 条件自己テスト
– 連続乱数生成器テスト
• 最初のブロックを出力してしまう。
• 比較するブロック長が、生成するブロック長とあっていない。
22
暗号モジュールセキュリティ要求事項に
関するJCMVP不適合事例(3)
• 設計保証
– C言語のソースで、構造体メンバを参照するのに、
構造体の先頭アドレスから、バイト数を指定して
アクセスしている。しかし、構造体データアライン
メント等について、文書化されていない。
– JIS X 5091 AS09.16
開発ツールの文書は,実装において用いられる
すべての規定事項(statements)の意味を明確に
定義しなければならない。
23
暗号モジュールセキュリティ要求事項に
関する不適合事例(4)
• 物理的セキュリティ(レベル2以上)
– タンパーシールを容易にはがすことが出来る。
• 溶剤を用いて
– アセトン,
– ブレーキクリーナー,
– エンジンクリーナー, etc.
• 物理的に
– ヒートガン(ドライヤー),
– カッターナイフ, etc.
攻撃
×
○
24
暗号モジュール認証書
25
暗号モジュール認証製品リストの掲載例
http://www.ipa.go.jp/security/jcmvp/val.html
http://www.ipa.go.jp/security/jcmvp/jcmvp_e/val.html
26
暗号モジュール認証後
製品パッケージ、カタログなどに認証マークを使用
できます。
・「暗号モジュール認証マーク」を、書類、パンフレット、宣伝・広告、製品パッケージ
等に使用するとき、「暗号モジュール認証マーク」の傍など暗号モジュールの使
用者が認識しやすい適切な場所に、当該暗号モジュール認証番号及びセキュ
リティレベルを示してください。
認証番号:J0000
セキュリティレベル1
27
1. 暗号モジュール試験及び認証制度の概要
2. 暗号モジュール試験と暗号モジュール認証
3. 暗号アルゴリズム実装試験と暗号アルゴリズム確認
4. 暗号モジュールセキュリティ要件の標準化動向
28
暗号アルゴリズム確認制度
• 暗号アルゴリズム確認とは
JCMVP制度下で暗号モジュール試験の一部で
ある暗号アルゴリズム実装試験を実施し、制度で
承認しているセキュリティ機能が適切に実装され
ていることを確認することです。
(2009年1月より実施)
• 暗号アルゴリズム実装試験には専用のツール
(JCATT)を使用します。
• 暗号アルゴリズム実装試験に合格すると「暗号ア
ルゴリズム確認書」が発行されます。
29
暗号アルゴリズム確認制度の仕組み
暗号アルゴリズム確認
暗号アルゴリズム確認
認証機関
独立行政法人 情報処理推進機構
認定機関
NITE
試験報告書
提出
独立行政法人
製品評価技術基盤機構
暗号アルゴリズム
確認書
試験機関
試験機関認定
質問
ファイル
暗号アルゴリズム
確認申請
試験
依頼
申請者
暗号アルゴリズム確認書発行
回答
ファイル
暗号アルゴリズム実装製品の
開発者、供給者など
30
暗号アルゴリズム確認手順
ベンダ
試験機関
・全ての動作環境(OS)と
暗号アルゴリズム指定
・回答ファイル作成
・質問ファイル、
質問ファイル
回答ファイル
OK/NG
・立会い試験
正解ファイル作成
・回答ファイルと
正解ファイルの照合
ツールで判定
・全てOK
・試験報告書作成
31
質問ファイル例 (AES)
• 種々の平文(暗号文)に
対する既知入出力試験
– 1個の鍵
– 平文(又は暗号文) が
様々に変化
暗号化(又は復号)結果を質問
ファイルに追加して回答ファイル
を作成
※分かりやすくするために空白を追加
• 質問ファイル抜粋
⇒鍵長。
[Bitlength of Key]
128
⇒暗号鍵。
[Key for KAT-Text]
00000000 00000000 00000000 00000000
[Plaintext for KAT-Text]
⇒平文。
80000000 00000000 00000000 00000000
C0000000 00000000 00000000 00000000
E0000000 00000000 00000000 00000000
F0000000 00000000 00000000 00000000
F8000000 00000000 00000000 00000000
FC000000 00000000 00000000 00000000
FE000000 00000000 00000000 00000000
FF000000 00000000 00000000 00000000
FF800000 00000000 00000000 00000000
FFC00000 00000000 00000000 00000000
FFE00000 00000000 00000000 00000000
FFF00000 00000000 00000000 00000000
--省略-FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE
FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF
32
質問ファイル及び回答ファイルのフォーマット例
(AES暗号化の一部)
質問ファイルフォーマット
機能
タグ
データ
回答ファイルフォーマット
タグ
データ
暗 号 化
[Algorithm Name]
AES(固定)
[Algorithm Name]
AES(固定)
[Function Name]
Encryption(固定)
[Function Name]
Encryption(固定)
[Modes of Operation]
ECB/CBC/OFB/CFB1/CFB8/CFB128/CTR
[Modes of Operation]
ECB/CBC/OFB/CFB1/CFB8/CFB128/CTR
[Bitlength of Key]
鍵のビット長;128/192/256
[Bitlength of Key]
鍵のビット長;128/192/256
[Bitlength of Counter]
カウンタのビット幅(CTRモードのみ)
[Bitlength of Counter]
カウンタのビット幅(CTRモードのみ)
[Key for KAT-Text]
KAT-TEXT用鍵
[Key for KAT-Text]
KAT-TEXT用鍵
[Plaintext for KAT-Text]
KAT-TEXT用平文
[Plaintext for KAT-Text]
KAT-TEXT用平文
[IV for KAT-Text]
KAT-TEXT用IV
[IV for KAT-Text]
KAT-TEXT用IV
[Counter for KAT-Text]
KAT-TEXT用カウンタ(CTRモードのみ)
[Counter for KAT-Text]
KAT-TEXT用カウンタ(CTRモードのみ)
[Ciphertext for KAT-Text]
上記パラメータに対する暗号文
[Plaintext for KAT-Key]
KAT-Key用平文
[Plaintext for KAT-Key]
KAT-Key用平文
[IV for KAT-Key]
KAT-Key用IV
[IV for KAT-Key]
KAT-Key用IV
[Counter for KAT-Key]
KAT-Key用カウンタ(CTRモードのみ)
[Counter for KAT-Key]
KAT-Key用カウンタ(CTRモードのみ)
[Key for KAT-Key]
KAT-Key用鍵
[Key for KAT-Key]
KAT-Key用鍵
[Ciphertext for KAT-Key]
上記パラメータに対する暗号文
[Key for KAT-GFSbox]
KAT-GFSbox用鍵
[Key for KAT-GFSbox]
KAT-GFSbox用鍵
[Plaintext for KAT-GFSBox]
KAT-GFSbox用平文
[Plaintext for KAT-GFSBox]
KAT-GFSbox用平文
[IV for KAT-GFSbox]
KAT-GFSbox用IV
[IV for KAT-GFSbox]
KAT-GFSbox用IV
[Counter for KAT-GFSbox]
KAT-GFSbox用カウンタ(CTRモードのみ)
[Counter for KAT-GFSbox]
KAT-GFSbox用カウンタ(CTRモードのみ)
[Ciphertext for KAT-GFSbox]
上記パラメータに対する暗号文
33
質問ファイル/回答ファイルのフォーマット
ファイルフォーマットについては、次の資料をセキュリティ機能別
にJCMVPサイトの「公開資料」のページで公開しています。
− 暗号アルゴリズム実装試験仕様書
− JCATTファイルフォーマット
仕様書
− JCATTサンプルファイル
http://www.ipa.go.jp/security/jcmvp/open_documents.html
34
暗号アルゴリズム実装試験の有効性
CMVPのFAQには、北米CMVP試験機関の初期
調査結果として、次のデータが示されています。
・332の暗号アルゴリズム実装の調査結果
(DES、Triple-DES、 DSA及びSHA-1)
・88 (26.5%) のセキュリティ欠陥
35
暗号アルゴリズム実装試験のJCMVPでの
不合格事例(1)
• RSA共通
– 暗号文、署名の長さの取扱が仕様に準拠していない。
– 仕様
PKCS#1 v2.1: RSA Cryptography Standard, June 14, 2002.
ftp://ftp.rsasecurity.com/pub/pkcs/pkcs-1/pkcs-1v2-1.pdf
• m : 符号化されたメッセージ n : RSA公開鍵の法。長さ k バイト
• e : RSA公開鍵の指数
c : 暗号文。長さ k バイト
c = m e mod n
• mod 演算をした結果、先頭のバイトが0x00になった場合でもデータ
を切り詰めない。
• RSA-OAEP, RSASSA-PSS
– 暗号文、署名文がランダムにならず、仕様に準拠していない。
36
暗号アルゴリズム実装試験のJCMVPでの
不合格事例(2)
• HMAC
– HMACの鍵の取扱が仕様に準拠していない。
– 仕様
http://csrc.nist.gov/publications/fips/fips198/fips-198a.pdf
• K : 鍵の長さ
• L : ハッシュ関数の出力長
K ≥ L/2
• 使用するハッシュ関数の出力長の半分未満の鍵を使用しては
いけない。
37
暗号アルゴリズム確認書
38
暗号アルゴリズム確認登録簿の掲載例(AES)
http://www.ipa.go.jp/security/jcmvp/avallists.html
39
暗号アルゴリズム確認の活用例
•
暗号アルゴリズム確認の活用例して、次のことが考えられます。
CC評価 + 暗号アルゴリズム実装試験
– CC評価では暗号アルゴリズム実装の評価は行いません。(EAL4ではソース
コードレビューを行いますが、暗号アルゴリズムの専門家でない限り、試験
ツールが行うレベルの確認は困難です。)
– CC評価を補完する位置づけとして、JCMVPで承認されたセキュリティ機能を
実装しているTOE(評価対象)には、CC評価に合わせて暗号アルゴリズム実
装試験の実施が有効と考えられます。
CC:セキュリティ評価基準
EAL:評価保証レベル
40
暗号モジュール認証と暗号アルゴリズム確認の違い
暗号モジュール認証
ベンダ提出物
試験期間
申請料金
(試験費用を除く)
暗号アルゴリズム確認
認証申請書 、セキュリティポリシ、 確認申請書、回答ファイル
有限状態モデル、各種設計文書、
ソースコード、VE ドキュメント、
マニュアル、回答ファイル
2ヶ月∼
レベル1:262,500円
レベル2:375,000円
レベル3:525,000円
2週間∼
21,000円
(セキュリティ機能の数に
制限はありません。)
レベル4:735,000円
暗号アルゴリズム
確認書の交付
○
○
暗号モジュール認
証書の交付
○
−
認証マークの使用
○
×
41
1. 暗号モジュール試験及び認証制度の概要
2. 暗号モジュール試験と暗号モジュール認証
3. 暗号アルゴリズム実装試験と暗号アルゴリズム確認
4. 暗号モジュールセキュリティ要件の標準化動向
42
暗号モジュールセキュリティ要件の変遷
イベント
米NSAによるDESの規格・認証プログラムFS1027としてスタート
1982年
1988年
管轄が米NISTに移り、FIPS140として引き継がれる
1994年1月 FIPS140-1に改定
1995年7月 米NIST、加CSEによる暗号モジュール認証制度CMVPがスタート
2001年5月 FIPS140-2に改定。CCや新しい攻撃に対する対応の追加
2002年10月 FIPS 140-2をベースにISO/IEC JTC1 SC27にNWI提案(19790)
2005年4月
FIPS 140-2 DTRをベースにNWI提案(24759)
2006年3月
FIPS140-2 をベースにISO/IEC 19790:2006を制定
2007年3月
JIS X 19790:2007、JIS X 5091:2007を制定
2008年7月
ISO/IEC 24759:2008(暗号モジュールのセキュリティ試験要件)制定
2009年4月
ISO/IEC WD19790(暗号モジュールセキュリティ要件)SC27に提出予定
2009年4月
JIS X 24759:2009 (暗号モジュールのセキュリティ試験要件)制定予定
2009年4月
FIPS 140-3Final Draft (暗号モジュールセキュリティ要件)公開予定
注: この内容は変更される可能性があります。
43
FIPS 140-3 スケジュール
2005年1月12日
FIPS 140-3の開発を公示。コメント受付開始。
2005年2月28日
FIPS 140-3に対するコメント受付終了
2005年9月26日
Physical Security Workshopをハワイで開催
2007年7月13日
FIPS 140-3 1st ドラフト公開
2007年10月11日
1st ドラフトコメント期間終了
2008年3月18日
ソフトウェアセキュリティに関するワークショップ開催
2009年2Q
FIPS 140-3 最終ドラフト公開
2009年3Q
最終ドラフトコメント期間終了
2009年4Q
FIPS140-3確定、商務長官承認手続き
2010年2Q
FIPS 140-3 発効
2010年4Q
FIPS 140-2 停止
注: この内容は変更される可能性があります。
44
FIPS 140-3及びその国際標準化動向
2009
FIPS 140-3
2010
運用
最終ドラフト
公開
商務長官
署名
発効
作成・内部レビュー
FIPS 140-3DTR
ISO/IEC 19790
早期改訂
2011
運用
公開
発効
運用
SC27
CD審議
FDIS審議
IS発行
レドモンド会合
WD審議
ISO/IEC 24759
早期改訂
運用
早期改訂提案 WD審議
CD審議
FDIS審議
IS発行
45
FIPS 140-3の主な変更点
•
•
•
•
•
•
セキュリティレベル5の追加
ソフトウェアモジュール、ハイブリッドモジュールの導入
ソフトウェアセキュリティの章を追加
タンパーシールに固有番号を付加
非侵襲攻撃の章を追加
暗号鍵管理をSSPのライフサイクル管理に拡大
• パワーアップ自己テストの一部を条件自己テストに移動
ドラフトベースの内容のため
変更になる可能性があります
46
FIPS 140-3 内部ドラフト
暗号モジュールセキュリティ要件要約
セキュリティレベル 1
暗号モジュールの仕様
セキュリティレベル2
セキュリティレベル 3
セキュリティレベル 4
セキュリティレベル 5
モジュール、暗号境界の定義。承認された暗号アルゴリズム及び承認された動作モード。モジュールハードウェア、及びソフトウェアの記
述。モジュール文書。
承認された動作モードをセキュリティポリシで定義
承認された動作モードをモジュールで表示
暗号モジュールのポー
ト及びインターフェース
必す(須)のインタフェース及び選択可能なインタ
フェース。すべてのインタフェースの仕様及びすべて
の入出力データパスの仕様。
高信頼チャネルを用いて他のポート及びインターフェースから物理的又は論理
的に分離されたCSPの入出力。
役割、サービス及び認
証
モジュールの役割と
サービスの定義
役割ベースのオペレー
タ認証又はIDベースの
オペレータ認証
IDベースのオペレータ
認証
ソフトウェアセキュリティ
実行形式コード、 承認
された完全性技術
ディジタル署名ベースの
完全性テスト
ディジタル署名完全性
テストが失敗したときは
CSPをゼロ化
動作環境
他のプロセスからの
CSPへのアクセスを禁
止。
監査メカニズム、任意ア
クセスの制御
暗号ソフトウェア、 SSP
及び監査データの保護。
高信頼チャネル
物理的セキュリティ
製品グレードのコンポー
ネント
タンパー証跡、 不透明
なカバーまたは囲い
除去可能カバー、ドアに
対するタンパー検出及
びゼロ化回路。通気口
のプロービング対策。堅
くて不透明なコーティン
グ又は囲い。
温度及び電圧に関する
EFP又はEFT。マルチ
チップモジュールに対す
るタンパー検出及びゼ
ロ化回路。
温度及び電圧に関する
EFP。 非視覚光検査に
対する不透明性。タン
パー検出及びゼロ化回
路の無効化に対する保
護。
物理的セキュリティ
非侵襲攻撃
追加要求なし
TA, SPA、DPA、EME攻
撃に対するCSPの保護
セキュリティレベル4試
験基準にパスすること
セキュリティレベル5試
験基準にパスすること
二要素によるIDベースのオペレータ認証.
47
FIPS 140-3 内部ドラフト
暗号モジュールセキュリティ要件要約
セキュリティレベル 1
SSP管理
セキュリティレベル 2
セキュリティレベル 3
セキュリティレベル 4
セキュリティレベル 5
乱数生成器、SSP生成、SSP確立、SSP入出力、SSP格納、CSPゼロ化に対する要件
電子的に配送されないSSPは平文で入出力されても
よい。
電子的に配送されないSSPは暗号化又は秘密分散
手続きを用いて入出力されなければならない。
PSPのゼロ化
自己テスト
動作前自己テスト;ソフトウェア完全性テスト及び動作前バイパステスト。条件自己テスト;暗号アルゴリズムテスト、鍵ペア整合性テスト、ソ
フトウェアロードテスト、手動鍵入力テスト、連続乱数生成器テスト、乱数生成器エントロピー源テスト、及び条件バイパステスト
ライフサイクル保証
(構成管理システム)
モジュール、コンポーネント、文書に対する構成管理
システム、ライフサイクル全般に亘る識別とトラッキン
グ
自動化された構成管理システム
(設計)
暗号モジュール設計とセ
キュリティポリシ、FSMと
の対応付け
暗号モジュールの主要
構成要素の機能を記述
した詳細設計.文書
(有限状態モデル)
有限状態モデル
(開発)
コメント付きソースコード、
回路図、HDL
(ベンダ試験)
機能試験
(配付とオペレータ)
起動手順
(ガイダンス文書)
アドミニストレータ及び非アドミニストレータガイダンス文書
その他の攻撃への対処
その他の攻撃への対処メカニズムはセキュリティポリシで規定
暗号モジュールを非形
式的に記述した機能仕
様.文書
高級言語ソフトウェア、高級HDLハードウェア
暗号モジュール設計と
機能仕様間の関係の非
形式的証明
セキュリティポリシの
ルールを記述する形式
モデル。形式モデルと機
能仕様間の関係の非形
式的証明。
ハードウェア、ソフトウェア文書は事前条件、事後条
件を規定するコメントをつけること
詳細試験
配付手順
ベンダ提供の認証情報を用いたオペレータ認証
48
おわりに(開発者の方へのお願い)
1.
暗号モジュールのセキュリティ要件及び試験要件をよく読
んで下さい。 → 不明な点は遠慮なく、ご質問下さい。
2.
暗号モジュール試験実施予定の有無に関係なく、セキュ
リティ要件を満足するように(例えば、既知解テストなどの
自己テスト、エラー時の出力禁止)実装してください。
3.
実装において、鍵やパスワード等の重要データを一時格
納したエリアのデータ消去を忘れないでください。
セキュリティが向上し、実装変更をしないで、暗号モジュール試
験を受けることができます。
49
ご清聴有難うございました。
JCMVPホームページ
http://www.ipa.go.jp/security/jcmvp/
お問い合わせ先
[email protected]
50
Fly UP