我正在尝试对Bioweight USB秤进行逆向工程。我能够通过USB端口发送命令并获取返回值,但通信数据包似乎附加了2字节散列或校验和或某种类型的控制。
以下是一些示例数据包。我知道前6个字节的含义,但最后2个字节是我想要检查的。
有人能发现使用何种检查算法?
答案 0 :(得分:1)
它似乎是字节1到5的CRC-16(即除了第一个字节之外的所有字节,始终为0xFF)。
我通过输入字节来验证这一点" 0x03 0x01 0x55 0xAA 0x55"进入online CRC-16 calculator。
顺便说一句,每个USB数据包都附加了CRC-16。我不确定你是如何获得这些数据的;也许您只是看到了USB规范中内置的CRC-16。