身份证号码解析 - 五岁小孩

加载中...

身份证号码解析

🔒 本工具纯本地运算,号码不会上传或存储 所有计算均在浏览器本地完成,保障您的隐私安全。
输入身份证号码
校验结果

请输入身份证号码并点击"开始校验"

批量校验
批量结果

请输入多个身份证号码并点击"批量校验"

📖 身份证号码结构拆解

中国大陆18位居民身份证号码由以下四部分组成:

  • 第1-6位:地区码 - 表示户籍所在地的行政区划代码(省、市、县/区)
  • 第7-14位:出生日期 - 格式为YYYYMMDD,表示持证人的出生年月日
  • 第15-17位:顺序码 - 同一地区同日出生人员的顺序编号,其中第17位奇数为男性,偶数为女性
  • 第18位:校验码 - 根据前17位计算得出,用于验证号码的有效性,可以是0-9或X

示例:110101199003076537

  • 110101 → 北京市东城区
  • 19900307 → 1990年3月7日出生
  • 653 → 顺序码(第17位3为奇数,表示男性)
  • 7 → 校验码
🔢 校验位算法详解

身份证校验位采用 ISO 7064:1983 MOD 11-2 算法计算,步骤如下:

  1. 加权求和:将前17位数字分别乘以对应的加权因子并求和
    加权因子:[7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]
  2. 取模运算:将加权和除以11,取余数(0-10)
  3. 映射校验码:根据余数从映射表中获取校验码
    映射表:余数: [0,1,2,3,4,5,6,7,8,9,10]
    校验码:['1','0','X','9','8','7','6','5','4','3','2']

示例计算:

号码前17位:11010119900307653
加权求和:1×7 + 1×9 + 0×10 + 1×5 + 0×8 + 1×4 + 1×2 + 9×1 + 9×6 + 0×3 + 0×7 + 3×9 + 0×10 + 7×5 + 6×8 + 5×4 + 3×2 = 273
273 mod 11 = 9
校验码映射:9 → '7'
最终号码:110101199003076537
⚠️ 常见误区
  • 误区一:身份证号码可以随意编造
    身份证号码具有严格的编码规则,特别是校验位的存在使得随意编造的号码无法通过验证。
  • 误区二:地区码对应的是现居住地
    身份证号码中的地区码对应的是户籍所在地(首次办理身份证时的户籍地),而非现居住地。
  • 误区三:顺序码中的性别信息可以更改
    身份证号码中的性别信息是固定的,即使进行了性别变更手术,身份证号码也不会改变。
  • 误区四:身份证号码末位的X是英文字母
    身份证号码末位的X代表数字10,是校验码的一种,输入时应使用大写X。
  • 误区五:身份证号码可以永久使用
    身份证有有效期,到期需要换领新证,但号码保持不变。
💼 使用场景
  • 身份验证:快速验证用户输入的身份证号码是否符合国家标准格式
  • 信息提取:从身份证号码中提取出生日期、性别、年龄、户籍地等信息
  • 数据清洗:批量验证数据库中的身份证号码,找出无效或错误的记录
  • 年龄计算:根据身份证号码精确计算年龄,用于年龄限制验证
  • 户籍统计:统计分析用户户籍地分布,用于市场调研或区域分析
  • 数据脱敏:对身份证号码进行脱敏处理,保护用户隐私
❓ 常见问题
根据ISO 7064:1983 MOD 11-2算法,当计算出的校验码为10时,用罗马数字X表示。这是国际通用的做法,X在这里代表数字10。
身份证号码中的地区码是固定的,对应首次办理身份证时的户籍所在地。即使后来户籍迁移,身份证号码也不会改变。
15位身份证号码是旧版身份证,没有校验码,出生日期只有年份后两位。18位身份证号码是现行标准,包含完整的出生日期和校验码,安全性更高。
本工具采用公历计算年龄,使用的是"周岁"计算方式。由于没有考虑具体的出生时辰,计算结果可能与实际年龄相差1岁。农历生日和公历生日之间的转换也可能导致差异。
本工具支持批量校验大量身份证号码,理论上没有数量限制。但为了浏览器性能考虑,建议单次批量校验不超过1000条。如果需要处理大量数据,建议分批进行。
🔧 相关工具
ROI/ROAS计算器

广告投资回报率计算工具

立即使用
房贷计算器

等额本息/等额本金计算

立即使用
资产配置热力图

个人资产可视化分析

立即使用