识别CRC8校验和:8位单片机设备逆向分析求助
8位老旧单片机CRC8算法逆向工程相关信息
正在对一款采用8位单片机(uC)的老旧设备开展逆向工程,已获取该单片机发送给计算机的多组消息及对应校验和结果,同时找到该单片机的不完整代码,目前明确以下信息:
- 采用CRC8算法
- 可能存在未知的初始值或最终值
消息结构
消息格式为:STX+DATA+EOT+校验和+EXT
CRC8算法实现代码
byte CRC8(byte param_1,byte *checksum) { byte bVar1; char cVar2= '\b'; byte bStack_3 = param_1; do { bVar1 = (bStack_3 ^ *checksum) << 7; if ((char)bVar1 < '\0') { *checksum = *checksum ^ 0x18; } *checksum = *checksum >> 1 | bVar1; bStack_3 = bStack_3 >> 1 | bStack_3 << 7; cVar2 = cVar2 + -1; } while (cVar2 != '\0'); return param_1; }
内容的提问来源于stack exchange,提问作者user23571166
相关产品推荐
相关产品推荐

