身份证查询算法及asp程序
18位id验证算法身份证识别码算法
身份证验证码生成方法:
西格玛(AI x)(国防部11)
I:表示从左到左的数字字符的数目,包括校验码。
AI表示i位置上的数字字符值;
WI位置上的权重因子,它的值= mod(幂)(2,((n-1)),11)
我181716151413121110 87654321
无线79105842163 791058421
相应的校验码:
西格玛(ai x)(国防部11)0123456789 10
检查代码字符值ai 10×98765432
下面是检查功能:
功能sfzjy(努姆)
如果莱恩(努姆)=15
左(编号,6)19右(号码,9)
Elseif len(努姆)= 17或兰(努姆)= 18
CID =左(Num,17)
最后如果
北索马里联合运动=中(CID,1,1)* 7
北索马里联合运动=北索马里联合运动+中(CID,2,1)* 9
北索马里联合运动=北索马里联合运动+中(CID,3,1)* 10
北索马里联合运动=北索马里联合运动+中(CID,4,1)* 5
北索马里联合运动=北索马里联合运动+中(CID,5,1)* 8
北索马里联合运动=北索马里联合运动+中(CID,6,1)* 4
北索马里联合运动=北索马里联合运动+中(CID,7,1)* 2
北索马里联合运动=北索马里联合运动+中(CID,8,1)* 1
北索马里联合运动=北索马里联合运动+中(CID,9,1)* 6
北索马里联合运动=北索马里联合运动+中(CID,10,1)* 3
北索马里联合运动=北索马里联合运动+中(CID,11,1)* 7
北索马里联合运动=北索马里联合运动+中(CID,12,1)* 9
北索马里联合运动=北索马里联合运动+中(CID,13,1)* 10
北索马里联合运动=北索马里联合运动+中(CID,14,1)* 5
北索马里联合运动=北索马里联合运动+中(CID,15.1%)* 8
北索马里联合运动=北索马里联合运动+中(CID,16,1)* 4
北索马里联合运动=北索马里联合运动+中(CID,17,1)* 2
运行校验位数计算
check_number = 12 mod 11北索马里联合运动
如果check_number = 10然后check_number =Xcheck_number = 12然后check_number =1check_number = 11,check_number =,0
端功能
其他检查:
性和出生年份:
sfznum =身份证号码
联欣= Len(sfznum)
如果联欣= 15
YY = 19 中(西安,7,2)
mm中(西安,9)
DD =中(西安,11)
AA =中(西安、15.1%)15位身份证第十五,可以是2分的女人
最后如果
如果联欣= 18
YY =中(西安,7)
mm中(西安,11)
DD =中(西安,13)
AA =中(西安、17,1)'18位身份证第十七,可以是2分的女人
最后如果
如果AA mod 2 = 0然后
XB =女人
其他的
XB =人
最后如果
如果联欣= 18
如果中(西安,18)<> CSTR(sfzjy(西安))那么如果第十八位校验码不等于计算校验码,身份证号码是错的。
response.write提示:身份证校验位错误!
其他的
response.write 的结果:身份证号码检查的法定人数!
最后如果
否则,如果输入十五位数字,则计算十八位新数字。
response.write 的新身份证:左(西安,6)19权(西安,9)(sfzjy CSTR(西安))
最后如果
至于户籍判决,则需要数据库。这里没有提供。