【有的人身份证后面有一个X是为什么】你是不是经常留意到自己的身份证号码末尾,除了常见的数字 0-9 之外,偶尔会蹦出来一个大写字母"X"?很多人第一反应会觉得是不是哪里填错了,或者这代表什么特殊的身份标记。其实呢,这玩意儿跟你性别、血型,甚至出生当天的天气都没关系。它纯粹是一个为了防伪和防错而生出来的“校验码”。
简单来说,中国现行的第二代身份证遵循的是 GB 11643-1999 国家标准。这套标准里的身份证号由 18 位组成,前面 17 位分别代表了地址码、出生日期码和顺序码,而最后一个位置就是专门用来验证前面 17 位数有没有抄写错误的关键——校验码。
这个校验码的计算过程有点像做一道复杂的数学题:把前面的 17 个数字乘以一组特定的加权因子(比如第 1 位乘 7,第 2 位乘 9……以此类推),然后把结果加起来。接着用这个总和去除以 11,取它的余数。余数决定了最后的这一位该是几。
问题来了,如果算出来的余数对应的数值正好是 10,在普通的数字编码里,"10"是两位数,但身份证要求每一位只能占一个字符位,为了保证总长度固定在 18 位不超行,国际通用的解决方案就是把罗马数字"X"当作 10 来用。所以,当那位最后的位置出现 X 时,它代表的含义其实非常直白:就是数字 10。
另外,关于这个 X 还有两个流传甚广的误区需要澄清一下。第一,它不是区分男女的标志,因为前 17 位里的顺序码奇偶性已经解决了性别区分的问题;第二,它也不是因为生日月份或日期有什么特殊,纯概率计算而已。据统计,大约每 11 个人里就有一个人可能因为运气好(或者说算得准)遇到这个 X。
为了方便大家直观理解,下面整理了具体的余数与校验码的对应关系表,这也是识别身份证真伪的核心逻辑之一。
身份证校验码对照表
| 计算出的余数 | 对应的校验码 | 备注说明 |
| :: | :: | :: |
| 0 | 1 | 最常见的情况 |
| 1 | 0 | 最常见情况 |
| 2 | X | 也就是我们说的“大写 X" |
| 3 | 9 | |
| 4 | 8 | |
| 5 | 7 | |
| 6 | 6 | |
| 7 | 5 | |
| 8 | 4 | |
| 9 | 3 | |
| 10 | 2 | 这里的 10 是余数,对应码为 2,非 X |
(注:上表中第 2 行对应的余数为 2 时,校验码为 X;此处需修正上文逻辑描述,准确对应应为:当系统计算出校验码的值等于 10 时,则用 X 表示。根据国标算法,余数与校验码映射关系如上表所示,其中余数为 2 时,校验码即为 X。)
总的来说,这个 X 只是数字世界里的一种变通写法。它保证了每一张身份证号码的唯一性和准确性,防止有人手写时看错一位,导致整张证作废。下次再看到,你就知道这只是个代表 10 的数学符号罢了,不用多想。


