次に学ぶこと
完走お疲れさまでした。これにて本書での学習は終了です。 記述したコードは全部で1,000行程度ですが、各要素技術について学びながら実装を進めるのは、中々大変だったのではないでしょうか。
本書のクライアントをさらに発展させるなら、次のような題材があります。
- サーバー側を実装する
- 本書では標準パッケージに任せた、X25519やChaCha20などの暗号プリミティブを実装する
- 量子計算機がTLSの鍵交換や署名に与える影響と、耐量子暗号で変わる部分を調べる
- サーバーだけでなくクライアントも証明書で認証するmTLS(mutual TLS:相互TLS)を試す
どの題材も、本書で作ったクライアントと、実装しながら読んだ仕様が手がかりになります。本書が、通信や暗号についてさらに学ぶきっかけになれば幸いです。