iOS9ではSHA-1のSSLサーバ証明書をサポートしなくなる模様です。そうなるとSHA-1アルゴリズムの証明書を導入しているサイトには軒並み接続できなくなるので、これは結構大きな話になりそうです。
iPhoneがSHA-1のSSLサーバ証明書のサイトに接続できなくなる?
2015年6月8日に発表されたiOS9。今秋発売予定と言われているiPhone6sに搭載されると噂されています。
さまざまな機能が強化されることが発表されていますが、注目すべきはセキュリティ関連のアップデート。
その中では、SHA-1アルゴリズムのSSLサーバ証明書をサポートしないということが書かれています。
※実際にはSHA-256がMustと書かれているのですが、これはSHA-1をサポートしないと言っていることになります。
ATS(App Transport Security)とは?
まずは、iOS9から導入されるATSについて。
App Transport Securityとは、iOS 9.0 または OS X 10.11 以上で有効な機能で、アプリとウェブサービス間でセキュアな接続を確立するために利用できる機能です。
内容は結構えぐくてATS が有効になっていると、まずHTTP での通信はできなくなるようです。
また、ATSの必要条件を満たしていない場合は、接続自体ができない状態になると書かれています。
SHA-1証明書はNG?
App Transport Security requirements(ATSの必要要件)として、以下の項目が挙げられています。
Certificates must use at least an SHA256 fingerprint with either a 2048 bit or greater RSA key, or a 256 bit or greater Elliptic-Curve (ECC) key.
この内容をひも解くと、証明書は少なくともSHA256のハッシュアルゴリズムであるべきで、鍵長はRSAであれば2048bit、ECC(楕円曲線暗号)であれば256bit以上が必要です。
と言ってますね。
ということで、ATSを実装したアプリケーションはSHA256の署名アルゴリズムの証明書が必須になるということになります。
なお、RSAのところは今は2048bit以上が標準なので気にする必要はありません。ECCはまだまだ普及していないのでメインはRSAです。
SHA-1のSSLサーバ証明書を使ってるサイトにはiPhoneから接続できなくなるの?
ここがはっきりしないところです。
iOS9以降向けのアプリをビルドする際は、ATS準拠のものである必要がありそうですので、SHA-1のSSLサーバ証明書を使っているサイトへは接続できなくなることになりますが、デフォルトのブラウザSafariがどのような実装になってくるのかが不透明です。
仮にiOS9のSafariがATS準拠であった場合、SHA-1のSSL証明書を導入しているWebサイトへはiPhoneからは接続できなくなりますね。
SSLサーバ証明書については、MSやGoogleからSHA-1非サポートのアナウンスがされているので、SHA-1からSHA-256への移行は進んできていますが、まだまだSHA-1証明書を使っているサイトはごろごろしています。
とりあえず実績のあるSHA-1でという保守的な場合もありますし、ガラケー対応のためにSHA-256へ移行していないというWebサイト管理者も多いと思います。
でも、「iPhoneから接続ができなくなる」となると、ダメージはかなり大きいです。
iPhoneとガラケーどちらを取りますか?という時期に来ているのかもしれませんね。
Webサイトの管理者はiOSの動きには今後も要注意です。
ちなみにiOS9の目玉として挙がっているのは以下のような機能ですね。
- News
- メモ
- マップ
- CarPlay
- マルチタスキング
- QuickType
- バッテリーが長持ちする
- アップデートプログラムの容量ダウン
コメント