ホームページ  >  記事  >  ウェブフロントエンド  >  js第二世代IDカード番号認証機構 code_javascriptスキル

js第二世代IDカード番号認証機構 code_javascriptスキル

WBOY
WBOYオリジナル
2016-05-16 18:06:531136ブラウズ

応答速度が非常に速いため、オンラインでの正確性の検証が行われないことは確実です。つまり、第 2 世代 ID カードには、誕生日と性別を示すためのよく知られたルールに加えて、別の自己検証ルールもあります。そこでページのソースコードを開いてみると、このjsは圧縮されていないことがわかり、ルールが理解しやすかったです。
科学をみんなに広めるためにここに来ました。火星かどうかは知りませんが(笑)。
次のコードはここからのものであり、著作権は Shanda に属します。もちろん、ウィキペディアでより詳細な紹介とアルゴリズムを見つけることもできます。

コードをコピー コードは次のとおりです。

iW = new Array(7,9, 10,5 ,8,4,2,1,6,3,7,9,10,5,8,4,2,1);
iSum = 0
for( i=0;iiC = v_card.charAt(i);
iSum = iW[i];
iJYM = iSum % 11;
var sJYM = '';
if(iJYM == 0) sJYM = "1";
else if(iJYM == 1) sJYM = "0"; (iJYM = = 2) sJYM = "x";
else if(iJYM == 3) sJYM = "9";
else if(iJYM == 4) sJYM = "8"; if(iJYM == 5) sJYM = "7";
else if(iJYM == 6) sJYM = "6";
else if(iJYM == 7) sJYM = "5"; else if( iJYM == 8) sJYM = "4";
else if(iJYM == 9) sJYM = "3";
else if(iJYM == 10) sJYM = "2"; >var cCheck = v_card.charAt(17).toLowerCase();
if( cCheck != sJYM ){
return false; 一致しない場合は偽の番号です
}

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。