我自己做了个excel表格来进行校验码计算里面有算法
你要是需要可以给我你的邮箱,我发过去
你要是只想知道算法,我就简单告诉你
校验码作为第1位(这里按照18、17、16...1
进行号码排列),它生成不是随机的,而是通过前17位的计算得出
具体算法是
前17位分别乘以7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,然后进行ξ和,也就是结果相加;得到的数据模除11(也就是除以11,取其余数),得出0到10共11个数字,然后分别对照1,0,x,9,8,7,6,5,4,3,2进行替换,这便是最终的校验码.
举个例子:34052419800101001x
当你不知道最后一位时,也就是
34052419800101001
前17位的乘积和(就是分别乘以7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2再求和)是189
,再除以11,余数为2
此时,对照1,0,x,9,8,7,6,5,4,3,2的第三位(从0到10顺序替换)
得到校验位为x.