SSLはインターネット上での通信を暗号化する技術。
Secure Socket Layer(セキュア・ソケット・レイヤー) の頭文字をとった用語です。
インターネット通信では、通信の途中でだれかに盗み見られたり、改ざんされたりするリスクがあります。
たとえばログイン情報やクレジット情報、住所などの個人情報を盗まれて悪用されたら大変ですね。
SSLはこういう大事な情報を暗号化してからやりとりすることで、盗み見や改ざんを防ぐ役割を持っています。


セキュリティ意識をしっかり持たないと、気づいたら身に覚えのないクレジット請求が届いたり、アカウント乗っ取られたりと痛い目見るわよ…!!
意味:SSLはインターネット通信を暗号化する技術
暗号化されていないインターネット通信はとても危ないです。
通信の途中でだれかに盗み見られたり、改ざんされたりするリスクがあります。
安全にインターネットを利用できるために、頭のいい人たちがいろいろ考えてくれました。
それは「見られても問題なければいいんじゃない?」ということでした。これが暗号化というもの。
インターネットでデータを送る時に、中身を一度めちゃくちゃな情報に変えます。これを暗号化といいます。
データが相手のもとに届いたら、めちゃくちゃな情報を元に戻します。これを復号化といいます。
暗号化してデータをやりとりすることで、通信の途中で盗み見られてもめちゃくちゃなデータなので平気ということです。
SSLのしくみ
① クライアントがサーバに接続要求
クライアントとは、普段Webサイトを見たりしてる私たちのこと。サービスを受けるお客さんだと思ってください。
サーバはサービスを提供する側のコンピュータのこと。
クライアントは、サーバに「このページ見せて!」とか「メール見せて!」とかリクエストします。
② サーバはSSLサーバ証明書と公開鍵をクライアントに渡す
サーバはクライアントからの接続要求を受けると、クライアントにサーバ証明書と公開鍵を渡します。
やりとりしようとしているサーバは、なりすました偽物である可能性もあるので、クライアントはSSLサーバ証明書でやりとりしているサーバが本物なのか確認します。
場合によっては認証局というところに問い合わせて、しっかり確認します。
③ 共通鍵をつくる
サーバが本物だとわかったところで、サーバと秘密の会話をするための共通鍵を作ります。
④ 公開鍵で共通鍵を暗号化してサーバに送る
共通鍵をサーバに渡したいですが、受け渡しの時に共通鍵を盗み見られてしまう可能性もあります。
なので、さきほどサーバからもらった公開鍵で共通鍵を暗号化します。
これで安全に共通鍵の受け渡しができます。
⑤ 共通鍵で暗号化→復号化を繰り返してやりとり
クライアントとサーバ、どちらも共通鍵を持っています。
クライアントは共通鍵で暗号化してデータを送り、サーバはデータをもらったら共通鍵で復号化します。
こうして共通鍵を使ったルールのもとデータのやりとりをすれば、盗み見や改ざんのリスクがぐっと下がります。
これがSSL通信のしくみです。
SSLとTLSの違い
SSLは、SSL/TLSと表記されることが多いです。なので「SSLとTLSってなにが違うの?」って疑問に思ってしまいますね。
SSLとTLSはほぼ同じ意味です。
くわしくいうと、SSLはTLSのバージョンアップ版。
SSLはSSL1.0から始まりSSL3.0までバージョンアップしました。そして次に生まれたのがSSL4.0ではなくTLS1.0でした。
TLSという新しい名前がついたのですが、SSLの方がなじみのある用語なので、わかりやすいようにくっつけてSSL/TLSと表記しているわけです。
SSL通信を確認する方法
WebブラウザでWebサイトへアクセスする時、ちゃんと暗号化されているのか確認することができます。
Webブラウザを使ってWebサイトを見ている時はhttp通信手順でデータのやりとりをしています。
この時、URLが「https」になっていて鍵マークがついていればSSL暗号化通信になっています。
これは「http over SSL/TLS」という「http通信を暗号化する技術」です。
httpだと暗号化されず、データ通信は平文のままバレバレで送られます。
まとめ
- SSLはインターネット通信を暗号化する技術
- 公開鍵暗号方式と共通鍵暗号方式を駆使して盗聴、改ざんを防ぐ
- TLSはSSLのバージョンアップしたもので同じ意味で使われる

見せないようにするんじゃなくて、見られても平気っていうのはすごい発想だね!

もちろん完全に安全というわけではないから、常にセキュリティの意識は高めておくことよ。
ええ!インターネットってそんなに危ないの?