15位身份证号码组成规则

6位地区码+6位出生年月日+3位顺序码(最后一位代表性别,奇数为男,偶数为女)

18位身份证号码组成规则

6位地区码+8位出生年月日+3位顺序码(最后一位代表性别,奇数为男,偶数为女)+1位校验码
校验码范围:数组[‘1’, ‘0’, ‘X’, ‘9’, ‘8’, ‘7’, ‘6’, ‘5’, ‘4’, ‘3’, ‘2’]
前17位数字每一位对应的系数,从左向右依次为
7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2
校验码计算规则:前17位数字乘以每一位上的系数,然后相加求和,再对11取余数,结果即是对应校验码的下标。

15位转18位

6位出生年月日前拼接19(1999年10月居民身份证编号由15位升至18位),再根据校验码计算规则计算校验码

身份证号码发展史(转载)

  • 1984年4月国务院公布《中华人民共和国居民身份证试行条例》,开始实行居民身份证制度。
  • 1984年8月首批第一代身份证在北京发放。随后,上海、广州、天津、沈阳等大城市相继发放第一代身份证。1989年后在农村地区普遍发证。
  • 1986年11月经国务院批准,公安部公布施行居民身份证条例实施细则,我国逐步建立了一整套居民身份证使用、管理制度。
  • 1991年公安部立项进行制证工艺改革与制证设备技术改造,创建了新的制证工艺系统。
  • 1995年7月防伪居民身份证启用。证件采用了全息透视塑封套防伪,身份证几乎不可能剥离损坏。
  • 1999年10月居民身份证编号由15位升至18位。
  • 2004年1月开始换发第二代身份证。融入IC卡技术,防伪性能提高,办证时间缩短,存储信息增多。
  • 2011年10月《中华人民共和国居民身份证法修正案(草案)》规定,尽快结束一代身份证与二代身份证同时并用的局面。
  • 2013年1月1日第一代居民身份证停止使用

身份证号码15位转18位相关推荐

  1. 新旧身份证合法性验证及相互转换算法(三):Java身份证号码验证及将15位转换18位

    package test; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * 身份证号码验证 * */ pub ...

  2. 简单的关于身份证(15位或者18位)合法性验证

    简单的关于身份证(15位或者18位)合法性验证 package com.clark.test.idcard;/*** 测试校验身份证合法性的小程序* <p>我们常用的身份证号码为18位或者 ...

  3. 【转载】 身份证号码校验(15位和18位都可以)

    转载自: 开源中国社区    面向对象的15位.18位中国大陆身份证号码解析.验证工具 import java.text.ParseException; import java.text.Simple ...

  4. JAVA 输入身份证号码进行验证正误,15位转18位,并解析出生日、当前年龄、地区代码、性别

    我们的身份证号码包含很多的信息,下面的代码提供了身份证的解析功能,具体看注释吧,已经写全了 import java.text.SimpleDateFormat; import java.util.Da ...

  5. JS实现身份证号码15位转18位时最后一位的算法

    <SCRIPT LANGUAGE="JavaScript">    <!--    var lastNumber;    var id = "15位身份 ...

  6. js中15位及18位身份证号码的校验

    15位身份证结构: 地区代码(6位),年(2位)月(2位)日(2位),顺序码(3位,最后1位偶数代表女,奇数代表男) 18位身份证结构: 地区代码(6位),年(4位)月(2位)日(2位),顺序码(3位 ...

  7. Java 从身份证号码中获取出生日期、性别、年龄(15位和18位)

    项目场景: 提示:这次做项目的时候遇到一个工具,整理出来以后可以直接使用 问题描述:给一个String 类型的 身份证号码,需要从这串数字中获取出生日期.性别.年龄 身份证号码分为 15 位 和18 ...

  8. 使用Java编写Hive的UDF实现身份证号码校验及15位升级18位

    使用Java编写Hive的UDF实现身份证号码校验及15位升级18位 背景 在数仓项目中,有时候会根据身份证信息做一些取数filter或者条件判断的相关运算进而获取到所需的信息.古人是用Oracle做 ...

  9. 15位、18位身份证号码正则表达式

    身份证正则表达式 在项目中遇到身份证号码验证,百度了一些资料,太简单的和太复杂的pass,综合了一些案例,取长补短,形成了个折中版本的,正则表达式如下: var reg =/(^[1-9]\d{5}( ...

  10. 15位和18位身份证号码的结构介绍

    身份证号码编码方法 要进行身份证号码的验证,首先要了解身份证号码的编码规则.我国身份证号码多由若干位数字或者数字与字母混合组成.早期身份证由15位数字构成,这主要是在1980年以前发放的身份证,后来考 ...

最新文章

  1. 为什么说百度教育大脑3.0,是中国教育迎来的真正智慧大脑?
  2. SQL Server 2008数据库,显示正在恢复,想把它删了结果删除不了
  3. android插件框架机制的选择,Android插件开发初探——基础篇
  4. PHP中的include和require
  5. ls/vi等 command not found
  6. ucc编译器(中间代码生成)
  7. 2020 CTF暑假夏令营培训Day1 安全杂项Misc
  8. ONVIF协议开发使用
  9. 三维空间中点到点、点到直线、点到平面的距离计算
  10. SecureCRT创建串口连接
  11. bowen -猜拳游戏
  12. 去中心化云图床搭建建议:Cyberduck+4everland bucket
  13. 华硕服务器 u盘安装系统,华硕台式机一键U盘装系统win7教程
  14. 96Boards MIPI CSI Camera Mezzanine V2.1
  15. Mybatis The error may involve defaultParameterMap ### The error occurred while setting parameters
  16. 国家一级学会创办的期刊
  17. Qt知识点梳理 —— 国际化 QtLinguist 应用(2)
  18. HTML外部样式表如何引入CSS样式
  19. 【Spring Cloud 11】软件架构设计
  20. kafka副本机制学习

热门文章

  1. 学习基础的html代码知识(入门篇)
  2. Learun敏捷框架甘特图——摆脱项目管理的泥沼
  3. 计算时间间隔 日历牌上的 周数
  4. MySQL索引优化的几种方式
  5. ubuntu22打开utools报错 缺少libcrypto.so.1.1问题解决
  6. 关于Excel实现分组求和最全文档
  7. 用java怎么做中国象棋的小游戏_java开发中国象棋小游戏
  8. springboot悠悠转二手网站毕业设计源码181134
  9. 广数工业机器人五点法_广州数控工业机器人GR-C控制系统操作说明书(2014年11月.pdf...
  10. matlab2012a for mac,matlab 2016a mac |matlab 2016a for mac免费版专业版 32位/64位 - 系统天堂...