Shinichiro Yamamoto

山本 慎一郎

「暗号鍵管理ガイダンス」公開のイメージ画像

「暗号鍵管理ガイダンス」公開

「暗号鍵管理ガイダンス」が公開されました。
一通り読んでみましたが、やるべきことが分かりやすく示されていて、とてもよく整理されたガイダンスでした。
特に、難しい要求事項を、ガイダンスとして分かりやすくかみ砕いている部分は、実に秀逸だと思います。(専門家向けではありますが)

情報処理推進機構(IPA)
暗号鍵管理ガイダンス Part 1 (第1.1版)
https://www.ipa.go.jp/security/crypto/guideline/gmcbt80000005u7d-att/ipa-cryptrec-gl-3004-1.1.pdf

まず、この資料の目的は『どうやって暗号鍵を安全に管理するか』です。
以前、CRYPTRECのセミナーなどに参加した際に、『どんな暗号化方式が安全か』については、色々と知識を仕入れてきました。
今回は、それらの安全な暗号化方式を利用している前提で、どうやって管理すれば安全か、というのが論点になります。

改めて言うほどのことではありませんが、どれだけ安全な暗号化方式を用いていても、管理がずさんでは到底安全とは言えません。
そのことは、この資料の冒頭でも指摘されていて、暗号学的に極めて解読が難しい暗号化方式を突破するよりも、鍵管理の隙を狙うほうがよっぽど簡単だとしています。
この点については、小難しいことを言わなくても、皆さん経験則的にご理解いただけると思います。

では本題です。
暗号鍵を安全に管理するにはどうしたらよいのか。

結論から言うと、この資料を読んでくださいということになるのですが、それでは感想文の意味がありません。
少し、ポイントを絞って説明したいと思います。

まず、何より大事なのが、暗号鍵のライフサイクルを明確にすることです。
同資料では、NIST SP800-57 Part1 Rev5を元にした概要が示されています。
その中では、暗号鍵のライフサイクルには6つの状態があり、それらの中で状態が遷移していくとされています。

(図2-5 鍵状態及び遷移の例 引用)

暗号鍵管理では、このライフサイクルをしっかりと意識することから始まります。
そのうえで、ステージにおいて、どのような規定やプロセスが必要なのかを、『漏れなく』考えていくことが重要です。
この『漏れなく』という点において、この資料が大変役に立ちます。

次に、今述べた通り、必要な規定やプロセス、あるいは条件などを、漏らすことなく明確にすることです。
どのように明確にするかについては、資料の中に記載がありますが、例えば、次のような項目が示されています。

『CKMS 設計は、いつ、どのように、どのような状況で失効が実行され、失効情報を依拠する当事者が利用可能になるかを明記しなければならない。』
(⑤鍵失効機能への要求事項より引用)

暗号鍵にとって、鍵の失効(鍵を使えなくすること)は極めて重大な出来事です。
暗号鍵が漏えいしたり、そもそも申請に不備があった場合などには、速やかに鍵を失効させ、使用できなくする必要があります。
この鍵の失効について、この箇所では、『いつ』『どのように』『どのような状況』で失効が実行されるのかを定めておきなさい、と書かれています。
ですので、このガイドラインに従って、『暗号鍵漏えいの連絡があったときに』『システム管理者の手によって』『CAに失効の届け出をすることで失効する』などのような取り決めとなります。(※)
(※同資料によれば、もっと具体的な記述にすべきだが、ここの目的は例示であるので、参考例として示す)

他では、暗号鍵の管理ということでどうしても機密性や完全性に目が行きがちですが、可用性などの観点からも規定が必要だと述べられています。
すなわち、ユーザが暗号鍵を使いたいと思ったときに、何の問題もなく使える、という性質も必要だということです。

また、私が失念していた例として、『攻撃者が暗号化された通信データを先に窃取しておいて解読が可能になった時期に復号を行う攻撃』というものも記載されていました。
確かに、現時点では解除できない暗号化でも、量子コンピュータなどで解読できるようになった時点で復号できれば、大量の個人情報などを盗むこともできそうです。
住所や電話番号は変わるでしょうが、氏名や生年月日は解読できるようになった時点でも同じ可能性が高いです。
この場合、システムが破棄されるまでの安全性だけでは十分でなく、情報が有益である期間、安全性が確保されるなどの考慮が必要になります。
当然、考慮すべき点も増えることになります。

このような点も含めて、同資料には暗号鍵の安全な管理のために必要な事項が網羅されています。
私自身、製作したシステムで暗号化を使用したものがありますが、正直、ここまで細かくは定められていませんでした。
もちろん、まったく考慮していなかったわけではなく、システムの規模や重要性などを鑑みて、そこまで厳格な規定は必要ないだろうと判断した結果ではあります。

ただ、先ほども失念していた点があったように、今後は不要だと判断する前に、一度思い返すようにするといいかなと思いました。
せっかく読み切った資料ですので、しっかりと活用していきたいですね。

それでは、暗号鍵の管理の大変さに改めて気づかされた、山本慎一郎でした。

お問い合わせ→