国民IDカードは小さなパスポートではありません。独自の機械読取領域(MRZ)を持ち、それは顔写真の面ではなく裏面にあり、44文字×2行ではなく30文字×3行で構成されます。ICAOはこのレイアウトをTD1と呼び、欧州連合ではもはや任意ではありません。加盟国が自国民に発行する身分証はすべてこの領域を備える必要があり、機能する領域を持たないカードは決められた期日までに効力を失います。
この記事では、2つの一次資料を並べて見ていきます。1つ目はICAO Doc 9303の第5部で、TD1の各文字がどこに入るかを定めています。2つ目はEU法、つまりReg. (EU) 2019/1157と理事会Reg. (EU) 2025/1208で、加盟国の身分証にTD1領域を義務づけています。以下の表の各行はこれらの文書から引用し、リンクを付けているので、そのまま引用元として使えます。これらの文書から言えない国については、記載していません。
これは、パスポートとIDカードの両方を読み取り、そのMRZチェックディジットをサーバー側で再検証するパスポート・身分証OCR API、doc.cheapのブログです。以下の内容はdoc.cheapに依存しません。
TD1カードとは
ICAO Doc 9303は、機械読取式旅行文書の国際標準です。複数の部に分かれており、そのうち3つが3種類のMRZサイズを扱います。第4部はパスポートなどTD3サイズの文書、第5部は「TD1サイズの機械読取式公用旅行文書」、第6部はTD2サイズを扱います。
第5部(第8版、2021年)は、カードの物理サイズをISO/IEC 7810のID-1サイズ、つまり85.60 × 53.98 mm、銀行カードと同じ大きさに定めています。そして領域を裏面に置いています。「MRZはTD1の裏面に配置される。」実際にIDカードの読み取りが失敗する原因の大半は、この一文で説明がつきます。カードの表面の写真には顔、氏名、番号がありますが、検証すべき領域はありません。
3種類のMRZ形式の比較:
| 形式 | 行数 × 文字数 | 定義 | 主な文書 |
|---|---|---|---|
| TD1 | 3 × 30 | Doc 9303 第5部 | 国民IDカード、在留許可証 |
| TD2 | 2 × 36 | Doc 9303 第6部 | 一部の旧型カードや旅行文書 |
| TD3 | 2 × 44 | Doc 9303 第4部 | 冊子型パスポート |
MRZフォーマットのページでは、3つのレイアウトを並べて示しています。
90文字をフィールドごとに見る
以下は、ICAO自身が示す架空のTD1見本で、発行者は「Utopia」(UTO、見本にしか存在しないコード)です。
I<UTOD231458907<<<<<<<<<<<<<<<
7408122F1204159UTO<<<<<<<<<<<6
ERIKSSON<<ANNA<MARIA<<<<<<<<<<
第5部 §4.2.2 がすべての位置を定めています。位置はICAOの数え方に従い、1から数えます。
| 行 | 位置 | フィールド | 見本での値 |
|---|---|---|---|
| 1 | 1–2 | 文書コード。1文字目は A、C、I のいずれか |
I< |
| 1 | 3–5 | 発行国または発行機関 | UTO |
| 1 | 6–14 | 文書番号 | D23145890 |
| 1 | 15 | 文書番号のチェックディジット | 7 |
| 1 | 16–30 | 発行者用の任意データ | フィラー |
| 2 | 1–6 | 生年月日(YYMMDD) | 740812 |
| 2 | 7 | 生年月日のチェックディジット | 2 |
| 2 | 8 | 性別:F、M または < |
F |
| 2 | 9–14 | 有効期限(YYMMDD) | 120415 |
| 2 | 15 | 有効期限のチェックディジット | 9 |
| 2 | 16–18 | 国籍 | UTO |
| 2 | 19–29 | 発行者用の任意データ | フィラー |
| 2 | 30 | 1行目と2行目にまたがる複合チェックディジット | 6 |
| 3 | 1–30 | 氏名:主識別子、<<、副識別子 |
ERIKSSON<<ANNA<MARIA |
ここには、パスポートと異なり、TD3向けに書かれたパーサーがつまずく点が3つあります。
- 氏名は先頭ではなく最後にある。 パスポートでは氏名は1行目にあります。TD1カードでは3行目全体を占め、長い氏名は30文字に収まるよう切り詰められます。
- 国籍と発行国は別の行にある。 1行目には発行者、2行目には所持者の国籍が入ります。ほとんどのカードでは同じコードですが、パーサーはそれを前提にすべきではありません。
- 複合チェックディジットは2行にまたがる。 1行目と2行目のデータをまとめて対象にするため、1行ずつ検証するバリデーターでは計算できません。
チェックディジットはすべてパスポートと同じ7-3-1の重みを使います。MRZパーサーでは、計算した各ディジットを印字された値の横に表示します。
EU法が求めること
身分証に関するEUの規則は、最初にReg. (EU) 2019/1157で定められ、2021年8月2日から適用されました。同じ規則が同じ期日のまま、2025年6月12日の理事会Reg. (EU) 2025/1208に引き継がれており、これは2025年6月20日に官報で公布されました。表は2025年の文書から引用しています。
| 規則 | 文書の記載 | 条文 |
|---|---|---|
| 形式 | 身分証は「ID-1形式で作成され、機械読取領域(MRZ)を含むものとする」とされ、ICAO文書9303に従う | 第3条(1) |
| データ | カードのデータ要素はICAO文書9303の第5部に従う | 第3条(2) |
| チップ | 顔画像と2つの指紋を保持する記録媒体 | 第3条(5) |
| 旧カード(一般) | 第3条を満たさないカードは「有効期限到来時または2031年8月3日のいずれか早い時点で効力を失う」 | 第5条(1) |
| 機能するMRZのない旧カード | ICAO第2部の最低限のセキュリティ要件を満たさない、または「機能するMRZ」を持たないカードは、「有効期限到来時または2026年8月3日のいずれか早い時点で」効力を失う | 第5条(2)(a) |
| 70歳以上の所持者 | 2021年8月2日時点で70歳以上の人のカードで、第2部の最低限のセキュリティ要件と機能するMRZを備えるものは、有効期限まで有効 | 第5条(2)(b) |
IDカードのフローを作る人にとっての実務的な読み方はこうです。2026年8月3日以降、加盟国が自国民に発行し、この規則のもとでまだ有効な身分証には、TD1の機械読取領域があります。それ以前は、機能する領域のない旧カードでも有効な場合があったため、MRZを必須とするチェックが合法なカードを拒否することがありえました。これは文書の要約であり、法的助言ではありません。
この規則が対象とする国
2025年の文書は、自らの適用範囲の境界を明記しています。文書そのものから言えるのは次の行です。
| 区分 | 理事会Reg. (EU) 2025/1208での扱い | 文書中の箇所 |
|---|---|---|
| 身分証を発行する加盟国 | 拘束される:カードは第3条に従い、旧カードは第5条に基づき段階的に廃止 | 第3条および第5条 |
| 国民身分証を持たない加盟国 | 導入の義務はない:この文書は「国内法で定められていない場合に…加盟国に身分証の導入を求めるものではない」 | 前文(9) |
| デンマーク | 「採択に参加しておらず」、「これに拘束されず、その適用も受けない」 | 前文(47) |
| アイルランド | 「2024年10月18日付の書簡により、参加の意思を」通知 | 前文(48) |
| アイルランドのパスポートカード | 適用範囲外:第5部の旅行文書のうち「発行加盟国において身元確認の目的に用いられないもの、たとえばアイルランドが発行するパスポートカード」 | 前文(12) |
ここから2つのことが言えます。MRZ付きのTD1カードであることは、その文書が国民身分証である証拠にはなりません。アイルランドのパスポートカードも第5部の文書ですが、法律はそれを別扱いにしています。そして、ある国に国民身分証がないことは法の抜け穴ではありません。法律はそもそもそれを求めていないからです。
特定の国のカードについては、見本そのものが参照先になります。理事会事務総局は真正な文書の画像を公開しており、Reg. (EU) 2020/493はこれを「PRADOとして知られる、真正な旅行文書および身分証明文書のオンライン公開登録簿」と呼んでいます。所在はconsilium.europa.eu/pradoです。各エントリーにはカードの両面が掲載されているので、その発行者が領域をどこに置き、任意データのフィールドに何を入れているかを確認できます。
IDカードのアップロードフローへの影響
- 裏面を求める。 領域は定義上そこにあるので、表面だけを求めるフローでは検証すべきMRZが得られません。
- 3行を想定し、形で判別する。 30文字×3行ならTD1、36文字×2行ならTD2、44文字×2行ならTD3です。フィールドを読む前に形式を判定してください。
- 文書コードを決め打ちしない。 第5部は1文字目に
A、C、Iを認めているので、Iだけをチェックすると有効なカードを拒否してしまいます。 - 任意データのフィールドは発行者が定義するものとして扱う。 第5部はその内容を発行国に委ねているので、1つの固定フィールドとしてではなく、発行者ごとに解析してください。
- MRZが通ることは整合性であって、真正性ではない。 チェックディジットが証明するのは領域が正しく読み取られたことであり、カードが本物であることではありません。
doc.cheapがTD1カードを扱う方法
APIは1回の呼び出しで1枚の画像を受け取るので、カードの両面は同じ reference を共有する2回の呼び出しになります。この流れはIDカードの認識ガイド(英語)で説明しています。裏面では通常 mrz.status: passed が返り、領域のない表面ではエラーではなく mrz.status: absent が返ります。領域が読み取られると、mrz.lines に印字どおりの行(TD1カードなら3行、TD3パスポートなら2行)が入るので、チェックディジットを自分で再計算できます。サーバーはTD1のディジットを第5部 §4.2.4 の位置に従って検証します。document.country フィールドには3文字の発行者コードが入ります。
同じ国のパスポートについては、国別のパスポートOCRがTD3側を扱っています。ホスティング型のAPIを比較しているなら、パスポートOCR APIの比較で、公開されている料金と、各サービスが失敗したスキャンにも課金するかどうかを確認できます。doc.cheapには毎月100件の無料認識が含まれています。
上記の法的な記述はすべて、リンク先のEUR-Lexの文書とICAO Doc 9303 第5部から引用しています。doc.cheapに関する記述はすべて、そのコードと照らし合わせて確認しました。
皆さんへの質問: あなたのIDカードのフローはカードの裏面を求めていますか。表面だけがアップロードされたときはどう扱っていますか。下のコメント欄で教えてください。