SSLについて

やったこと

  • dockerでどハマりしたのでさくらVPSにしてdebian9環境ににSSHログインした。パスワード不要にし、rootとport22番でのログインを不可に。
  • SSLについてリンクで学習

SSL概要

"http://"ではなく"https://"で始まるURLの時に、 クライアント→SSLTCPTCPSSL→サーバーの流れで SSLが間に入り情報の暗号化と復号化をしている。

仕組み

共通鍵とペアとなる秘密鍵をクライアントとサーバそれぞれが保持しているので、それが流出しない限り復号化できないので安全にやり取りが出来る。 また共通鍵そのものも直接送り合うのでなく、その基となるものをやりとりして、共通鍵を生成し、共通鍵の漏洩も防止している。

暗号通信の前処理

暗号通信の準備作業がハンドシェークプロトコルという。 この一連の準備作業はクライアント、サーバ間で9回程やりとりされている。(すさまじい速度)

認証局と証明書

サーバの信頼性を証明する証明書があり認証局が発行している。(中間)認証局より上位の認証局が下位の認証局を証明し、一番上位にあたるのがルート認証局がある。 PCに証明書があらかじめ入っており、それを使ってルート認証局の自己証明書の正当性をチェックする。 調べてみると、自分のmacには金融機関の証明書やルート認証局としてBaltimore CyberTrust Rootの証明書が入っていた。また有効期限の切れているものも確認できた。

所感

証明書について知り、OSのアップデートでセキュリティを担保する意味合いが少し理解できたように思う。