核對數位
此條目沒有列出任何參考或來源。 (2016年11月29日) |
校驗碼(英語:Check digit)通常是一組數字的最後一位,由前面的數字通過某種運算得出,用以檢驗該組數字的正確性。常見的校驗碼有中華人民共和國居民身份證的最後一位,ISBN號碼的最後一位等。
各地身份證算法
不同的校驗碼的算法常常不同,下面以身份證的校驗碼為例
中國大陸
按照中華人民共和國國家標準GB11643-1999規定中華人民共和國公民身份號碼校驗碼的計算方法即為ISO 7064:1983.MOD 11-2校驗碼計算法。
假設某一17位數字是
17位數字 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
加權因子 | 7 | 9 | 10 | 5 | 8 | 4 | 2 | 1 | 6 | 3 | 7 | 9 | 10 | 5 | 8 | 4 | 2 |
- 計算17位數字各位數字與對應的加權因子的乘積:
- ;
- 計算 的餘數:
- ;
- 計算 的餘數R,如果 ,校驗碼為字母「X」;如果 ,校驗碼為數字「R」:
- 。
該17位數字的校驗碼就是7,聚合在一為123456789012345677。
台灣
台灣身份證校驗碼計算方法如下
英文字母加8位數字 | A=10 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
---|---|---|---|---|---|---|---|---|---|
加權因子 | 1、9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
- 計算9位數字各位數字與對應的加權因子的乘積:
- 121
- 計算 的餘數:
- ;
- 計算 的餘數R,如果 ,校驗碼為字母「0」;如果 ,校驗碼為數字「R」:
- 。
參閱
這是一篇與電腦相關的小作品。您可以透過編輯或修訂擴充其內容。 |