寻求下面算法的破解方法

温潇   admit.wenx@gmail.com

转贴请注明出处

寻求下面算法的破解方法。(Copy Right by WenX, admit.wenx@gmail.com

本加密算法由温潇,WenX, admit.wenx@gmail.com提出。

      输入:分组大小待加密文件名输出文件名加密强度(Strong)key

//假设现有16个子替换模块,16个子置换模块,4种反馈模式,分别编号为0~15;0~15;0~3

0.             预处理

得到分组数量(G)

分组时的在文件前部填充随机数直至恰好能够分成整数组。

1.             子密钥生成

(1)       Saltkey文件长度Strong进行拼合[]得到Ka,分别使用SHA-512Whirlpool散列,得到两个512位的散列值。再将两散列值拼合与密钥和当前循环轮数相加后再次散列,循环50次后得到一个1024位的K0

(2)       使用K0得到Strong +1KC,方法如下:

K0+iMD5散列,得到结果为KC[i],后置K0:= K0+MD5(K0+i)

(3)       用相同方法得到Strong+2KBStrong+3KC

2.             加密过程

iKA,iKB分别指向KAKB正在使用的位置;it表示正在进行的轮数,ip表示正在执行的分组数。

For ip:=1G step 1

M:=读取第ip组数据

        For it=1Strong step 1

           使用第(KA[iKA]⊕(KA[iKA]>>1))&3种反馈算法对MKC[it] 各进行一次反馈操作,反馈输入为KC[it]

      使用第KA[iKA]⊕(KA[iKA]>>9)&7种子替换模块对MKB[iKB] 各进行一次加密,密钥为KB[iKB]

      KB[iKB]进行高低位置换。

      使用第KA[iKA]⊕(KA[iKA]>>17)&7种子置换模块对MKA[iKA]各进行一次加密,密钥为KB[iKB]

      End for

使用第(KA[iKA]⊕(KA[iKA]>>1))&3种反馈算法对MKC[it] 各进行一次反馈操作,反馈输入为KC[it]

输出M

End for

3.             文件尾生成

文件尾包括:加密版本信息(8bit)、文件前部随即填充块长(8bit)Strong(8bit)salt(8bit)

使用K0进行分成两部分→异或→分成两部分→异或……直至长度缩短为32位后与文件尾异或。

将文件尾保存在文件末端



[] 此处,拼合表示将几个值顺序连接起来。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值