打印
[CRC可逆]

已知CRC32算法,CRC32结果,能否反推初值?

[复制链接]
5072|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

使用特权

评论回复
5
hotpower| | 2016-7-14 17:07 | 只看该作者
它可以穷举

使用特权

评论回复
6
hotpower| | 2017-1-24 00:58 | 只看该作者
本帖最后由 hotpower 于 2017-1-24 00:59 编辑

新版立即**初值!点击初值碰撞即可。参见hotwc3_V1.23

使用特权

评论回复
7
hotpower| | 2017-5-2 08:55 | 只看该作者

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

呵呵,这个是绝版了,正在折腾HotWC3_V1.26。
新版本太凶猛,不敢放出来~~~

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

188

帖子

1

粉丝