校验码是根据前面十七位数字码,按照ISO 7064:1983.MOD 11-2校验码计算出来的检验码。
具体的公式举例说明为:
某男性公民身份号码本体码为34052419800101001,首先按照公式计算:∑(ai×Wi)(mod 11),其中,i表示号码字符从右至左包括校验码在内的位置序号; a[i]表示第i位置上的号码字符值; W[i]示第i位置上的加权因子,其数值依据公式 W[i] = 2^(i-1) mod (11)计算得出。
则,设R=∑(a[i]×W[i])(mod 11) = 2,同时R的值【0 1 2 3 4 5 6 7 8 9 10】对应取值为【1 0 X 9 8 7 6 5 4 3 2】。
计算结果为2的校验码为X,所以该人员的公民身份号码应该为 34052419800101001X。