身份证 18 位数字,每一位都藏着什么信息?

· 约 2 分钟 🪪 身份证解析

你的身份证号码不是随机生成的——18 位里每一位都有明确含义。理解它的结构,不光能帮你看懂别人的身份证,还能一眼识别出明显伪造的号码。

整体结构

3 1 0 1 1 5   1 9 9 0 0 1 0 1   0 0 1   X
└─地区码─┘   └────出生日期────┘ └顺序码┘ 校验
 6 位        8 位                3 位     1 位

前 6 位:行政区划代码

按国标 GB/T 2260 编码:

  • 1-2 位:省(直辖市/自治区)。例如 31 是上海、11 是北京、44 是广东
  • 3-4 位:地级市
  • 5-6 位:县(市、区)

注意:这是办理身份证时的户籍地址,不是出生地,也不会随你搬家而变。

7-14 位:出生日期

YYYYMMDD 格式,8 位整数。比如 19900101 就是 1990 年 1 月 1 日。

历史上的 15 位身份证只有 6 位(YYMMDD),2000 年前后统一升位到 18 位,把年份补全到 4 位。

15-17 位:顺序码

同一个地区、同一天出生的人,按登记顺序编号。

关键点倒数第二位(第 17 位)的奇偶性表示性别——奇数为男,偶数为女。这是身份证号里最常被用到的”隐藏信息”。

第 18 位:校验码

最神奇的一位。它不是随便填的,而是用前 17 位按 ISO 7064:1983, MOD 11-2 算法计算出来的。算法:

  1. 前 17 位每一位乘以固定权重:[7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]
  2. 所有乘积求和,再对 11 取模
  3. 用余数查表得到校验位:[1, 0, X, 9, 8, 7, 6, 5, 4, 3, 2]

当校验位是 X 时,表示”罗马数字 10”——因为单个数字最多只能表示 9,X 代替两位数 10。

你能立刻做什么

  1. 看性别:看倒数第二位奇偶
  2. 看生日:7-14 位
  3. 看省份:前 2 位(记住 11 北京、31 上海、44 广东、51 四川、33 浙江几个常见的就够用了)
  4. 看真假:校验码算不对的号码一定是假的,但算得对也不代表是真的(有可能是按规则拼出来的)

想快速解析?

手动按权重算校验码不现实。把号码贴进解析器,生日、性别、户籍地、校验结果一键出来,还能批量处理 Excel 导出的列表。

❓ 常见问题

身份证号码里能看出性别吗?

可以。看倒数第二位(第 17 位):奇数为男性,偶数为女性。这是 1999 年后 18 位身份证号的固定规则。

身份证校验码 X 是什么意思?

X 代表罗马数字 10。因为校验码是 18 位里的唯一校验位,通过前 17 位加权求和对 11 取模得出 0-10 的结果,当结果是 10 时单个数字位无法表示,用 X(罗马数字 10)代替。

身份证号可以自己编造吗?

格式上可以——只要符合地区码、日期、校验码算法就能通过格式校验。但真实性上不能,公安户籍系统里只有真实登记的号码。银行、证券、通信等实名场景会对接公安数据库,编造的号码在这些场景会被拒绝。

前 6 位地区码会随迁户变化吗?

不会。身份证号码在首次办理时确定,之后通常保持不变。即使户口迁移到其他城市,原号码一般也不变。所以如果一个长期在北京生活的人,身份证前 6 位是山东的区划码,只能说明他首次申领身份证时对应的户籍地在山东,并不代表现在仍在那里落户。

🪪 打开 身份证解析 校验·生日性别·户籍地·脱敏·批量导出