我想使用PayMaya EMV商家提出的QR码规范的支付系统一切都很好,除了CRC我不明白如何生成此代码.这是所有存在关于它,但我仍然不明白如何生成。应根据[ISO/IEC 13239]使用多项式“1021”计算校验和(十六进制)和初始值“FFFF”(十六进制)。用于计算校验和的数据应涵盖所有数据对象,包括其ID、长度和值,以其各自的顺序包含在QR代码中,以及CRC本身的ID和长度(但不包括其值)。
计算校验和后,应通过将每个半字节转换为字母数字特殊字符,将产生的2字节十六进制值编码为4字符字母数字特殊值。
示例:具有两字节十六进制值“007 B”的CRC作为“6304007 B”包含在QR代码中。
2条答案
按热度按时间py49o6xq1#
它将字符串转换为UTF-8表示形式的字节序列,并打印出这些字节的16位循环冗余校验(CRC-16/CCITT-FALSE)。
r1wp621o2#
ISO/IEC 13239的CRC为CRC-16/ISO-HDLC,如该目录中的注解所示。此操作实现该CRC并打印校验值
0x906e
: