首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

C# 二代身份证验证 VerifyIDCard

由于现在社会技术的发展,需要验证身份证的合法性越发重要 那么我们如何去验证一个身份证是否合法呢?...我在以前的时候,特意写过一篇VB.NET 查询身份证信息当 然它是通过“百度身份证信息查询”的REST接口 编写的一个类, 当然那个时候并不考虑通过“身份证验证算法”识别身份证是否 有效,注意VB.NET...的主题是“查询身份证信息”而不是“验证身 份证合法性”、 我们以上面的“身份证号码”为例,当然这是我通过算法生 成的、如果需要理解“身份证号码验证的合法性”算法 那么 必须要清楚知道 它是如何去验证的...、 身份证号码“第十八位”是整个“身份证验证”流程的核心、 身份证“前十七位”与“规定乘积”后的值相加,最后通过一 定规律“序列值”与身份证号码“第十八位”比较,相同合法、 那么我们以上面的“身份证号码...”为例,手动计算“身份证号 码”是否合法 从上图中可以看到“510129199705303706”手动校验是 合法的、同时可以知道这是个刚满18不久的小妹妹、 当然你或许会疑惑为什么“校验码”会是6呢

66020

二代身份证编码规则及校验代码实现

本文主要讨论的是二代身份证编码规则及其Java代码实现,下面的校验方式还不是特别严谨,由于只校验了前两位的省份信息,中间六位的出生日期信息和最后一位的校验码信息,故对于部分不满足要求的证件号码刚好同时满足了这里提到的几个条件...,也会被判定为是合法的证件号码… 1 二代身份证号码编码规则 1.1 编码格式 1999年我国颁发了第二代居民身份证号,公民身份号码为18位,且终身不变。...189 第二步:计算求和后除以11的余数 189%11=2 第三步:在检验码中查询余数对应的检验码 2所对应的校验码是X,注意X必须大写 2 Java编码实现 2.1 对外提供的调用接口 /** * 二代身份证号码有效性校验...(idNo.substring(0, 2)) && isValidDate(idNo.substring(6, 14)) && checkIdNoLastNum(idNo); } 2.2 二代身份证正则表达式.../** * 二代身份证正则表达式 * * @param idNo * @return */ private static boolean isIdNoPattern(String idNo) {

1.4K20

正则实现二代身份证号码验证详解

最近项目需要对身份证进行比较合理的筛选,并不想用到第三方接口,所以写了个方法: 包括支持身份证号合法性验证, 支持18位身份证号,支持地址编码、出生日期、校验位验证. 基本上这样就可以了....IdCodeValid:function(code){ //身份证号合法性验证 //支持15位和18位身份证号 //支持地址编码、出生日期、校验位验证 var city={11:"北京",12:...city[code.substr(0,2)]){ row={ 'pass':false, 'msg':'身份证号地址编码错误' }; }else{ //18位身份证需要验证最后一位校验位...= code[17].toUpperCase()){ row={ 'pass':false, 'msg':'身份证号校验位错误' }; } } } return...\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01]) 身份证正则表达式 /^\d{6}(18|19|20)?

2K10
领券