楕円曲線暗号
SSL/TLSサーバー証明書のRSAから楕円曲線暗号への変更を検討していたが、結局、2017年に続き、2018年も見送ることにした。楕円曲線暗号は、クライアント側は、iPhoneは4から、Androidは3から、ChromeはOSが対応していれば1から、Firefoxは2から、IEは7から、OS Xは10.6から対応していて、対応していないのは、3DSとかWii Uとかぐらいなので、そこは問題ないのだけれど、AWS CloudFrontが対応していなかったので。
AWS CloudFrontが対応している暗号スイートには、
ECDHE-RSA-AES128-GCM-SHA256
などがあり、鍵交換には楕円曲線暗号が使えるのだが、署名はRSAとなっており、楕円曲線暗号が使えない。なぜ、鍵交換には使えて、署名には使えないのか、その理由は分からない(そのうち理由を聞いてみたいとは思うけど)。
【参考ページ】
ECC対応版 SSLサーバ証明書 対応状況 (シマンテックCAより発行された証明書)
Apache を ATS(App Transport Security)に対応する方法
Template:ウェブブラウザにおけるTLS/SSLの対応状況の変化
ELB, CloudFront が対応する SSL/TLS の暗号スイートとプロトコル
理解してるつもりの SSL/TLS でも、もっと理解したら面白かった話