18位身份證校驗算法
身份證校驗碼算法
身份證校驗碼產生方法:
∑(ai×Wi)(mod 11)
i: 表示號碼字符從由至左包括校驗碼在內的位置序號;
ai 表示第i位置上的號碼字符值;
Wi 第i位置上的加權因子,其數值Wi=mod(power(2,(n-1)),11)
i 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Wi 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 1
相應的校驗碼:
∑(ai×WI)(mod 11) 0 1 2 3 4 5 6 7 8 9 10
校驗碼字符值ai 1 0 X 9 8 7 6 5 4 3 2
下面是校驗函數:
FUNCTION sfzjy(num)
if len(num)=15 then
cID = left(num,6)&"19"&right(num,9)
elseif len(num)=17 or len(num)=18 then
cID = left(num,17)
end if
nSum=mid(cID,1,1) * 7
nSum=nsum+mid(cID,2,1) * 9
nSum=nsum+mid(cID,3,1) * 10
nSum=nsum+mid(cID,4,1) * 5
nSum=nsum+mid(cID,5,1) * 8
nSum=nsum+mid(cID,6,1) * 4
nSum=nsum+mid(cID,7,1) * 2
nSum=nsum+mid(cID,8,1) * 1
nSum=nsum+mid(cID,9,1) * 6
nSum=nsum+mid(cID,10,1) * 3
nSum=nsum+mid(cID,11,1) * 7
nSum=nsum+mid(cID,12,1) * 9
nSum=nsum+mid(cID,13,1) * 10
nSum=nsum+mid(cID,14,1) * 5
nSum=nsum+mid(cID,15,1) * 8
nSum=nsum+mid(cID,16,1) * 4
nSum=nsum+mid(cID,17,1) * 2
'*計算校驗位
check_number=12-nsum mod 11
If check_number=10 then check_number="X" elseIf check_number=12 then check_number="1" elseif check_number=11 then check_number="0" End if sfzjy=check_number
End function
其它校驗:
性別與出生年月:
sfznum=身份證號碼
lenx=len(sfznum)
if lenx=15 then
yy="19"&mid(xian,7,2)
mm=mid(xian,9,2)
dd=mid(xian,11,2)
aa=mid(xian,15,1) '15位身分證取第十五位,能被2整除為女性
end if
if lenx=18 then
yy=mid(xian,7,4)
mm=mid(xian,11,2)
dd=mid(xian,13,2)
aa=mid(xian,17,1) '18位身分證取第十七位,能被2整除為女性
end if
if aa mod 2=0 then
xb="女"
else
xb="男"
end if
if lenx=18 then
if mid(xian,18,1)<>cstr(sfzjy(xian)) then '如果第十八位校驗碼不等于計算出的校驗碼則身份證號碼有誤.
response.write "提示:身份證校驗位錯誤!"
else
response.write "結果:身份證號碼校驗為合法號碼!"
end if
else '如果輸入的是十五位號,則計算出十八位新號
response.write "新身份證:"&left(xian,6)&"19"&right(xian,9)&cstr(sfzjy(xian))
end if
關于戶籍判斷則而要數據庫.這里就不提供了.
身份證校驗算法與ASP程序
2019-10-30 15:29asp教程網 ASP教程
身份證校驗算法與ASP程序
延伸 · 閱讀
- 2024-12-13抖音副總裁李亮談算法:對謠言和網暴的識別與
- 2024-12-13陳天橋披露盛大公司 AI 戰略:布局智能商業決策
- 2024-12-13消息稱“最懂中國女人的男人”歐文武從京東離
- 2024-12-13摩爾線程開源高性能線性代數模板庫 MUTLASS,加速
- 2024-12-13解禁粉絲暴漲!抖音副總裁李亮:吳柳芳能火與算
- 2022-03-11Java十大經典排序算法圖解
精彩推薦
- ASP教程
asp+javascript實現404頁的處理轉換
asp+javascript實現404頁的處理轉換...
- ASP教程
JScript中遍歷Request表單參數集合的方法
這篇文章主要介紹了JScript中遍歷Request表單參數集合的方法,本文以遍歷Request.QueryString集合為例給出了實現代碼,需要的朋友可以參考下...
- ASP教程
asp 采集實戰代碼
最近實在是太流行采集了,本人是不喜歡采集的,但對采集的原理我卻很有興趣進行研究,拿到了網上采集常用函數,對其進行了一番研究,并實戰,結果...
- ASP教程
ASP.NET 數據源
數據源 一個 data sourse 控件與數據綁定的控件相互作用,并隱藏了復雜的數據的聯編過程。這些是提供數據給 data bound 控件的工具,并且支持如插入,刪除...
- ASP教程
asp之基于adodb.stream的文件操作類
asp之基于adodb.stream的文件操作類...
- ASP教程
asp 標記字符串中指定字符變色不區分大小寫
今天遇到這種問題,單純的使用replace函數不行,他會改變原有的字符串的大小寫,在網上找到相關的代碼,自己備份下...
- ASP教程
asp Access數據備份,還原,壓縮類代碼
asp Access數據備份,還原,壓縮類實現代碼,大家可以參考下。...
- ASP教程
ASP常用函數:getpy()
ASP常用函數:getpy()...