まとメモ

29才でエンジニアに転職したエンジニアのメモ

httpsとは?

httpsとは「Hypertext Transfer Protocol Secure」の略称で、SSL/TLSプロトコルにより暗号化されたhttp通信の事

  • 「http」から始まっている場合は、通常のhttp通信であり、データの送信は平文で行われている。
  • 一方で、「https」から始まっている場合は、SSL/TLSプロトコルを利用した、暗号化通信が行われている。
  • SSL暗号化通信では、データは暗号化されてやりとりされるため、複合化ができない第3者からは、内容を読みとくことができない。
  • 個人情報や認証情報、機密情報等のやりとりが必要なサイトやページで導入することで、盗聴・なりすまし・中間者攻撃・情報漏洩等の対策として活用されている。

httpsの仕組み

SSL(SSLサーバ証明書)を用いたhttps暗号化通信は、「共通鍵暗号方式」と「公開鍵暗号方式」の両方を用いた「ハイブリッド方式」とも呼ばれる仕組みで行われる。

  1. HTTPSリクエス
  2. SSLサーバー証明書と公開鍵を送る
  3. SSLサーバー証明書は 3 または 4階層からできていて、その最上位の階層にあるのがルート証明書
  4. ルート証明書Webブラウザにもあらかじめ情報が登録されていて、サーバーから送られてくる証明書と照合する

    ハッシュ関数というアルゴリズムを用いて「証明書が改竄されていないか」といったことを確認します。 照合した結果、ルート証明書にある認証局の署名が一致すれば、信頼できる証明書と判断します。 ブラウザに登録されるルート証明書は、ブラウザのバージョンアップなどに伴ってアップデートされていて、新たなルート証明書の追加や、安全性に疑いのある証明書の削除などが随時行われています。

  5. 証明書を確認(クライアントは、受け取った SSLサーバー証明書の階層を辿りながら、サーバー側のルート証明書とブラウザ自身に登録されているルート証明書を照合する)
  6. 共通鍵を生成
  7. 共通鍵を公開鍵で暗号化してサーバーに送る
  8. 秘密鍵で公開鍵を復号し、共通鍵を取り出す→サーバーとクライアントの両方が安全に共通鍵を持つことができた
  9. SSL暗号化通信
  10. 共通鍵を使って暗号化通信をする

SSL/TLSとは?


SSLは"Secure Sockets Layer"の略称で、通信の暗号化、通信相手の認証、通信内容の改ざん検知の機能を有した、安全性の高いインターネット通信を行うためのプロトコルである。 現在仕組みとしての「SSL」は使われていない。 TLSは"Transport Layer Security"の略称で、SSLの後継として作成された。 実際に現在「情報を安全にやりとりするための仕組み」として使われているのが「TLS」である。 SSLの名称が広く普及しているため、SSLTLSを総省して、「SSL」と呼ばれることも多い。

  • 通信の暗号化(盗聴を防ぐ)
    • SSL証明書を利用したSSL暗号化通信では、通信内容は判読が困難な乱数に変換・暗号化される。
  • サーバの正当性の確認(なりすましを防ぐ)
    • SSL証明書を正当性の確認のために利用する。
  • メッセージ認証(改ざんを防ぐ)
    • 送信側のデータと受信側のデータが同一であるかを確認するために、一方向ハッシュ関数で確認する。
SSL」 は仕組みとしては使われていないけど、「情報を安全にやりとりする」という意味の言葉として使われている
TLS」 は「情報を安全にやりとりする」ために実際に使われている仕組み

SSL証明書とは?


SSL証明書とは、SSL/TLSの暗号化通信を行うのに必要な、電子証明書です。 SSL証明書にはドメイン認証(DV)、組織認証(OV)、EV認証(EV)の3段階の認証レベルがあります。 認証レベルによって、SSL/TLS暗号化通信の機能や強度に違いはありません。 しかしながら、認証レベルにより、 * 取得可能な対象 * 認証局による確認項目 が異なるため、発行されるSSL証明書の信頼性に大きな違いがあります。 * ドメイン認証タイプ(Domain Validation) * ドメインの所有権を確認するシンプルなSSLサーバ証明書 * 企業認証タイプ(Organization Validation) * ドメインの所有権に加えて、企業の実在性を確認するSSLサーバ証明書 * 企業認証タイプ(Extended Validation) * 標準化された業界基準により、厳格な認証プロセスを経て発行するSSLサーバ証明書

Q.SSL証明書の確認方法は?
A,証明書情報のプロファイルを確認する

[GeoTrust] 証明書の階層構造について

SSLに関してよくある10個の質問 | DigiCert & Symantec

中間証明書(SecureCoreドメイン認証SSL用)|SSLボックス

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

SSL証明書の内容と確認する方法|GMOグローバルサイン【公式】

SSLサーバ証明書の認証レベル | 基礎から学ぶSSL入門ガイド | CSP SSL
SSL証明書について簡単にご紹介! | 技術情報ブログ | マネージドホスティングのディーネット

今さら聞けないSSL証明書とは、DV、OV、EVとは、常時SSLについて | レンタルサーバーのCPIスタッフブログ

SSLサーバ証明書の種類と比較 | DigiCert & Symantec

SSLサーバー証明書 各証明書の見え方|Zenlogic - ファーストサーバ株式会社のレンタルサーバー

httpsとは?httpとの違いとSSL暗号化通信の仕組み

誰でもわかる SSL (HTTPS) 通信の仕組み [図解]

SSLとは? | 基礎から学ぶSSL入門ガイド | CSP SSL

HTTPS と SSL と TLS:その違いを5分でわかりやすく解説! – キュービストブログ

第1回 HTTPS(HTTP over SSL/TLS)とは

SSL/TLS サーバー証明書の認証レベルとは?|DigiCert SSL/TLS 証明書|DigiCert

TLS1.2への移行の必要性~TLS1.2への有効化が始まる現状の動きとは | GMOグローバルサイン