我有一些十六进制数据,我现在知道它的含义(比如时间,位置,ecc...):
01 64 00 00
01 01 01 2E
84 88 BE 00
00 AE 11 06
F8 03 C3 89后跟校验和/密码:
56 3B 87 9B还有另一个简单的例子(只是最后一点在改变):
01 64 00 00
01 01 01 2E
84 88 BE 00
00 AE 11 06
F8 03 C3 88使用以下校验和/密码:
DF 82 05 B3我还有更多这样的例子。
有没有办法找出(反向工程)使用哪个校验和或密码?我有理由相信它可能只是一个简单的校验和或一个简单的密码,没有太多花哨的东西。
非常感谢
发布于 2021-07-20 06:41:49
不是的。
大多数校验和算法,甚至是旧的,都是为了防止这种情况而设计的。改变输入上的任何一位,得到一个看起来完全随机的校验和,它看起来与其他所有可能的校验和完全无关。
当然,您可以通过您所知道的所有算法运行不同的示例输入,并查看输出是否包含任何示例输出(它可能在开头或结尾,也可能在中间的某个地方)。
如果它更复杂,它可能在通过算法运行数据之前对数据使用"salt“。你可以暴力开始猜测,但我希望你很快就会看到这变得非常不切实际。
发布于 2021-07-21 20:43:58
我发现了些东西也许..。
我认为散列已经使用了一些crc方法,并使用了这个非常有用的工具:
https://reveng.sourceforge.io/readme.htm
我发现了以下结果:
width=32 poly=0x2882b989 init=0xc6ea9616 refin=false refout=false xorout=0x00000000 check=0x6d514c85 residue=0x000000000 name=(none)因为这不是一个标准的CRC,所以我不知道如何检查这个多项式是否有效(我不想自己实现一个CRC散列生成器)……
有没有什么工具可以在给定数据输入和多项式特征的情况下创建CRC哈希(比如poly,init)?
我发现:
https://github.com/madler/crcany
但我不知道如何让它工作(我没有找到任何示例)。
谢谢
https://stackoverflow.com/questions/68447620
复制相似问题