身份证号码的18位数字和末尾可能的“X”都有明确的编码规则,以下是详细解析:
1. 地址码(第1-6位)
表示申领人常住户口所在地的行政区划代码,具体为:
2. 出生日期码(第7-14位)
表示出生年月日(按“YYYYMMDD”格式),例如:1995年3月20日 → 19950320。
3. 顺序码(第15-17位)
4. 校验码(第18位)
通过前17位计算得出,用于验证身份证号码的正确性。
校验码是根据 ISO 7064:1983 MOD 11-2 标准计算得出的:
将前17位数字分别乘以不同的权重系数(第1位乘(2^{18}),第2位乘(2^{17}),以此类推,实际计算时常用简化公式)。 将所有乘积求和,再除以11取余数。 根据余数(0-10)对应校验码:本质是数字10的替代符
“X”在此处是罗马数字的10,而非英文字母。校验码的取值范围是0-10(共11个值),当结果为10时,用“X”代替,以保持身份证总位数为18位。
官方语言习惯
在日常口语和公安、银行等业务场景中,工作人员习惯直接读作“十”(如“110105X”读作“幺幺零幺零五十”),强调其数字含义,避免与英文字母混淆。
规范性文件依据
《公民身份号码》(GB 11643-1999)国家标准中明确说明校验码用“X”代表10,在实际应用中默认按数字“十”发音。
如果需要验证具体身份证号码的校验码计算过程,我可以为你举例说明。