数据校验码

来源:互联网 发布:python import math 编辑:程序博客网 时间:2024/05/22 04:53

最近为了解决接收数据的正确性,需要校验,发现ISO 7064:1983.MOD 11-2校验码不错,如下:

假设某一17位数字是

17位数字12345678901234567加权因子7910584216379105842
  1. 计算17位数字各位数字与对应的加权因子的乘积的和S:1×7+2×9+3×10+4×5+5×8+6×4+7×2+8×1+9×6+0×3+1×7+2×9+3×10+4×5+5×8+6×4+7×2=368;
  2. 计算S÷11的余数T:368 mod 11=5;
  3. 计算(12-T)÷11的余数R,如果R=10,校验码为字母“X”;如果R≠10,校验码为数字“R”:(12-5)mod 11=7。

该17位数字的校验码就是7,聚合在一为123456789012345677


原创粉丝点击