身份证号码校验与解析
查询所有处理都在浏览器本地完成,数据不上传服务器
把一批号码粘进来,逐行告诉你能不能用、以及里面写了什么。 校验分三关,任何一关都可能是你要查的:行政区划码(前 2 位)必须是存在的省级代码;出生日期(第 7–14 位)必须是真实存在的日历日、且不在未来;校验位(第 18 位)要按 ISO 7064 MOD 11-2 算得对。失败时会说清是哪一关没过,而不是笼统地「号码无效」—— 一关一关地报,你才知道该改什么。 15 位旧号单独标注。 1999 年之前签发的身份证是 15 位,它没有校验位,只能按规则解析、无法判断真伪。所以本工具把它标成「可解析,但无校验位」而不是「有效」—— 把两者混为一谈,等于给一个看起来权威、其实没有依据的结论。 只给到省级,是因为市县码表会过期。 前 6 位本是完整的行政区划码,但市县两级有两千多条且每年都在变(撤县设区、新区挂牌)。省级码只有 34 条,几十年不变 —— 少给一个信息,好过给一个错的。 全程在本机计算,号码不会离开这个页面。身份信息是最不该经过第三方服务器的东西之一。
功能
- 批量校验:一行一个号码,逐行给出结论,一个错的不会让整批停下来
- 三关分别给原因:行政区划码、出生日期、校验位
- 解析出生日期、性别、所属省份与年龄(周岁)
- 出生日期会验真实存在:2 月 30 日、未来日期都会被指出
- 支持 15 位旧号:能解析出生日与性别,并如实标注「无校验位,无法判断真伪」
- 可只列出不通过的号码 —— 核对名单时用这一档,几百条里一眼看到问题
- 全部通过时会明说「全部通过」,而不是给一张空表
- 生日格式可选 ISO / 紧凑 / 点分三种
- 每行可单独复制,也能整段复制
- 全程在浏览器本地计算,号码不上传
使用方法
- 一行一个号码粘贴进输入框(18 位或 15 位都行)
- 选输出什么:全部解析、只提生日,还是只列不通过的
- 结果实时更新,点某一行的复制按钮取走一项
- 核对名单时用「只列出不通过的号码」,一眼看到问题在哪
常见问题
- 为什么 15 位号码不算「有效」?
- 因为 15 位号码没有校验位。18 位的最后一位是按前面 17 位算出来的,改任何一位都会对不上,所以它能验真伪;15 位(1999 年之前签发)没有这一位,任何数字组合都能「解析」出一组生日与性别,判断不了真假。把它标成「有效」等于给一个没有依据的结论,所以这里如实写成「可解析,但无校验位」。要判断一个 15 位号码是否真实,只能靠发证机关的记录。
- 为什么没有给出具体的市和县?
- 因为市县两级行政区划码有两千多条,而且每年都在变 —— 撤县设区、新区挂牌都会改代码,收进来就有一个「表过期了但没人发现」的维护负担。省级码只有 34 条,几十年不变。所以这里只给到省级:少给一个信息,好过给一个错的。需要市县信息请以发证机关或官方行政区划代码表为准。
- 校验位是怎么算的?
- 按 ISO 7064 MOD 11-2:前 17 位各自乘以一个固定权重(7、9、10、5、8、4、2、1、6、3、7、9、10、5、8、4、2)后求和,用和除以 11 取余数,余数 0–10 依次对应校验位 `1 0 X 9 8 7 6 5 4 3 2`。余数 10 时那一位是字母 `X`。这套算法的目的不是防伪(任何校验位都能被重算),而是拦住手抄与录入时的单字符错误,绝大多数一位写错的号码都会被它抓出来。
- 这些号码会被上传吗?
- 不会。校验与解析全部在浏览器里用几条正则与一次取模运算完成,页面不发任何请求。身份证号是我们处理过的最敏感的一类数据 —— 断网时这个工具照常工作,这本身就是「没有上传」的证据。
相关工具
车牌归属地
查询输入车牌号看它属于哪个省,或留空列出全国 34 个省级行政区的车牌简称与省会对照表。只看省级,不猜城市。
哈希计算
编码算出文本的 MD5、SHA-1、SHA-256 或 SHA-512 摘要,也可算老系统用的 MD4 与 MD2,中文按 UTF-8 字节计算。全部在本地完成。
日期计算
转换算两个日期之间相差多少天,或给一个日期加减若干天、周、月。日期用日历挑或直接粘贴,结束日期留空就与今天比较。全部在浏览器本地完成。
元素周期表
查询查任意元素的原子序数、中英日文名称、相对原子质量、分类、周期、族与电子排布;也可按周期、区间或分类列出整组。
纸张尺寸
查询A、B、C 系列与北美纸张尺寸的毫米、厘米、英寸,以及 72 / 150 / 300 DPI 下的像素值。全部在浏览器本地完成,离线可用。
生肖查询
查询输入年份查生肖与干支(天干地支),或输入生肖名反查年份。同时列出前后各若干年的年份,并说明农历年的边界。