⼆代⾝份证号码编码规则
1.1 编码格式
1999年我国颁发了第⼆代居民⾝份证号,公民⾝份号码为18位,且终⾝不变。
居民⾝份证格式如:ABCDEFYYYYMMDDXXXR
二代身份证办理
1.1.1地址码(ABCDEF)
表⽰登记户⼝时所在地的⾏政区划代码(省、市、县),如果⾏政区划进⾏了重新划分,同⼀个地⽅进⾏户⼝登记的可能存在地址码不⼀致的情况。⾏政区划代码按GB/T2260的规定执⾏。
1.1.2 出⽣⽇期码(YYYYMMDD)
表⽰该居民的出⽣年⽉⽇,年4位数字,⽉和⽇分别⽤2位数字表⽰,如19491001,;出⽣⽇期码是按GB/T 7408的规定执⾏的。
1.1.3 顺序码(XXX)
表⽰同⼀地址码区域内,同年、同⽉、同⽇⽣的⼈所编订的顺序号,根据⾃⼰⾝份证的顺序码就可以知
道:与我们同年同⽉同⽇⽣的同性⾄少有多少个,且在我们之前登记户籍的有多少⼈。⾝份证顺序码的奇数分配给男性,偶数分配给⼥性。这就是为什么倒数第⼆位奇数表⽰男⽣,偶数表⽰⼥⽣。
1.1.4 校验码(R)
R之前的17位被称为本体码,R是根据本体码,按照校验码算法(ISO 7064:1983,MOD 11-2校)计算出来的。当我们输⼊⾝份号码进⾏实名认证的时候,根据校验码算法可以初步判断你输⼊⾝份证号码格式是否正确。
1.2 校验码
1、将前⾯的⾝份证号码17位数分别乘以不同的系数。从第⼀位到第⼗七位的系数分别为:7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 ;
位置序号  1234567891011121314151617
加权因⼦7910584216379105842
2、将这17位数字和系数相乘的结果相加;
3、⽤加出来和除以11,看余数是多少;
4、余数只可能有0 1 2 3 4 5 6 7 8 9 10这11个数字。其分别对应的最后⼀位⾝份证的号码为1 0 X 9 8 7 6 5 4 3 2;
余数    0  12345678910
校验码    10X98765432
5、通过上⾯得知如果余数是2,就会在⾝份证的第18位数字上出现罗马数字的X。如果余数是10,⾝份证的最后⼀位号码就是2;
例如:某男性的⾝份证号码是340524************。我们要看看这个⾝份证是不是合法的⾝份证。
⾸先:我们计算3*7+4*9+0*10+5*5+...+1*2,前17位的乘积和是189
然后:⽤189除以11得出的结果是商17余2
最后:通过对应规则就可以知道余数2对应的数字是x。所以,这是⼀个合格的⾝份证号码。