暗号技術において、ゼロ化(ゼロ化とも表記)とは、暗号モジュールから機密パラメータ(電子的に保存されたデータ、暗号鍵、重要なセキュリティパラメータ)を消去し、機器が盗まれた場合にそれらの漏洩を防ぐ手法である。これは通常、データの回復を防ぐために内容を変更または削除することによって達成される。[1]
機械
暗号化が機械装置によって実行されていた場合、これは多くの場合、機械のすべての設定をゼロなどの固定された意味のない値に変更することを意味していました。数字ではなく文字設定の機械では、代わりに文字「O」がよく使用されていました。一部の機械には、このプロセスを1つのステップで実行するためのボタンまたはレバーがありました。ゼロ化は通常、キーが誤って公開されるのを防ぐために暗号化セッションの最後に実行されるか、敵に捕らえられるリスクがあるときにすぐに実行されます。[2]
ソフトウェア
現代のソフトウェアベースの暗号モジュールでは、仮想メモリ、コンパイラの 最適化[3] 、フラッシュメモリの使用などの問題により、ゼロ化がかなり複雑になっています。[4]また、ゼロ化はキーだけでなく、平文や中間値にも適用する必要がある場合があります。暗号ソフトウェア開発者は、マシンのメモリ管理を詳細に理解し、機密デバイスがセキュリティ境界外に移動する可能性がある場合はいつでもデータをゼロ化できるように準備しておく必要があります。通常、これにはデータをゼロで上書きすることが含まれますが、一部のタイプの不揮発性ストレージの場合、プロセスははるかに複雑です。データ残留を参照してください。
メモリ管理によるデータのゼロ化に加えて、ソフトウェア設計者はゼロ化の実行も検討します。
- アプリケーションがモード(例:テストモード)またはユーザーを変更するとき。
- コンピュータプロセスが権限を変更するとき;
- 終了(異常終了を含む)の場合
- 不安定性または改ざんを示す可能性のあるエラー状態の場合。
- ユーザーのリクエストに応じて;
- パラメータが最後に要求されたとき、直ちに
- パラメータがしばらく必要とされていない場合は、この可能性があります。
非公式には、ソフトウェア開発者は、必ずしも暗号化の性質を持たない機密データの上書きを意味するために、 ゼロ化を使用することもあります。
改ざん防止ハードウェア
改ざん防止ハードウェアでは、改ざんが検出されると自動ゼロ化が開始されることがあります。このようなハードウェアは、通常の電源が有効になっていない状態でも自身をゼロ化する機能であるコールド ゼロ化に対応している場合があります。
標準
ゼロ化の標準は、 ANSI X9.17 およびFIPS 140-2で指定されています。
参照
参考文献
- ^ 「FIPS PUB 140-2 - 暗号化モジュールのセキュリティ要件」(PDF) 。2023年8月25日閲覧。
- ^ リンク 16 共同鍵管理計画、CJCSM 6520.01A、2011、セクション 6b(4)(b)
- ^ “MEMSET”. 2013年2月21日時点のオリジナルよりアーカイブ。2013年3月21日閲覧。
- ^ “アーカイブコピー”. 2013年3月7日時点のオリジナルよりアーカイブ。2013年3月21日閲覧。
{{cite web}}: CS1 maint: アーカイブされたコピーをタイトルとして (リンク)
