美文网首页 技术栈互联网产品思考产品经理
身份证校验位(末位)算法PHP、JAVA、PYTHON

身份证校验位(末位)算法PHP、JAVA、PYTHON

作者: 黄油伯伯 | 来源:发表于2017-10-11 18:00 被阅读79次

    首先,我们来了解一下身份证的结构

    身份证18位分别代表的含义,身份证15位升级到18位,原来年用2位且没有最后一位,从左到右方分别表示
    ①1-2 升级行政区代码
    ②3-4 地级行政区划分代码
    ③5-6 县区行政区分代码
    ④7-10 11-12 13-14 出生年、月、日
    ⑤15-17 顺序码,同一地区同年、同月、同日出生人的编号,奇数是男性,偶数是女性
    ⑥18 校验码,如果是0-9则用0-9表示,如果是10则用X(罗马数字10)表示

    ①~④的校验规则网上已经有很多了,在这里我们就不细说了,我们这次重点来看看校验位(末位)是怎么来的。

    校验位算法

    算法采用ISO 7064:1983,MOD11-2校验码系统


    身份证的每一位的具体算法模型,可以根据此表进行计算


    实现(上代码,你懂的)

    PHP代码:

    JAVA代码:

    Python代码:
    待补充,先做正事......

    好了,说了这么多,是时候做正事了,上图!

    相关文章

      网友评论

        本文标题:身份证校验位(末位)算法PHP、JAVA、PYTHON

        本文链接:https://www.haomeiwen.com/subject/bqkwyxtx.html