身份证号码校验码怎么算?18位数字原理+实测(含公式)
身份证号码校验码怎么算?18位数字原理+实测(含公式)
身份证号码的第18位(校验码)不是随机生成的——它由前17位按国家标准GB 11643-1999规定的加权求和、取模11、查表三步算出。但90%的人不知道:校验码为X时,实际对应数字10。
截至2026-06政策,中国大陆居民身份证号码始终为18位,前6位为地址码(对应县级行政区划),第7-14位为出生日期码(YYYYMMDD),第15-17位为顺序码(奇数男、偶数女),第18位为校验码。
核心原理:加权求和 → 取模11 → 查表
公式
校验码 = ( 11 - ( Σ(ai × wi) mod 11 ) ) mod 11
其中:
- ai:身份证号码第i位数字(i从1到17)
- wi:第i位的加权因子,固定为:
位置i 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 wi 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2
查表映射
计算出的校验码值(0-10)对应字符:
| 值 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 码 | 1 | 0 | X | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 |
关键:校验码为X表示数字10,这是唯一可能出现字母的位置。
一个端到端示例:用身份证查询工具实测
假设身份证号前17位为:11010520000101001(北京朝阳区2000年1月1日出生的男性顺序码001)。
步骤1:加权求和
| 位i | ai | wi | ai×wi |
|---|---|---|---|
| 1 | 1 | 7 | 7 |
| 2 | 1 | 9 | 9 |
| 3 | 0 | 10 | 0 |
| 4 | 1 | 5 | 5 |
| 5 | 0 | 8 | 0 |
| 6 | 5 | 4 | 20 |
| 7 | 2 | 2 | 4 |
| 8 | 0 | 1 | 0 |
| 9 | 0 | 6 | 0 |
| 10 | 0 | 3 | 0 |
| 11 | 0 | 7 | 0 |
| 12 | 1 | 9 | 9 |
| 13 | 0 | 10 | 0 |
| 14 | 1 | 5 | 5 |
| 15 | 0 | 8 | 0 |
| 16 | 0 | 4 | 0 |
| 17 | 1 | 2 | 2 |
| Σ | 61 |
步骤2:取模11
61 mod 11 = 6(因为11×5=55,余6)
步骤3:查表得校验码
校验码值 = (11 - 6) mod 11 = 5 mod 11 = 5
查表:值5 → 码为7
完整身份证号:110105200001010017
你可以用 身份证查询工具 输入该号码验证:工具会返回归属地“北京市朝阳区”、性别“男”、出生日期“2000-01-01”、生肖“龙”、星座“摩羯座”,并自动校验第18位是否正确。
易混概念辨析:身份证号 vs 护照号 vs 军官证号
| 维度 | 身份证号 | 护照号 | 军官证号 |
|---|---|---|---|
| 位数 | 18位 | 9位(E+8位数字) | 8位(汉字+7位数字) |
| 校验机制 | 第18位校验码(加权求和) | 无公开校验算法 | 内部编码,无公开校验 |
| 地址含义 | 前6位固定对应户籍地 | 首字母E表示普通护照 | 无地址含义 |
| 性别标识 | 第17位奇偶性 | 无 | 内部编码 |
| 出生日期 | 第7-14位显式包含 | 无 | 无 |
核心区别:身份证号是唯一自带出生日期和性别编码的证件号码,且校验码可离线验证真伪。
实用工具
两个工具搭配使用,可快速验证个人信息一致性。
常见误区 / 翻车案例
误区1:校验码X就是字母X,没有特殊含义
- 修正:X代表数字10,是加权计算后余数为2时的结果。如果硬写成10,号码会变成19位,无效。
误区2:身份证号前6位能精确到街道
- 修正:前6位只到县级(如110105=北京市朝阳区),街道/派出所编码在顺序码(第15-17位)中,但不对公众公开解析。
误区3:校验码可以随便填,系统会自动纠正
- 修正:校验码错误时,身份证号视为无效。银行、铁路等系统会直接拒绝。
误区4:15位老身份证号也有校验码
- 修正:15位身份证号(1999年前签发)无校验码,升级到18位时,在第7位后加“19”,最后补1位校验码。
误区5:顺序码001-999连续分配,男女性别各占一半
- 修正:同一地区同一天出生的人按顺序编码,奇数给男、偶数给女,但001可能是男也可能是女(取决于当天第一个出生者性别)。
本文不构成法律建议,身份证号码属于个人敏感信息,请勿随意泄露。具体政策请以公安部《居民身份证法》为准。
参考资料:
- GB 11643-1999《公民身份号码》
- 《中华人民共和国居民身份证法》(2011修正)
- 公安部治安管理局《关于居民身份证号码编制规则的说明》