リモートワーク・ご商談等のオンライン対応について

ギークスジョブの掲載案件はリモートワークでの参画がご相談可能です。
また、現在実施している個別説明会、各種イベント、顧客企業様との商談打ち合わせはオンラインでご対応いただけます。

5分でわかるSSL通信 SHA-1、SHA-2の違いとは?

作成日:2020/09/24 (木) TECH

この記事は公開から1年以上経過しているため、情報が古い可能性があります。

5分でわかるSSL通信 SHA-1、SHA-2の違いとは?

ユーザーが安全にWebサイトを利用できるよう経路上での盗聴を防ぐ「暗号化」と、データ通信途中の「改ざん検知」を同時に実現するために使用されている技術が、SSL通信です。ここでは、それがどのような仕組みによって実現されているか、またSHA-1、SHA-2といった技術がどういったものかについて知っていきましょう。

SSLとは?

SSLとは?の画像

SSL(Secure Sockets Layer)とは、インターネット上で通信を暗号化する技術で、インターネット上でやり取りされている個人情報(名前、住所、電話番号、クレジットカード番号など)を安全に送受信するための通信プロトコルです。

普段私たちがインターネットを利用する際には、Webブラウザを利用してWebサイトを閲覧します。その時、主に使っているのはHTTPというプロトコルです。多くのWebサイトのURLは「http://」から始まりますが、これはHTTPを使ってそのWebサイト(サーバ)にアクセスすることを表しているのです。しかし、このHTTPの通信は情報を保護することを全く考慮せずに作られた仕様であるため、ネットワークの経路上でちょっと悪さをすれば、どんなやり取りをしているかを誰でも盗み見することができます。

それを防ぐために作られたのがSSLという仕組みです。SSLが利用されているページは、URLの「http://」の部分が「https://」となっています。SSLを使用したWebサイトには、「電子証明書」と呼ばれるサイトの身分証明書のようなものが発行されており、それを使用することで、そのサイトが「信頼できるものである」と証明します。電子証明書は、VerisignやSymantecのような認証局によって発行されています。

どのような仕組みでSSL通信を行うのか?

どのような仕組みでSSL通信を行うのか?の画像

電子証明書には、情報を暗号化するのに必要な「公開鍵」が含まれています。この電子証明書をWebサーバにインストールすることにより、SSL通信が利用できるようになります。

ユーザーがWebブラウザからWebサイトにSSLを使用してアクセスすると、Webサーバからは公開鍵を付与したSSLサーバ証明書がWebブラウザに送付されます。Webブラウザでは、あらかじめインストールされたルート証明書(※1)でSSLサーバ証明書を検証し、信頼できる認証局から発行された証明書かどうかをチェックします。

そのサーバ証明書が正規のものであるかをチェックする際には、ハッシュ関数が使用されます。具体的には、サーバ証明書に付与された署名(サーバ証明書をハッシュ化し、認証局の公開鍵で暗号化したもの)を復号した内容と、Webサーバから受信したSSLサーバ証明書をハッシュ化した値を比較します。この値が一致すれば、信頼のおける認証局から署名を受けた正規のWebサイトであることがわかります。

そして、このハッシュ化を行う際に用いられる技術が、SHA-1、SHA-2と呼ばれるハッシュ化アルゴリズムです。
それぞれどのようなものか、順に見ていきましょう。

※1…認証局が発行するデジタル証明書。Webサーバに置かれている証明書との突合を行うため、暗号通信を利用するWebブラウザにはこの証明書があらかじめ組みこまれています。

SHA-1アルゴリズム

SHA-1とは、任意の長さの元データを元に160ビットの値を生成するハッシュ関数です。SHA-1はNSA(米国家安全保障局)が考案し、1995年にNIST(米国立標準技術研究所)によって連邦情報処理標準のひとつとして標準化されました。SHA-1はSHAシリーズの中で最も広く用いられており、多くのアプリケーションやプロトコルに採用されています。

SHA-2アルゴリズム

SHA-2は、前規格であるSHA-1を元に、多くの改良が加えられたハッシュ関数です。こちらは2001年にNSAが開発し、NISTが標準に採用しました。SHA-2にはSHA-224、SHA-256、SHA-384、SHA-512の4つのバリエーションがあり、末尾の数字がハッシュ値のビット長を表しています。最長であるSHA-512が安全性が高いですが、一般的にはSHA-256が最もよく利用されています。

SHA-1からSHA-2への移行が推奨されている

異なる元データから同一のハッシュ値が生成される可能性が低ければ低いほど、そのハッシュ関数は安全なものとなります。もしも、異なる元データにも関わらず同一のハッシュ値が生成されてしまえば、それを成りすましに悪用されてしまいます。

元々SHA-1は、2の80乗分の1という、非常に小さな確率でハッシュ値の衝突が起きるとされていました。しかし2005年、SHA-1に対する効果的な攻撃法が発見され、より少ない試行回数でそれを発生させる事ができるとわかってきました。近い将来、コンピューターの性能がさらに向上しさらに高速な演算ができるようになってしまえば、いずれこのアルゴリズムそのものが破綻するのは自明です。そのため、より強固なハッシュ関数であるSHA-2への移行が推奨されております。

おわりに

私たちが何気なく閲覧しているWebサイトは、SSL、そしてハッシュ化の技術によって支えられています。その基礎知識を知ることで、とっつきづらい印象のあるセキュリティの技術が、少しだけ身近に感じられるようになるのではないでしょうか。

ギークスジョブはITフリーランス専門エージェントとして20年以上にわたり、ITフリーランスのご支援を行っています。
フリーランスを初めて検討される方はもちろん、現在フリーランスとしての今後に不安を感じている方、今よりもっと充実したフリーランス生活を楽しみたい方は、ぜひお気軽に相談ください。ITフリーランス専任のキャリアアドバイザーがマンツーマンでサポートいたします。


▽ 無料登録(エントリー)はこちら
https://geechs-job.com/entry


まだフリーランスになることに迷いがある方へは、独立のご相談から承ります。これまでのご経歴やキャリアの目標をお伺いしながら、お一人おひとりに寄り添ったキャリアプランのご提案をいたします。


▽ 独立相談会への無料エントリーはこちら
東京:https://geechs-job.com/event/details/1
大阪:https://geechs-job.com/event/details/2
福岡:https://geechs-job.com/event/details/3
名古屋:https://geechs-job.com/event/details/189

その他のおすすめ記事

5分で分かるガベージコレクションの仕組み|ITフリーランスをサポートするギークスジョブ

ITフリーランスの方のための『お役立ち情報』をご紹介しています。この情報のテーマは5分で分かるガベージコレクションの仕組みです。geechs job(ギークスジョブ)では、「フリーに生きる」ためのノウハウをご紹介し、ご希望のキャリアやライフプランを実現できるように、サポート致します!

シェア

スキルを収入上昇につなげよう

日本最大級のITフリーランス専門エージェント ギークスジョブ

無料登録はこちら

いきなりフリーランスとして活動するのは不安...という方へ

業界・専門知識の豊富なコーディネーターが、関東、関西、福岡で無料セミナーを実施しています

こんなお悩みはありませんか?

  • 自分のスキルでフリーランスになれるか不安
  • 安定した収入を得られるのか不安
  • 税金や保険などの手続きがどうなるのか知りたい

まずは、ギークスジョブの無料イベントに参加してみませんか?
まだ本格的に活動する予定がない方も、情報収集の手段として活用されています。
不安や小さな不明点を解消する場として、是非ご利用くださいませ。

イベント一覧を見る
上に戻る