身份證號碼編碼規則及校驗位校驗算法?

身份證是國民的身份編號,編碼是有一定規律的,這裡介紹下身份證的編碼規律,同時介紹下如何計算最後一位校驗位。

方法/步驟

範圍及適用對象,身份證是標示我國為了對公民進行編碼,使編碼的每個對象都能夠獲得唯一的、不變的法定編號的過程。

身份證號碼編碼規則及校驗位校驗算法

身份證18位分別代表的含義,身份證15位升級到18位,原來年用2位且沒有最後一位,從左到右方分別表示

①1-2 升級行政區代碼

②3-4 地級行政區劃分代碼

③5-6 縣區行政區分代碼

④7-10 11-12 13-14 出生年、月、日

⑤15-17 順序碼,同一地區同年、同月、同日出生人的編號,奇數是男性,偶數是女性

⑥18 校驗碼,如果是0-9則用0-9表示,如果是10則用X(羅馬數字10)表示

身份證號碼編碼規則及校驗位校驗算法

身份證的結構標示詳解

身份證號碼編碼規則及校驗位校驗算法

身份證號碼編碼規則及校驗位校驗算法

身份證的每一位的具體算法模型,可以根據此表進行計算。

身份證號碼編碼規則及校驗位校驗算法

適用PHP代碼實現的校驗代碼,只要將每位的對應權重乘以每個位上的數值,然後求和,最後與11求餘數,得到的結果對比找到尾數即可。

身份證號碼編碼規則及校驗位校驗算法

實例1:原有15位身份證是沒有校驗位的,同時採用的是2位數字來表示出生年份

身份證號碼編碼規則及校驗位校驗算法

實例2

身份證號碼編碼規則及校驗位校驗算法

身份證號碼編碼規則及校驗位校驗算法

注意事項

身份證原來的15位編碼方式已經停用,而且15位沒有使用校驗位

最後一位可能出現的X並不是英文字母X,而是希臘數字10的縮寫X

相關問題答案