爲什麼身份證編號中會出現「X」?

1989年9月6日,《中華人民共和國居民身份證條例》公佈施行。說起身份證,我們今天就來談一談,為什麼身份證編號中會出現“X”!

為什麼身份證編號中會出現“X”?

1999年7月1日,中國實施了身份證的新標準。新的身份證號由以前的15位增加到18位。增加的數碼中,其中有兩位來自持有人的出生年份。新身份證添加的另一位編號則是末尾所加的校驗碼。通常這一位是1~9中的一個數字,但有的身份證上卻會出現一個奇怪的“X”。這是怎麼回事呢?

原來,公安部門在設計身份證時,用前17位記錄持有人的個人信息,而讓第18位成為可以通過前17位計算出來的校驗碼。

在生活中,身份證號碼很可能在手寫傳抄中出錯,因此,第18位數碼的價值在於可用來“檢驗”一個18位的身份證號碼是否正確,故稱之為校驗碼。

現在,讓我們來看看這第18位校驗碼究竟是怎麼算出來的。

設由身份證號碼前17位構成的數列為a1,a2,…,a17。另有一個指定的由加權因子組成的17項數列為7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2。

將這兩個數列的對應項相乘並求和:

S=7a1+9a2+10a3+5a4+8a5+4a6+2a7+1a8+6a9+3a10+7a11+9a12+10a13+5a14+8a15+4a16+2a17。

再將S除以11,得到餘數Y(有11種可能)。最後,用這個餘數Y按以下對應關係確定對應的第18位校驗碼:

Y:012345678910校檢碼:10X98765432

Y:012345678910校檢碼:10X98765432

為什麼校驗碼中會出現一個“X”?其實,X代表羅馬數字10。為了保證身份證號碼是18位,當校驗碼為“10”時,就用“X”代替了。

現在,我們來舉個例子:設某身份證號碼前17位是34052419800101001,計算一下它的校驗碼即第18位數字。

首先,把前17位數字分別乘以其加權因子並求和,得:3×7+4×9+0×10+5×5+2×8+4×4+1×2+9×1+8×6+0×3+0×7+1×9+0×10+1×5+0×8+0×4+1×2=189。然後,用189除以11得餘數是2。最後,根據餘數與校驗碼的對應關係,得到這個身份證的校驗碼是X。於是,身份證上便顯示為34052419800101001X。

信息時代到處都可以看到校驗碼的運用。除身份證外,校驗碼還廣泛應用於商品條形碼、書號等領域。超市中商品的“身份認定”依靠13位的條形碼。它的第13位也是校驗碼。各種校驗碼的設置大同小異,只是“加權因子”和餘數對照表有所不同而已。

數碼需要傳輸。因為在傳輸過程中容易出錯,所以需要在信息中加入一些能夠自我檢驗甚至能自我糾正的“糾錯碼”,那又是一門單獨的學問了。


分享到:


相關文章: