データの暗号化だけでは不十分、「暗号鍵管理」が必須な理由

f:id:PentaSecurity:20210616132911p:plain

ここ最近話題となっているキャッシュレス決済やブロックチェーン、IoTといったITサービスを提供するうえで主要な役目を担っているのが、暗号技術および暗号鍵を適切に管理するための「鍵管理」技術です。ITサービスのセキュリティを確保するだけではなく、利便性や拡張性、運用容易性などにも鍵管理のメカニズムが主要な役目を担っているのです。この鍵管理に着目して、多方面にわたるITサービスを目立たない部分で必要な助力として機能している鍵管理の特徴や課題、展望などを解説していきます。

 

データ自体を守るために重要となってくる「データセキュリティ」

ビジネスのデジタル化と伴い、急速にデータが増加し続けている現状において、その増加するスピードに比例するように、それ自体を狙ったサイバー攻撃や悪意を持つプログラムが増加しています。

 

さらに現代の世間の風潮において、メールや業務ファイルをパブリッククラウド上で保管・共有することが当然のようになっており、保管されているデータが急増しています。また最近は機密性が高い多数のデータを保持している重要なシステムをクラウド化する事例も増加している傾向にあります。多様な場所に存在しているデータを守るためには、ユーザ認証やアクセス制御といった「人」や「経路」だけに着目している対策だけでは不十分な状況となっているのです。

 

なぜならば、IDやパスワードが漏洩してしまうことによって不正アクセスが可能となってしまうほかに、端末自体を紛失することによって端末内のデータが流出してしまう危険性を生じることになってしまうため、「データセキュリティ」の視点からデータ自体を守ることが求められています。

 

最近多くの企業において、データベースやストレージに格納されている重要なデータを暗号化していますが、暗号鍵の管理を極めて重要な位置づけとした確実なデータセキュリティを実現しなければ、データを暗号化していたとしても暗号鍵が盗み出されてしまうことによってすべてが無意味となってしまいます。

 

セキュリティに関する各種ガイドラインにおいても、鍵管理の重要性についてのことが指摘されており、パブリッククラウド上のシステムであったとしてもクラウド責任分界点が明確に定められているため、内部のデータの管理責任をユーザ企業が負わなければならないことになるのでデータセキュリティの重要性は環境を問わずに高まってくるのです。

 

現在の鍵管理に至るまでの変遷

少し教科書的な説明となってしまいますが、一般的に暗号文を作成するには処理手順やプロトコルである「アルゴリズム」とパラメータである「鍵」が必要になってきます。一時代前に主流となっていた暗号といえば、暗号文を作成する時も復号する時も同一の鍵を使用する『共通鍵暗号方式』でした。

 

暗号化する時に使用される「アルゴリズム」と「鍵」は通信当事者同士の秘密とされていたため、当事者間で厳重に管理する必要性が生じることによって管理コストが膨大となってしまい、運用に耐えられるだけの組織が必要となってくるので、実質的には防衛など軍事目的での利用にとどまっていました。

 

1970年代後半に軍事目的のみで利用されていた暗号技術をビジネスでも利用できるようにするため、当時の米国国立標準局(NBS)で国際標準暗号「DES(Data Encryption Standard)」が考案されました。DESはアルゴリズムを公開することを前提としていたので、当事者間では十分な強度を持った「鍵」だけを秘密にすればいいように設計された暗号方式だったのです。

 

公開されているアルゴリズムであったため、多くの研究者によって安全性が検証され、民間によって暗号通信装置を開発できるようになり、民間企業においても暗号通信の導入を進められました。ただし、通信の両端(両者)において鍵を厳重に管理する必要がある点は変わりなかったため、さらに大勢で個別の暗号通信をする場合には膨大な鍵の数を管理しなければならないという欠点があったのです。

 

このような欠点を克服するための新たな方式として、公開鍵暗号方式RSA(Rivest-Shamir-Adleman)』や鍵交換方式『DH(Diffie-Hellman)』などが相次いで登場しました。これらの方式においては自身が持っている鍵ペア(公開鍵と秘密鍵)のうち秘密鍵だけを管理すればいいため、見知らぬ大勢の人が接続しているインターネット上であっても個人がそれぞれの鍵を管理するだけで暗号通信が可能となりました。

 

このことによって、鍵が爆発的に膨大な数とならないので事前登録や申請手続きをする必要性がなくなり、これまで行き詰まっていた状態から抜け出すことに成功して、個人間においての暗号処理が加速度的に普及したのです。

 

鍵が持っている3大機能

アルゴリズムや鍵の公開性の観点から暗号方式の変遷を振り返ってみましたが公開鍵暗号方式がもたらしたメリットは、単に鍵管理の容易さだけではないのです。鍵を公開鍵と秘密鍵という鍵ペアで構成する考え方は、従来の共通鍵暗号方式が持っていた(1)守秘/秘匿機能の他に(2)デジタル署名、インターネット越しでの(3)認証といった新しい機能を生み出し、現在に至るまでのあらゆるITサービスを支えているのです。これら「鍵」で実現されている3大機能について解説しておきます。

 

まず「守秘/秘匿」は情報を暗号化することによって、アクセス権(参照権など)を持っていない人への情報漏洩を防ぐ機能です。「鍵」という秘密の情報を使用することによって、秘匿すべき別の情報を暗号化する仕組みで最も基本的な機能となっています。

 

共通鍵暗号方式と公開鍵暗号方式の両方で実現されていますが、暗号化の方法は主として通信経路自体を暗号化( SSL/TLSなど)する場合と、ファイルなどを暗号化して保存/送信する場合に分けられます。なお公開鍵暗号方式共通鍵暗号方式と比較してみると、暗号処理のスループットが低いため本文の暗号化については高速な共通鍵暗号方式(AESなど)を用いることによって、「暗号鍵」だけを公開鍵暗号方式で暗号化して共有するといったハイブリッド型が主流となっています。

 

2番目の「デジタル署名」は、署名者である本人のみが知得している秘密鍵(署名鍵)を使用して作成した署名をデータやファイルなどに付与することによって、『署名対象が改ざんされていないこと』や『署名者本人が署名したこと(否認防止)』などを保証することを確保しているので、秘密鍵(署名鍵)を知得している人が一人だけであることが重要となります。

 

共通鍵暗号方式のように複数の者が秘密鍵を共有している状況においては、この機能を実現することはできません。本人が知らないうちに別の者が署名対象を変更してしまい、新たに正しい署名を付与できる余地ができてしまうと、誰が正当な署名者であるかを区別できなくなってしまうからです。なおデジタル署名の応用版として、複数名によるグループ署名などが提案されていますが、それらも基本的には本人のみが知る秘密鍵(署名鍵)を用いて演算するものとなっています。

 

3番目の「認証」は、『証明者本人が知る秘密の情報』を確実に知得していることを検証者に示すことによって本人であることを証明するものです。よく知られている方法はOSなどへログインする際のパスワード認証で、証明者が入力した文字列(パスワード)をハッシュ化することによって、サーバ側で保存されているハッシュ値と一致しているかによって認証がされています。

 

しかし、同一の認証情報が毎回ネットワークに流出してしまうため、認証情報が盗聴されてやりとりが再現されてしまうことによって、悪意を持った第三者になりすまされる恐れがあります。このことを防止するために、毎回異なった認証情報をやりとりする方式としているのがチャレンジ&レスポンス認証です。この方式では検証者が提示する乱数(チャレンジ)に対して、証明者本人が知得している秘密の情報を使用してて応答(レスポンス)を作成して返信することで本当に秘密を知得しているかを検証するものとなっています。

 

証明者と検証者が同一の鍵を事前共有する方法と証明者の鍵ペア(公開鍵と秘密鍵)を用いる方法とがあります。前者の方法は事前にサーバ側でのユーザー登録が必要となってくるため、インターネットで初めて出会う人同士での認証には機能しませんが、後者の方法は『公開鍵に対応する秘密鍵を確かに知っていること=本人であること』を証明できるため、X.509証明書を用いたサーバ認証やクライアント認証として、インターネットでも広く利用されています。

 

適用分野の広がり

『秘密の情報すなわち鍵を知得していること』を根拠として、あらゆるITサービスを実現することが可能となっています。例えばクレジットカードによる安全な決済を支えるP2PE技術においては、PAN(クレジットカード番号)情報を、「守秘/秘匿」することによって保護するための多種多様な新しい考えが生み出されています。

 

またブロックチェーンに資金保有データを格納する暗号資産(仮想通貨)においては、資金移動トランザクションに対して「デジタル署名」が付与されているため、鍵管理(ホットウォレット/コールドウォレット)やセキュリティ対策が資産を保全するうえで非常に重要となっています。

 
さらにIoT時代に入ると人だけではなくデバイスが本物か否かの「認証」が必要となるため、デバイスごとに多数の鍵管理が発生することとなります。それぞれに鍵のライフサイクル(生成/配送/保管/利用/廃棄/更新など)の管理が要求され、また適用分野の広がりも受けて、ますます鍵(=秘密の文字列)の管理が重要となる一方で、パスワードと同様に人の管理では限界があるため、スマートフォンを鍵とする試みも出てきています。

 

今後の鍵管理の展望

鍵が持っている3大機能である「守秘/秘匿」「デジタル署名」「認証」のそれぞれについてはいずれもシンプルなものとなっていますが、適用される分野が多種多様となって新たなサービスが登場することに伴って、鍵が管理される方法もサービス特性に合致している個別の技術やノウハウが求められているのが現状です。

 

今後、鍵を用いてどのような形で新しいサービスが登場するのかを暗号技術の観点から考察してみると、暗号化したまま演算処理ができる『(完全)準同型暗号』を用いて、クラウド上に預けた機密度の高いデータを安全に処理するサービスや、検索キーワードや検索結果が第三者に漏洩しないように暗号化した状態での検索サービスなどの新サービスが期待されています。その際に重要となってくるのは、やはりサービス特性をしっかりと踏まえている鍵管理であるはずです。

 

データ暗号化ソリューション「D'Amo

 

D'Amo」鍵管理システム「D'Amo KMS」

www.pentasecurity.co.jp