時代はSHA-1ではなく、SHA-2なのです。

こんにちは。 グローバルソリューション事業部の担当Sです。
SSLサーバ証明書関連業務に携わっており、今回このtechblogで記事を書くこととなりました。

さて最近の SSL といえば、世間を騒がせている?(あまり表立ってはいないかもですが。。) SHA-2のお話しをさせてください。

 

そもそもSSLサーバ証明書って何?

そういえばSSLサーバ証明書とは何だっけ?何ができるんだっけ?という方がいらっしゃるかもしれません。
簡単にいうと通信の暗号化と WEBサイトを運営する運営者の身元を確認できる という2つの機能があるセキュリティ向上のためのツールです。
このSSLサーバ証明書を利用していると、暗号化通信だけでなく、この不透明なWEBの世界の中で「WEBページ閲覧者が WEBサイトを運営する運営者の身元を確認」することができるのです。

 

で、 SHA-2 って何?

SHAはハッシュ関数の1種です。(ちなみにシャーと読みます)
証明書へのデジタル署名に利用される技術(主に改ざん検知)に利用されています。
SHA-1は2005年に脆弱性が発見されていました。そのSHA-1の後継が、SHA-2になります。
ちなみに通常はSHA-2でよいかと思いますが、正確にはSHA-2には他にSHA-384, SHA-512等色々な種類があるので、ここではSHA-2はその中のSHA-256として説明します。

今までCA/Browser Forum というSSL関連組織が集まった業界団体により、“SHA-1の使用はSHA-2に対応するブラウザが一般に広く普及するまで”という条件で利用されていました。

ところが、マイクロソフト社よりSHA-1の利用の停止の案内(といいますか、ルート証明書ポリシーの変更)があり、事実上 SHA-1のSSLサーバ証明書はSHA-2への移行が求められています。
その後、各ブラウザベンダーおよび CA/Browser Forum からそれぞれSHA-1の利用に対して警告表示を出したり、 利用の停止 をする案内が出ています。

例えば CA/Browser Forum は、最新Baseline Requirements (簡単にいうとSSLサーバ証明書を発行する際の取り決めのようなもの)にて、以下のような案内を出しています。

  • 2015年1月16日以降、満了日が2017年1月1日を超えるSHA-1証明書の発行を行うべきではない(SHOULD NOT)
  • 2016年1月1日以降、SHA-1証明書を発行してはならない(MUST NOT)

<参考>
Baseline Requirements : https://cabforum.org/baseline-requirements-documents/
Ballot 118 – SHA1 Sunset : https://cabforum.org/2014/10/16/ballot-118-sha1-sunset/

 

SHA-2にしたほうがいいの?

結論からいうと、SHA-2にしたほうが良いです。SHA-1のままでは、いずれ「https://~」で始まるWEBページが見れなくなることが想定されます。
これは自己証明書等含め、SSLサーバ証明書全てに該当します。
ただし、無条件に変えた方がいいのかというとそういうわけでもなく、サーバ・クライアント環境の両方に対応している必要があります。
かなり大雑把に説明すると 一部のガラケー、フューチャーフォンと呼ばれる携帯電話やかなり古いバージョンのブラウザ、サポート期限がもうすぐ切れるもしくは既に切れているような古いOSのPCから、WEBサイトが見れなくなる可能性があります。各ベンダーの解説ページのほうがわかりやすいので、気になる方はそちらでご確認ください。
上記の環境からも見れるようにしたい場合は一旦SHA-1を検討する必要があるかもしれません。
ただし、SHA-1のSSLサーバ証明書は、 最長2015年12月31日までしか発行できません。恐らくその前に各SSLベンダーは証明書発行をできないようにする可能性も十分にありますので、どちらにせよ長くは使えません。
そのため、この機会に新しい端末や、サーバ環境にしておいた方が建設的ではあります。
(サポート期限も切れますしね。。)

あくまでご参考程度ですが、各ブラウザの案内のまとめは以下のとおりです。
※ 知る限りの現時点の情報をまとめているため、今後情報の変更がある可能性があります。

 ルート証明書ポリシー各ブラウザの対応
Internet ExplorerOS依存認証局は、2016年1月1日までに新しいSHA1 SSL証明書の発行を停止しなければならない
Windowsは2017年1月1日でSHA1証明書でのSSL通信を拒否する

http://social.technet.microsoft.com/wiki/contents/articles/1760.windows-root-certificate-program-technical-requirements-version-2-0.aspx
Firefoxブラウザ依存2017年1月1日後の有効期限をもつSHA1 SSL証明書を2015年初期リリース予定のFirefox上でエラー表示を開始する可能性有

https://blog.mozilla.org/security/2014/09/23/phasing-out-certificates-with-sha-1-based-signature-algorithms/
ChromeOS依存
※ 但し今回の件でブラウザ依存要素有
有効期限別(2016/1/1 ~ 2017/1/1以降)に段階的なエラー表示をおこなう

http://blog.chromium.org/2014/09/gradually-sunsetting-sha-1.html

なお、弊社で購入いただいているSSLサーバ証明書は、既に更新の際に順次SHA-2への切替をおこなっておりますのでご安心いただければと思います。
(逆にどうしてもSHA-1を利用したい場合は、更新前にご相談いただければ可能なかぎり、個別に対応します)

更新時の年数が複数年でかなり長期のものを購入している場合は、既に上記に該当している可能性があります。2017年1月1日以降の有効期限の証明書を持つ場合は特にご注意ください。ちなみにSHA-1かどうかは、ブラウザ上で証明書のプロパティを見たり、各ベンダーのチェックツール等で確認できるので試してみてくださいね。

最近はこういったポリシー・ルール変更が多いので、あまり長い証明書を買うともしかしたら損する場合が多いかもしれません。

それでは今回はこの辺で。

 

 

Share on LinkedIn
LINEで送る
Pocket

claraer

claraer