FIPS 140

FIPS 140 (Federal Information Processing Standardization 140) は、暗号モジュールに関するセキュリティ要件の仕様を規定する米国連邦標準規格である。2023年5月現在、規格の最新版は2019年3月22日発行のFIPS 140-3である。

FIPS 140-2の目的 
米国連邦政府の省庁等各機関が利用する、ハードウェア及びソフトウェア両方を含む "暗号モジュール" に関する要件を規定する。FIPS 140は、要件に適合するモジュールが信頼できることや、さらに要件に適合したモジュールを用いて構築したシステムが信頼できることを保証するための、十分条件の提供を意図したものではない。要件は暗号モジュールそれ自身だけでなく、モジュールの文書化、及び最高のセキュリティレベルでは、ソースコードの含むコメントのいくつかの側面についても対象としている。

暗号モジュールの使用を望む機関は、現在確かに存在する認証証明書がその該当モジュールを保証することを確認しなければならない。FIPS 140-1及びFIPS 140-2認証証明書は、正確なモジュール名、ハードウェア、ソフトウェア、ファームウェアやアプレットのバージョン番号を規定する。レベル2以上では認証が適用可能であるプラットフォームも規定する。ベンダーは、常に基準となる認証を維持し続けるとはかぎらない。 

暗号モジュール認証プログラム(Cryptographic Module Validation Program)は、米国政府の国立標準技術研究所(National Institute of Standards and Technology／NIST)コンピュータセキュリティ部門及びカナダ政府の通信セキュリティ機関(Communications Security Establishment／CSE)により共同で運営されている。米国政府は暗号の、取扱注意ではあるが機密扱いでない(Sensitive but Unclassified)利用にあたり、認証済暗号モジュールを要求している。カナダ政府でも政府機関の機密扱いでない用途での、FIPS 140認証済の暗号モジュールの使用を推奨している。

セキュリティレベル 
FIPS 140-2は、 "レベル1" から "レベル4" と命名した四つのレベルを規定する。特定の用途でどのセキュリティレベルが要求されるのかは規定しない。

レベル1: 一番低いレベルであり、非常に限定した要件を課する; 大まかに、すべてのコンポーネントが製品品質であり、甚だしくセキュリティの欠如がないこと。
レベル2: レベル1に次の要件を加える; 物理的な改竄の痕跡を残すこと、及びオペレータの役割ベースでの認証を行うこと。
レベル3: レベル2に次の要件を加える; 物理的な改竄への耐性(モジュール中に含まれる取扱注意情報への攻撃者のアクセスを困難にする)を持つこと、オペレータのIDベースでの認証を行うこと、及び重要なセキュリティパラメータがモジュールに出入力するインタフェースと、その他のインタフェースとを物理的又は論理的に分離すること。
レベル4: 物理的なセキュリティ要件がより厳格となり、環境条件を変動させての攻撃に対して頑健であることを要求する。

要件の範囲 
FIPS 140は次に示す11の異なる分野の要件を課する。

暗号モジュールの仕様 (何を文書化しなければならないか)
暗号モジュールのポート及びインタフェース (何の情報が入出力となるか、及び分離されねばならないか)
役割、サービス及び認証（誰が何をモジュールで行うことができるか、及びこれがどのようにチェックされるか）
有限状態モデル (モジュールが取り得る高位の状態の文書化、及び状態遷移がどのように発生するか)
物理セキュリティ (改竄の痕跡を残すこと及び耐性を持つこと、また極端な環境条件での頑健性)
実行環境 (どのようなオペレーティングシステムをモジュールが利用するか、及びモジュールが使われるか)
暗号鍵管理 (鍵の生成、登録、利用、記録及び破棄)
EMI/EMC (電磁波による障害が生じないか)
自己診断テスト (何をいつテストすべきか、及びテストが失敗したときに何をすべきか)
設計保証 (モジュールが十分な設計・実装がなされたことを明らかにするために何の文書化に備えるべきか)
他の攻撃からのリスク軽減 (例えばTEMPEST攻撃に対する危険性を軽減するようモジュールを設計するならば、どのような対策をしたのか文書で言及するべき)

歴史の概要 
1994年1月11日発行のFIPS 140-1は、暗号機器のベンダー及び利用者によって構成した、政府と業界のワーキンググループが開発した。このグループはこれまでに言及した、4つのセキュリティレベル及び11の分野を同定するとともに、各レベルでの各分野における要件を規定した。

2001年5月25日発行のFIPS 140-2では、利用可能な技術及び公式の標準規格における1994年当時からの変化や、ベンダー、試験者及び利用者の団体からのコメントを考慮している。

2019年3月22日発行のFIPS 140-3が、新しい規格である。

FIPS 140-2は、国際標準規格ISO/IEC 19790:2006 暗号モジュールのためのセキュリティ要件（仮訳／Security requirements for cryptographic modules：2006年3月1日規格発行）への主要な提供文書となった。

脚注

外部リンク 
FIPS 140-3
FIPS 140-2全文 (PDF)
連邦情報処理標準規格についての一般的な情報
FIPS 140-2試験機関のリスト
和訳 (CRYPTOREC Report 2004)
暗号モジュール評価基準第0.1版 (PDF)
暗号モジュール試験基準第0.1版 (PDF)
運用ガイダンス第0版 (PDF)

140
暗号技術