HTTPS通信、証明書とは何か?

最終更新日:2022-12-30
分類:IT
 

準備

サーバ側(問い合わせ先)

  1. 公開鍵、秘密鍵を用意する
  2. 認証局から、ルート証明書、中間証明書、サーバ証明書をもらい受ける
    ※自己署名の証明書を用意するなどもあり
  3. それらをサーバにインストールする

クライアント側(問い合わせ元)

  1. ルート証明書を「信頼できるルート証明機関」に登録する

HTTPS通信で行われること(イメージ)

  1. ☆【クライアント】中間~サーバ証明書と公開鍵ください
  2. ★【サーバ】いいよ、これだよ
  3. ☆【クライアント】以下を確認します
  4. ☆【クライアント】
  5. ☆【クライアント】秘密鍵を生成し、サーバからもらった公開鍵で暗号化してサーバへ送り返します
  6. ★【サーバ】受け取ったよ、受領した暗号を復号して、生成してもらった秘密鍵をゲットしたよ
  7. ☆【クライアント】了解です、ではJSONとかバイナリデータとか個人情報とかを秘密鍵で暗号化してPOSTリクエストします
  8. ★【サーバ】受け取ったよ、リクエストを秘密鍵で復号していろいろ処理したよ、レスポンスを秘密鍵で暗号化して返すよ
  9. ☆【クライアント】受け取りました、レスポンスを秘密鍵で復号して中身を開きます

ブラウザでサーバから送られてきた証明書を確認する

Windows11,Chrome(107.0.5304.123(Official Build)(64 ビット))の場合
  1. ブラウザを開く
  2. 「https://」をつけてTLS対応されている好きなサイトへアクセスする
  3. F12キーを押す
  4. Securityタブを開く
  5. View certificateを押す
  6. 詳細タブで好きな階層の証明書を選択してエクスポートを押す
    ※末端の証明書を選べば、階層をまとめてダウンロードできる
  7. 好きな保存場所とファイル名とファイルの種類を選択して保存を押す
    ※階層まとめてのときは、「~証明書チェーン~」とあるファイルの種類を選ぶ

参考文献