FIPS について
FIPS 140-2 の刊行物『Security Requirements for Cryptographic Modules』には、暗号モジュールに対する米国政府の要件が詳細に記載されています。FIPS 140-2 では、暗号モジュールがハードウェア、ソフトウェア、ファームウェア、または何らかの組み合わせのセットで、暗号機能またはプロセスを実装し、暗号化アルゴリズムおよび任意のキー生成機能を含み、明確に定義された暗号境界の内部に位置しなければならないと定義しています。
FIPS は特定の暗号化アルゴリズムがセキュアであることを条件とするほか、ある暗号モジュールが FIPS 準拠であると称する場合は、どのアルゴリズムを使用すべきかを指定しています。
FIPS のセルフテスト
暗号モジュールは、自身の正常な動作を保証するために、電源投入時セルフテストと条件付きセルフテストを実行する必要があります。
電源投入時セルフテストは、デバイスの電源が投入された後に自動的に実行されます。デバイスが FIPS モードになるのは、すべてのセルフテストが正常に完了した後だけです。いずれかのセルフテストが失敗すると、デバイスはシステム メッセージをログに記録し、エラー状態に移行します。
デバイスは、既知解テスト(KAT)という暗号化アルゴリズムを使用して、デバイス上に実装されている FIPS 140-2 で承認された暗号機能(暗号化、復号化、認証、および乱数生成)ごとに FIPS モードをテストします。デバイスは、このアルゴリズムを、すでに正しい出力がわかっているデータに対して適用します。次に、計算された出力を、以前に生成された出力と比較します。計算された出力が既知解に等しくない場合は、KAT が失敗します。
適用可能なセキュリティ機能または操作が呼び出された場合は、条件付きセルフテストが自動的に実行されます。電源投入時セルフテストとは異なって、条件付きセルフテストはそれぞれに関連する機能がアクセスされるたびに実行されます。
条件付きセルフテストでは次を含むテストが行われます。
- ペアワイズ一貫性テスト
-
このテストは、公開キーまたは秘密キーのペアが生成されたときに実行されます。
- 連続乱数ジェネレータ テスト
-
このテストは、乱数が生成されたときに実行されます。
また、Cisco TrustSec マネージャは、暗号化されたテキストが決してプレーン テキストとして送信されないようにするためにバイパス テストを実行します。
(注) |
CTS に対応したポート上でバイパス テストが失敗すると、それらの対応するポートのみがシャットダウンされます。バイパス テストは、データ パスの輻輳によって発生したパケット ドロップのために失敗することがあります。このような場合は、そのポートを再び立ち上げてみることを推奨します。 |
FIPS エラー状態
システムが FIPS モードで起動されると、スーパーバイザおよびラインカード モジュール上で FIPS 電源投入時セルフテストが実行されます。これらの起動テストのいずれかが失敗すると、システム全体が FIPS エラー状態に移行されます。この状態では、FIPS の要件に従って、すべての暗号キーが削除され、すべてのラインカードがシャットダウンされます。このモードは、デバッグのみを目的にしています。
スイッチが FIPS エラー状態になった後、ラインカードをリロードすると常に、そのラインカードが障害状態に移行されます。スイッチを FIPS モードに戻すには、再起動する必要があります。ただし、スイッチが FIPS モードになった後、ラインカードのそれ以降のリロードまたは挿入で電源投入時セルフテストが失敗すると常に、そのラインカードにのみ影響を与え、対応するラインカードのみが障害状態に移行されます。