身份证校验码筛选正确的身份证
作者:inks | 发布时间:
本文声明
此文仅用于技术科普,教育与研究用途,请勿用于商业甚至非法用途,否则一切后果自负。若用户利用此文章而受到惩处,本人及本平台对其行为概不负责,亦不承担任何连带责任。
故事开始
学校要填写对学校的反馈,填写非本校的学生 或者输入错误 就会提示:

这时候 室友就想得到女友的身份证(就是想尝试一下啊,但没有试)
正文
一张身份证18为号码分为几段 分别是

可以看到最后一位是判断真实性的

计算方法

上图身份证前17位: 32070219750101403
上面下面相乘再相加 用上面公式
S = 7*3+9*2+10*0+5*7+8*0+4*2+2*1+1*9+10*0+5*1+8*4+4*0+2*3 = 136
再去取模11 136 mod 11 = 4
再去找检验码位次值的表

对应的是8 所以 320702197501014038 是正确的 其他数就是错的
用python实现一下判断
此处内容已隐藏,请评论后刷新页面查看.
小思路:
假设我知道她女朋友的出生身份和生日哈 当然越精确越好
姓名:xxx 出生地:黑龙江省哈尔滨市 生日:20010101 性别:女

xxxxxx20010101 xxx(顺序码) x(校验码)
顺序码 1-2 位 00-99 最后一位性别 [0,2,4,6,8]
把所有结果打印出来
此处内容已隐藏,请评论后刷新页面查看.
这时候在加上校验一下:
此处内容已隐藏,请评论后刷新页面查看.
7363个欸 这时候可以写一个 异步爬虫 阔以很快
再见!!!!
分享
这时候用到猪哥的 之前讲的
