在线身份证号码生成功能上线,身份证号码规则介绍

所属分类:网站建设 | 发布于 2022-10-02 18:35:38

做系统测试的时候需要录入一些员工信息,录入员工信息就要输入员工的身份证号,本来以为随便输入一些18位的数字就行,结果系统提示身份证号校验不通过。

后来查了一下,原来身份证号码是有规则的,于是学习了一下,对着规则,自己写了个随机生成符合规则的身份证号码的页面,传送门直达:https://tool.wenge365.com/idCard.html

身份证号规则

目前的身份证号码有15和18位两种,我们目前见到的身份证号码大多都是18位的,15位的是以前历史遗留的,新的身份证都是18位的。

以18位的身份证号码为例:

第一到第六位:地区编码,前两位是省份编码,中间两位是地级市编码,后面两位是区、县(市)编码。

第七到第十四位:出生年月日,前四位出生年份,中间两位出生月份,最后两位出生日期。

第十五到十七位:顺序码,按出生顺序编码,第十七位也标注了性别,其中偶数为男,奇数为女。

第十八位:第十八位是校验位。按照一点的规则生成,用来校验身份证是否符合规则。

校验位算法

第十八位为校验位,校验位通过以下三步得到:

  1. 第一到第十七的每一位分别乘以对应的系数(附录一),然后求和。
  2. 第一步的结果和11取余。
  3. 第二步的结果按照规则转行成对应的字符(附录二)。

举个例子

某人的身份证号是610626197507037163,我们来校验一下。

第一步:第一到第十七位分别乘以对应系数后求和,6*7+1*9+0*10+6*5+2*8+6*4+1*2+9*1+7*6+5*3+0*7+7*9+0*10+3*5+7*8+1*4+6*2,结果为339。

第二步:339和11取余,结果为9。

第三步:参考附录二,9对应的字符为3,所以第十八位为3,校验正确,这是一个符合规则的身份证号码。

附录

附录一:第一步每一位对应的系数分别是

位数 系数 位数 系数
1 7 2 9
3 10 4 5
5 8 6 4
7 2 8 1
9 6 10 3
11 7 12 9
13 10 14 5
15 8 16 4
17 2    

附录二:第三步转换规则为

和11取余后的结果 对应第十八位的字符
0 1
1 0
2 X
3 9
4 8
5 7
6 6
7 5
8 4
9 3
10 2

文哥博客(https://wenge365.com)属于文野个人博客,欢迎浏览使用

联系方式:qq:52292959 邮箱:52292959@qq.com

备案号:粤ICP备18108585号 友情链接