勵志

勵志人生知識庫

身分證號碼驗證規則

身份證號碼的驗證規則主要涉及15位和18位身份證號碼的組成和校驗。

15位身份證號碼的組成和驗證規則如下:

前6位為地方代碼,表示身份證持有人的常住戶口所在縣(市、旗、區)的行政區劃代碼。

第7至14位為出生年、月、日,表示身份證持有人的出生日期。

第15、16位為順序碼,表示在同一地址碼所標識的區域範圍內,對同年、同月、同日出生的人編定的順序號,其中奇數分配給男性,偶數分配給女性。

第17位為校驗碼,是根據前16位數字按照ISO 7064:1983.MOD 11-2校驗碼計算出來的檢驗碼。

18位身份證號碼的組成和驗證規則如下:

前6位為地方代碼,表示身份證持有人的常住戶口所在縣(市、旗、區)的行政區劃代碼。

第7至14位為出生年、月、日,表示身份證持有人的出生日期,年份代碼由原來的2位升級到4位。

第15、16、17、18位為順序碼和校驗碼,其中順序碼表示在同一地址碼所標識的區域範圍內,對同年、同月、同日出生的人編定的順序號,校驗碼是根據前17位數字本體碼加權求和公式計算出來的檢驗碼。

校驗碼的計算公式為:S = Sum(Ai * Wi),其中Ai表示第i位置上的身份證號碼數字值,Wi表示第i位置上的加權因子。計算模Y = mod(S, 11),通過模得到對應的校驗碼Y,校驗碼的規則是:1 0 X 9 8 7 6 5 4 3 2,如果得到餘數為1則最後的校驗位p應該為對應的0,如果校驗位不是,則該身份證號碼不正確。