怠惰の極み

怠惰な学生かもしれない

TLS/SSL雑感(いいえ)

もうすぐ去年のセキュキャンから1年ですねー(いつを基準にするかにもよると思いますが)

例によってリレーブログでございます。このリレーブログも7月末で一区切りということで、僕が書くのはこれが最後だと思います。 前回の方の記事はこちらpotaxyz.hatenablog.jp

さてさて、今回のテーマはTLS。そういえば今年からセキュキャンに協賛しているwolfSSL Japan合同会社からTLS1.3の本をいただきました。ありがとうございます!まだ読み終えていないので夏休み中には読み終えることを目標にしようと思います。夏休みのタスクが溢れてきていますね。

TLSSSL

今回のお題のTLSと同時によく聞く言葉がSSLってやつですね。TLSがTransport Layer Securityの略で、SSLがSecure Sockets Layerの略です。どちらもインターネット上でデータを暗号化して送受信するためのプロトコルですが、SSLTLSの元となったプロトコルTLSSSLの後継といえます。最新のバージョンはTLS1.3でRFC 8446で指定されています。

HTTPSTLS

まぁTLSが使われている場面といえばこれでしょう。HTTPSWebブラウザがWebサーバと通信するときに使う通信プロトコルであるHTTPを暗号化したもので、データの暗号化にTLSが用いられています。

TLSの機能

TLSが提供するセキュアな通信には主に3つの機能があります。

  1. 通信を暗号化し、通信の内容を盗聴されても通信の内容がわからないようにする。
  2. 通信の内容が途中で改竄された場合にそのことを検出する。
  3. 通信相手が正しいということを確認し、なりすましを防ぐ。

1はデータの暗号化そのもの、2はハッシュ関連、3は正真性に関わるおはなしですね。ただ、3の正真性についてはTLSそのものと言うよりも公開鍵署名や電子証明書の認証を使って行われます。

関係しそうなBigdrea6さんの公開鍵基盤/PKIの記事

bigdrea6.hatenablog.com

TLS1.3のハンドシェイク

そのままです() TLS1.3のハンドシェイクについて書いていきます。

TLS1.2と比べて暗号化までのやり取りが1往復になっていて、ハンドシェイクの高速化が図られています。

Client                               Server

ClientHello          --------->
                                    ServerHello
                                    EncryptedExtensions
                                    Certificate
                                    CertificateVerify
                     <---------     Finished
Finished
Application Data     --------->
Application Data     <-------->     Application Data
                              

最後に

内容薄くてごめんな(ry

とりあえず、セキュリティ・キャンプ2021のグループワークとして各リレーブログはこれが最後になると思いますが、これからもリレーブログ以外のことでちょくちょく書いていこうと思います。

1年弱お疲れ様でした!

参考文献

インターネット用語1分解説~TLS (Transport Layer Security)とは~ - JPNIC

今更ながら、TLS1.3で大幅変更されたハンドシェイクシーケンスを整理する - Qiita

SSL/TLSとは、SSL、TLS、HTTPSの違い