📖 护照MRZ(机读区)格式(ICAO 9303)
护照机读区由两行,每行固定44个字符组成,使用等宽字体(OCR‑B)。内容全部大写,空位用 < 填充。
- 第一行(44字符)
P<CHN<<ZHANG<<SAN<<<<<<<<<<<<<<<<<<<
① 字符1:证件类型,护照固定为 P
② 字符2:可选子类型,通常为 <
③ 字符3‑5:签发国家/地区(ISO 3166‑1三字母代码)
④ 字符6‑44:姓名栏(姓在前,名在后,用 << 分隔)
- 第二行(44字符)
E12345678<8CHN8503209F2901177<<<<<<<<<<<0
① 字符1‑9:护照号码(不足9位用 < 补齐)
② 字符10:护照号码校验位
③ 字符11‑13:国籍代码
④ 字符14‑19:出生日期(YYMMDD)
⑤ 字符20:出生日期校验位
⑥ 字符21:性别(M/F/<)
⑦ 字符22‑27:有效期至(YYMMDD)
⑧ 字符28:有效期校验位
⑨ 字符29‑42:个人号码(可选,空位填充)
⑩ 字符43:个人号码校验位(若无则为<)
⑪ 字符44:复合校验位
🔢 校验位算法(加权模10)
所有校验位均使用7‑3‑1 循环权重,对数据字符计算后取个位数。
- 字符映射:数字
0‑9 → 0‑9;字母 A‑Z → 10‑35 (A=10, B=11 … Z=35);填充符 < → 0。
- 累加求和:
总和 = Σ (字符值 × 权重),权重依次为 7, 3, 1, 7, 3, 1 …
- 校验位 = 总和 mod 10(即个位数)。
示例:护照号 E12345678 的校验位计算:
- 字符: E(14) 1(1) 2(2) 3(3) 4(4) 5(5) 6(6) 7(7) 8(8)
- 权重: 7, 3, 1, 7, 3, 1, 7, 3, 1
- 乘积: 98 + 3 + 2 + 21 + 12 + 5 + 42 + 21 + 8 = 212
- 校验位 = 212 mod 10 = 2
“复合校验位”则对第二行前10位 + 第14‑20位 + 第22‑43位拼接后整体计算。
🛠️ 工具使用技巧
- 最快的识别方式:直接 Ctrl+V 粘贴护照照片截图,工具会自动完成OCR识别并填入两行MRZ,随后自动触发校验。
- 最佳预处理设置:默认“二值化 + PSM 6 + 2x缩放”对绝大多数护照图片识别率最高。若照片偏暗可尝试“锐化+二值化”;颜色反转选项适用于黑底白字的扫描件。
- MRZ白名单:建议保持“启用MRZ字符白名单”勾选,可大幅减少误识别(如标点符号)。
- 手动修正:OCR识别后可直接在右侧文本框编辑,再点击“验证机读区”。文本框仅允许输入 A‑Z、0‑9 和
<,长度固定44位,不足时用 < 补齐。
- 粘贴两行MRZ:如果已有MRZ文本,可以直接粘贴到第一行文本框,工具会自动拆分并填入两行;也可点击“粘贴MRZ文本”按钮一键导入剪贴板内容。
- 查看原始OCR:点击“查看原始OCR识别结果”可对比识别原文,帮助判断是否出现字符替换(如
( → <)。
- 键盘快捷操作:在图片加载后按 Ctrl+Enter 直接开始OCR;在第二行MRZ文本框中按 Enter 快速执行验证。
⚠️ 本工具仅验证MRZ格式与校验位逻辑,不代表护照真实有效,请勿用于生产环境身份核验。