oauth.jp: Y!J API が止まった日 - GlobalSign の Root 証明書切れから学んだことというブログの記事を見つけまして、ざっと目を通してみてもよくわからなかったのでちょっと証明書など見てみました。
http://oauth.jp/blog/2014/01/30/globalsign-root-cert-expired/
(引用) 昨日あたりから、Yahoo! Wallet や YConnect といった、Yahoo! Japan の API にアクセスできなくなったって人、ちらほらいるかもしれませんね。
試しに https://userinfo.yahooapis.jpに繋いでみても問題なさそう。
ちゃんとした説明はYahooデベロッパーネットワークの「WebAPIやOpenIDでSSLエラーが起きる現象につきまして(2014.01.29)」に書いてありました。
GlobalSignのリポジトリには2つのルート証明書があって有効期限が切れたのはこのページの下の方の証明書みたいです。最初は、検証ができないというので相互認証してたり、鍵更新のあたりがおかしいのかと疑って証明書をいろいろみてみたわけです。
最新のブラウザで表示される検証の成功する証明書のチェーンは以下のようでした。
ルートCA証明書 | |
---|---|
シリアル番号 | 04:00:00:00:00:01:15:4b:5a:c3:94 |
署名アルゴリズム | SHA1withRSA |
主体者名 | C=BE, O=GlobalSign nv-sa, OU=Root CA, CN=GlobalSign Root CA |
有効期間 | 1998/09/01-2028/01/28 |
主体者鍵ID | 607B661A450D97CA89502F7D04CD34A8FFFCFD4B |
サブCA証明書 | |
発行者名 | C=BE, O=GlobalSign nv-sa, OU=Root CA, CN=GlobalSign Root CA |
主体者名 | C=BE, O=GlobalSign nv-sa, CN=GlobalSign Organization Validation CA - G2 |
有効期間 | 2011/04/13-2022/04/13 |
発行者鍵ID | 607B661A450D97CA89502F7D04CD34A8FFFCFD4B |
主体者鍵ID | 5D46B28DC44B741CBBEDF573B63AB7388F759E7E |
期限切れになったルートCA証明書 | |
---|---|
シリアル番号 | 02:00:00:00:00:00:d6:78:b7:94:05 |
署名アルゴリズム | MD5withRSA |
主体者名 | C=BE, O=GlobalSign nv-sa, OU=Root CA, CN=GlobalSign Root CA |
有効期間 | 1998/09/01-2014/01/28(確かに期限切れ) |
主体者鍵ID | 607B661A450D97CA89502F7D04CD34A8FFFCFD4B(あれれ?) |
結局、クライアント側すなわちYahoo APIを使う側が、ルート証明書ストアをちゃんとアップデートしてなくて、そのために接続できなかっただけという事なんですね。(そう理解してから読むとブログの記事も呑みこめました。)
Debian 5だと問題だったと書いてあるので見てみるとDebianの場合には /etc/ssl/certs にルート証明書ストアがあって、ca-certificatesというパッケージでアップデートされているわけですがDebian 5は2012年2月6日にとっくにサポート終了になっているので、そりゃ文句を言ってもしかたがない。CentOS 5についてはフルアップデートは2014年Q1まで、メンテナンスサポートは2017年3月31日まで提供されるのでCentOS 5では今回の問題にはならないんだろうと思います。
結局、今回の影響はあまりなくて
- ウェブブラウザを使っていてちゃんとアップデートをしている人にはあまり影響はなかったはず
- OSのアップデートもちゃんとしている人にはあまり影響がなかったはず
- CentOSにもOpenSSLトラストリストを持つようなパッケージは確かなかったっぽいので影響はない。CentOS 5もまだサポートされているので問題ないはず。
- 他のLinux、なんとかBSDなんかもOpenSSLのトラストリストを持つパッケージが無いので問題なさそう。
- Debian、Ubuntuだけはca-certificatesというパッケージがあるのでDebian5みたいなサポート終了しているものでは問題になるケースがあった。
もっと面白い話が見つかるかと思ったけど、それほどでもなかったorz 鍵更新や相互認証じゃないっていうのはどうなんですかねぇ?