日本外務省がCSCA証明書(公開鍵)の公開に応じない件に関するまとめ

OSSTech濱野氏によるブログエントリが話題になっている。曰く、パスポート真正性確認アプリ開発のため、日本の外務省にCSCA証明書(公開鍵)の情報公開請求を行ったところ不開示の決定を受けたという。

外務省の不開示決定

旅券冊子の情報暗号化に関する情報であり,公にすることにより,旅券偽造のリスクが上がる等,犯罪の予防及び公共の安全と秩序の維持に支障を及ぼすおそれ並びに日本国旅券の安全性が損なわれ,法人の円滑な海外渡航に支障を来すことにつながる可能性がある等,旅券事務の適正な遂行に支障を及ぼすおそれがある。 また、当該情報は,国際的に外交手段でのみ交換する慣行があり一般への公開をしない共通認識があるため,公にすることにより,他国,国際機関等との信頼関係が損なわれるおそれがあるため,不開示としました。

不開示の理由は「セキュリティ」「国際慣行」の二つに分解することができる。この決定について濱野氏は次のように述べている。

ほぼすべての文が間違っており、どこから突っ込んで良いのか分かりませんが、 公開鍵を公開しても安全と秩序が損なわれることはないし、国際的に外交手段でのみCSCA証明書を交換する慣行もありません。

IPA認証PP及び同解説

IPAのITセキュリティ評価及び認証制度(JISEC)に基づいて認証された外務省の「旅券冊子用ICのためのプロテクションプロファイル」というものがある。

平成28年に認定されたこれらプロテクションプロファイルには本件に直接関わる内容は見当たらないが、これに先立ち平成20年に「IC旅券用プロテクションプロファイル」に関する調査が行われている。

そこで公開されている「IC旅券用プロテクションプロファイル解説書」に次のような記述が存在する。(注釈を示す※印は筆者による)

また、CSCA証明書の管理方法に対する要求事項は、厳重に守られた安全な外交手段で配送すべきと記載されている。ヒアリング調査の結果、CSCA証明書はインターネット上に公開せず※9、IC旅券発行国と受入国の旅券発給当局又は出入国管理当局等で共有されることが確認できた。
※9 ICAO document[1]のIV-6頁「Country Signing CA Certificates」によると、CSCA証明書はICAO PKDサービスの対象外である。
[1] Doc 9303 “Machine Readable Travel Documents” Part 1 “Machine Readable Passports” Volume 2 “Specification for Electronically Enabled Passports with Biometric Identification Capability" Sixth Edition, International Civil Aviation Organization(ICAO), 2006. 8

注意すべきは、この調査で引用されているのは2006年時点のICAO Doc 9303-1-2 第6版ということである。

ICAO Doc 9303 第6版 (2006)

かろうじて韓国政府のパスポート情報Webサイトに当時のICAO Doc 6303-1-2 第6版が残っていた。(抄訳は筆者による)

Country Signing CA Certificates (C_CSCA) are not part of the ICAO PKD service. The PKD however SHALL use Country Signing CA Certificates (C_CSCA) to verify the authenticity and integrity of the Document Signer Certificates (C_DS) received from participating States, before publishing. ICAO does not allow access to the Country Signing CA Certificate (C_CSCA).
Country Signing CA証明書(C_CSCA)は、ICAO PKDサービスの一部ではありません。しかし、PKDは公開前に参加国から受け取ったDS証明書(C_DS)の信頼性と完全性を検証するために、Country Signing CA証明書(C_CSCA)を使用する必要があります(SHALL)。ICAOは、Country Signing CA証明書(C_CSCA)へのアクセスを許可していません。

この記述は大改訂を経た現在のDoc 9303 第7版には残っていない。つまり、IPAの同解説は古い内容に基づいているため本件において参照してはいけない。

ICAO Doc 9303 第7版 (2015)

ICAO Doc 6303 第7版においてCSCA証明書の配布に関する記述はPart 12 "Public Key Infrastructure for MRTDs"のSection 5 "DISTRIBUTION MECHANISMS"にある。一部分のみ引用する。(抄訳は筆者による)

5.1 PKD Distribution Mechanism

ICAO provides a Public Key Directory (PKD) service. This service SHALL accept PKI objects, including certificates, CRLs and Master Lists, from PKD participants, store them in a directory, and make them accessible to all receiving States.

CSCA certificates (C_CSCA) are not stored individually as part of the ICAO PKD service. However, they may be present in the PKD if they are contained on Master Lists.
5.2 Bilateral Exchange Distribution Mechanism

For CRLs and CSCA certificates (C_CSCA), the primary distribution channel is bilateral exchange between issuing States or organizations and receiving States. Bilateral exchange can also be used to distribute Master Lists.

The specific technology used for that bilateral exchange may vary depending on the policies of each issuing State or organization that has a need to distribute its certificates, CRLs and Master Lists, as well as the policies of each receiving State that needs access to those objects. Some examples of technologies that may be used in bilateral exchange include:

• diplomatic courier/pouch;
• email exchange;
• download from a website associated with the issuing CSCA; and
• download from an LDAP server associated with the issuing CSCA.

This is not an exhaustive list and other technologies may also be used.
5.1 PKD配布メカニズム

ICAOは公開鍵ディレクトリ(PKD)サービスを提供します。このサービスは、PKD参加者から証明書、CRL、およびマスターリストを含むPKIオブジェクトを受け入れ(SHALL)、それらをディレクトリに格納し、それらをすべての受入国にアクセス可能にするものとします。

CSCA証明書(C_CSCA)は、ICAO PKDサービスの一部として個別に保管されることはありません。ただし、それらがマスターリストに含まれている場合、それらはPKDに存在する可能性があります。
5.2 二国間交換配布メカニズム

CRLおよびCSCA証明書(C_CSCA)の場合、1次配布経路は、発行国・組織と受入国との間の双方向の交換です。二国間交換はマスターリストの配布にも使用できます。

二国間交換に使用される特定の技術は、証明書、CRL、およびマスターリストを配布する必要がある各発行国・組織の方針、およびそれらのオブジェクトにアクセスする必要がある各受入国の方針によって異なります。二国間交換で使用される可能性がある技術のいくつかの例は次のとおりです。

•外交宅配便/外交行嚢
•メール交換
•CSCA発行者に準じたWebサイトからのダウンロード
•CSCA発行者に準じたLDAPサーバからのダウンロード

これは完全な一覧ではなく、他の技術も使用される可能性があります。

マスターリストに含む形でCSCA証明書がPKDで公開され得ること、Web技術を通してCSCA証明書が交換され得ることが明記されている。

公開済みのCSCA証明書

少し古い情報となるようだが、eMRTDのJava実装を開発しているJMRTDのWebサイトでは、実際にWebサーバやLDAPサーバを通じてCSCA証明書を配布している17ヶ国がリストアップされている。

中でもドイツ情報セキュリティ庁(BSI)はCSCA証明書に加え、マスターリストをWebサイトで二国間交換配布している。

ICAO PKDでもマスターリストは公開されている。LDAPサーバに登録されたLDIFファイルを吐き出しているようだ。

外務省 公文書監理室

外務省大臣官房総務課公文書監理室(旧 外交記録・情報公開室)に問い合わせたが、不開示決定通知書に書かれた以上のことは答えられないとして、旅券課への問い合わせを勧められた。

外務省 旅券課

外務省領事局旅券課では実務に精通した担当者からお話を聞くことができた。口頭でのやり取りを適切にまとめる文章力は持っていないため、簡潔な要点だけ書き記しておく。私の脳内フィルタを通しているため正確でないことをお断りする。

Q. CSCA証明書は本当に公開していないのか
A. 一般に公開することはしていない、その予定もない
Q. CSCA証明書を公開していない理由は
A. 日本としては1次配布経路として外交ルートで配布する方針
Q. 2次配布経路に使われるマスターリストは公開できないか
A. 日本ではそもそもマスターリストを作成していない
Q. CSCA証明書を公開してはいけないのか
A. そういった規定はない
Q. CSCA証明書の不開示決定が出たことは知っているか
A. (口籠る)
Q. CSCA証明書を公開すると旅券偽造のリスクが上がるのか
A. 例えば「0」だったリスクが「1」になる可能性があるのでは
Q. 外務省のWebサーバもサーバ証明書を公開しているが構わないのか
A. Webとパスポート事務ではセキュリティポリシーが異なる
Q. 他国のマスターリストで日本のCSCA証明書が公開されるのは構わないのか
A. 内政不干渉である

情報公開法

CSCA証明書をどのように交換するかは当事者国次第だが、行政文書には情報公開法に基づく開示義務がある。

第五条 行政機関の長は、開示請求があったときは、開示請求に係る行政文書に次の各号に掲げる情報(以下「不開示情報」という。)のいずれかが記録されている場合を除き、開示請求者に対し、当該行政文書を開示しなければならない。

CSCA証明書を「Webで公開するかどうか」と「情報公開請求で開示するかどうか」は全く違う話であることに留意されたい。