项目中身份证有效期的判断规则
来源:互联网 发布:淘宝女模特好漂亮 编辑:程序博客网 时间:2024/05/16 16:22
最近做项目要用到判断身份证有效信息,但是又无法调用公安系统接口获取有效期、身份证号码等信息,于是在系统中做了如下处理来判断,来处理有效期规则和防止有效期、身份证号码等规则被篡改:
1)、首先判断身份证有效期截止日期是否是“长期”,若为长期且当前年份减去身份证号码里出生日期年份>=46(岁)则直接当作未过期来处理(因为仅在年龄>=46时身份证有效期才可能会为“长期”);
2)、若有效期截止日期不是长期,则继续和本地服务器当前时间判断,若有效期截止日期在本地服务器当前时间之前,返回过期:
3)、若有效期截止日期在本地服务器当前时间之后,继续以下判断:
STEP1:系统根据“主卡证件有效起始日期”及“主卡证件有效截止日期”栏位的差值计算主卡人持有的是5年/10年/20年/长期/临时的身份证,记为值A 若“主卡证件有效截止日期”栏位值前4位-“主卡证件有效起始日期”栏位值前4位=5,则A=5; 若“主卡证件有效截止日期”栏位值前4位-“主卡证件有效起始日期”栏位值前4位=10,则A=10; 若“主卡证件有效截止日期”栏位值前4位-“主卡证件有效起始日期”栏位值前4位=20,则A=20; 若“主卡证件有效截止日期”栏位值前4位-“主卡证件有效起始日期”栏位值前4位〉20,则A=长期; 若“主卡证件有效截止日期”栏位值前4位-“主卡证件有效起始日期”栏位值前4位=0或=1,则A=0或=1;STEP2:系统根据主卡人的“出生日期”及“主卡证件有效起始日期”计算主卡人办理身份证时的年龄(周岁),记为值B B=(“主卡证件有效起始日期”栏位值—“出生日期”栏位值)/10000后的整数部分STEP3:若值A与值B不满足以下关系,则有效期无效; 当A=5时,B<16; 当A=10时,16≤B≤25; 当A=20时,26≤B≤45; 当A=长期时,B>=46; 当A=0或A=1时,B可为任意值;STEP4:当A≠5且A≠10且A≠20且A≠长期且A≠1且A≠0时,则有效期无效;STEP5:A=5或A=10或A=20时,若“主卡证件有效起始日期”和“主卡证件有效截止日期”月日不是一一匹配,则有效期无效。
阅读全文
0 0
- 项目中身份证有效期的判断规则
- 身份证的校验判断
- 身份证规则
- ASP中COOKIES有效期的多种使用方法
- 彻底理解Redis中有效期的问题
- JAVA 判断身份证的正确性
- js验证身份证及身份证的命名规则
- php使用身份证的验证规则
- Android_仿苹果数字键盘以及判断信用卡有效期的Editext
- 交通银行信用卡积分有效期规则
- 【假身份证】ASCII码协助判断身份证的真假
- 判断我国公民的身份证是否合法
- 身份证js的判断、省份、生日、性别
- 改变discuz论坛中默认的cookie 的有效期
- web开发中session有效期的几种配置
- 中华人民共和国身份证验证规则
- 公民身份证编码规则
- 身份证编码规则
- 如何创建快速联系人标记
- [Leetcode]_32 Longest Valid Parentheses
- Scala程序设计原则:Least Power
- Kotlin笔记(七)类成员(属性,内部类,匿名内部类)
- 170606 逆向-CrackMe之015
- 项目中身份证有效期的判断规则
- 现代软件工程-构建之法(第三单元)
- 图形性能和网络性能(对UPD性能有实测数据支持)
- 聚类个数的判断
- SSH物流开发系统设计:业务人员的增删改查
- windows下配置mycat,实现mysql数据库的读写分离!
- POJ-1201 (差分约束系统)
- SpringMVC 拦截器
- 分享一個svg圖標生成工具