暗号

楕円曲線暗号

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となっており、楕円曲線暗号が使えない。なぜ、鍵交換には使えて、署名には使えないのか、その理由は分からない(そのうち理由を聞いてみたいとは思うけど)。

【参考ページ】

公開鍵暗号を巡る新しい動き:RSAから楕円曲線暗号へ

ECC対応版 SSLサーバ証明書 対応状況 (シマンテックCAより発行された証明書)

Apache を ATS(App Transport Security)に対応する方法

Template:ウェブブラウザにおけるTLS/SSLの対応状況の変化

ELB, CloudFront が対応する SSL/TLS の暗号スイートとプロトコル

ECC Compatibility

理解してるつもりの SSL/TLS でも、もっと理解したら面白かった話

Supported Protocols and Ciphers

RSAとECDSA、署名生成と署名検証どっちが速い?