このページの本文へ

2011年には2048ビット鍵長へ移行!

電子証明書に近づく 「暗号アルゴリズム 2010年問題」

2010年08月27日 09時00分更新

文● TECH.ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

暗号アルゴリズムの2010年問題とは、NIST(米国商務省国立標準研究所)が米国政府の標準暗号技術をより安全なものへと移行させてい く方針を提示していくことから生じる問題を指す。この問題でもっとも影響が大きいのは、電子証明書だ。

SHA-1、1024 ビット鍵長のRSA 公開鍵暗号は危ない

 日進月歩で技術が進歩しているコンピューターの世界では、最新技術がいち早く陳腐化してしまうことも多い。その代表が、データの秘匿性を確保する暗号の技術だ。

 1980年代、武器として扱われていた暗号は、いまではインターネットの安全性を支える基盤技術としてさまざまな製品やサービスに組み込まれるまでになった。こうした暗号は、ISO(国際標準化機構)やIETF(Internet Engineering Task Force)などでの標準化も行なわれている。しかし、現実面で大きな影響力を持つのが、米国政府の情報システムにおいて採用される標準暗号技術を策定するNISTの動向である。現在でもNISTの策定する米国政府の標準暗号が、コンピューターの世界でデファクトスタンダードとなっている。

 このNISTによって2004年8月に示されたのが、2011年に既存の暗号技術からより新しい技術に移行するというガイドラインだ(図1)。これはコンピューターの処理能力の向上や暗号解読技術の進展から考え、2010年には安全性を担保できなくなるとNISTが判断したことを意味する。もう少し端的にいえば、いままでの技術で暗号化されたデータは2010年をすぎれば、解読されてもしょうがないと勧告されているわけだ。

NISTのガイドライン

 具体的には、まずSHA-1(SecureHash Algorithm)というハッシュ関数アルゴリズムが限界を迎えつつある。ハッシュ関数は、同じ関数を用いながら同じメッセージを生成するのが困難という「衝突困難性」という特性を活かし、メッセージの偽造や改ざんを検知するのに用いられる。ハッシュ関数は証明書のデジタル署名にも応用されており、MD5(Message Digest 5)やSHA-1、SHA-2などのアルゴリズムがOSやアプリケーションで用いられている。

 1990年代初頭に開発されたMD5はすでに脆弱性が明らかになっており、MD5によってデジタル署名された証明書は、すでにゲーム機であるPlayStation 3 200 台を用いてクラックされ、偽造が成功してしまった。さらにこのMD5の後継として用いられているSHA-1も、2005年に特定の条件において、この衝突困難性が満たせないことが明らかになった。そのためNISTは、2011年にはハッシュ値が160ビットのSHA-1から、224ビット以上のSHA-2への移行を求めている。

 もう1つが公開鍵暗号の代表的なアルゴリズムであるRSAの鍵長の問題だ。RSAは大きな数の素因数分解が難しいことを前提に構成されており、現状では1024ビットの鍵長が用いられている。しかし、2005年には663ビットの素因数分解が成功し、今年の1月にはNTT 情報流通プラットフォーム研究所が海外の研究機関と共同で世界記録となる768ビット(10 進数で232桁)までの素因数分解に成功した。こうなると、1024ビットの鍵長ではすでに限界が見えてしまった。こうした状況を見越し、NISTでは2011年にはRSAアルゴリズムの利用において2048ビットの鍵長に移行することを求めている。

電子証明書が偽造される?

 この暗号アルゴリズムの移行は、基盤技術の大きな変更を意味する。われわれに身近なところで影響がでてくるのは電子証明書の分野である。

 電子証明書はSSL(Secure Sockets Layer)におけるサーバー認証など、まさに現在のWebにおけるセキュリティの基盤となっている部分で用いられている。電子証明書を発行する事業者は、早急にSHA-1 以上や2048ビットの鍵長といった要件を満たす必要がある。

 電子証明書事業者は、電子証明書を発行する認証局の電子証明書に上位のCA(認証局)が署名を行なうことで安全性を担保している。だが、その最上位にあたるルートCA証明書において、現在でも1024ビットの鍵長で運用を行なっているところがいくつか存在する。そのため、暗号アルゴリズムの解読が成功し、暗号が解読されたり、同一となるハッシュ値が生成された場合、ユーザー情報が解読されたり、本物として動作する偽物の証明書が発行される可能性がでてくるのだ。

 現状、SHA-2 への移行は端末の処理能力の問題が大きいため、業界でのコンセンサスが取れておらず、対応に遅れがでている。一方で、RSA 2048ビット鍵長への対応はもはや待ったなし。2011年からはルート証明書から中間証明書、そしてエンド証明書まで、すべて2048ビットの鍵長に対応する必要がある。

注目したい各社の2010年問題への対応

 こうしたNIST のガイドラインにあわせ、各電子証明書事業者ともこの2010年問題への対応を次々と発表した。具体的には、中間CA証明書の再インストールや1024ビット鍵長のCSR受け付けの中止などの施策が謳われている。自社でSSLサーバー証明書を入れているのであれば、各事業者の対応について確実に情報収集を行なう必要がある。

 どの事業者でも2010年問題への早急な対応の必要性を謳っているが、2048ビット鍵長への対応はかなり足並みが異なっている。たとえば、ベリサインやサイバートラスト、ソートなど古くからビジネスを展開している事業者は、やはりルートCA証明書の鍵長1024ビット対応が残っている状況だ。一方で、後発となる事業者は、すでにルートCA証明書の2048ビット鍵長への対応が済んでいる。たとえばグローバルサインの場合、サービス開始当初から2048ビット鍵長のルート証明書を提供しているため、エンドツーエンドで2048ビットが完了している状態だ。

 ただ、接続端末がPCの場合はあまり心配はない。処理能力も高く、リソースも豊富で、アップデートの仕組みがOSに組み込まれているためだ。つまり、2048ビット鍵長のルートCA 証明書に更新すれば、2011年も問題なく使える。問題は、ルート証明書の入れ替えが難しい携帯電話への対応だ。

 特に最大シェアを誇るベリサインの場合、長い期間1024ビット鍵長のルートCA証明書を携帯電話に搭載してきた。そのため、2048ビット鍵長のルートCA証明書に移行してしまうと、下位互換性を確保できない。そこで、同社はルートCA 証明書と中間CA 証明書の間にクロス証明書を挟んだ4階層の構造を取る。この方法を使うと、1024ビット鍵長のルートCA 証明書のみが登録されている端末から検証しても、エラーが表示されない。確かに利便性は高いが、1024ビット鍵長のルート証明書であることには変わりないため、鍵長の強度が1024ビットに引きずられてしまう点は留意すべきだ。

クロス証明書による証明書のカバー率向上

 今後、WebブラウザーでもNIST の勧告に準拠したルート証明書の更新が行なわれる予定だ。年末にかけて、2048ビット鍵長への対応が本格化すると思われるので、情報収集は怠らないようにしたい。

カテゴリートップへ