[CRC可逆] 已知CRC32算法,CRC32结果,能否反推初值?

[复制链接]
5737|6
 楼主| yb0121 发表于 2016-7-1 18:16 | 显示全部楼层 |阅读模式
unsigned long TestCRC32(unsigned long CRC32,        //初始值
                           unsigned char  *Buff,       //数组
                           unsigned long Len)          //数组长度
{
    unsigned long i;

    while(Len--)
    {
        for(i = 0; i < 8; i++)
        {
            if(CRC32 & 1)
                CRC32 = (CRC32 >> 1) ^ 0xEDB88320;

            else
                CRC32 = (CRC32 >> 1);

            if((*Buff) & (1 << i))
                CRC32 ^= 0xEDB88320;
        }

        Buff++;//下一个字节
    }

    return CRC32;
}

算法如上,数据长度0x800,全为0时结果为0x75f70336   想反推初始值。
如果需要其他数据,也可以给出,只是数据长度0x800不可变
 楼主| yb0121 发表于 2016-7-1 18:29 | 显示全部楼层
只要是0x800长度的数据  都可以给出结果,

目前初值穷举中,运算量太大,估计要一星期了
 楼主| yb0121 发表于 2016-7-4 15:53 | 显示全部楼层
穷举解决
最野蛮的方式也许最快捷
hotpower 发表于 2016-7-14 17:07 来自手机 | 显示全部楼层
http://www.21ic.com/tools/HotWC3_V1.22.html
hotpower 发表于 2016-7-14 17:07 来自手机 | 显示全部楼层
它可以穷举
hotpower 发表于 2017-1-24 00:58 来自手机 | 显示全部楼层
本帖最后由 hotpower 于 2017-1-24 00:59 编辑

新版立即**初值!点击初值碰撞即可。参见hotwc3_V1.23
hotpower 发表于 2017-5-2 08:55 | 显示全部楼层

http://www.21ic.com/tools/HotWC3_V1.23.html

呵呵,这个是绝版了,正在折腾HotWC3_V1.26。
新版本太凶猛,不敢放出来~~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

188

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部