HotWC3网上CRC超级运算器V5.08开始支持CRC密码并可选择抗击差分攻击,本文数据全部由它提供
CRC密钥:
1.CRC多项式的数学表达即CRC权值.
2.CRC算法移位的方向即左移CRC或右移CRC。
3.CRC初值即与明文的初始异或值。
4.CRC出值即与密文的终止异或值。
CRC密钥碰撞:
对于不同的CRC密钥,相同的明文经过CRC运算得到相同的密文。
从CRC编码矩阵的角度分析:
每个CRC编码矩阵对应的明文排列都会得到唯一不重复的密文排列,每个权值对应一个CRC矩阵。
即:
密文=CRC编码矩阵[初值,明文]^出值。
其中:
初值只对第1个明文有效,其它明文的初值为上次的密文。
出值只对最后1个明文有效。它和最后1个密文的异或值即为CRC的最终校验和。
相应的CRC解码矩阵有下列关系:
明文=CRC解码矩阵[初值,密文^出值】。
其中初值和出值的解释如上所述。
可以看出CRC运算即CRC编解码矩阵不能作为密码体系的主要原因:
本次的密文作为下次的初值。且初值和出值都只用1次。
这样采用菜农的三点或四点攻击,CRC的密钥即可告破。
但要特别注意是当初值和出值非“0”或非“1”时,将会发生“CRC初值出值碰撞”,
即:
初值和出值非“0”或非“1”都将被化简为初值不定出值恒为“0”。
在此初值的作用下,CRC运算得到的明文和密文配对就是此权值下的初值和出值配对。
即用此所有初值和出值配对经过CRC运算,相同的明文都会得到相对应的相同密文配对。
即“任意初值和出值配对都会散列为相同的明文和密文配对”。故无法证实初值和出值的真伪。
基于CRC密钥碰撞的CRC对称密码安全体系:
该“密码安全体系”继承CRC算法的风格,改进如下:
1.初值将单独与每个明文异或而非“第1个明文”。
2.出值将单独与每个密文异或而非“最后1个密文”。
3.本次与出值异或前的密文与原始初值作为下次明文的输入初值。
此“输入初值”都将同时得到原始初值和出值的保护。
基于CRC密钥碰撞的CRC对称密码安全体系已在新版的HotWC3运算器V5.08上通过测试通过。
菜农个人认为:
此CRC密码体系算法透明,可以用用CRC编解码矩阵进行分析,无任何“陷门”。可以抵抗目前的
任何攻击手段,因为它的设计思想是将明文和密文流全部提供给破解者也无法攻击出CRC密钥。
这主要归功于“基于CRC密钥碰撞的思想”,使CRC初值和出值只能通过穷举而且是首先破解CRC权值
和CRC方向后才会有此机会。
这样CRC密钥就真正地变为“四要素”即CRC权值和方向及初值和出值。
以CRC8为例,则其CRC密钥为3*8=24位,即2^24
以CRC64为例,则其CRC密钥为3*64=192位,即2^192
以CRCn为例,则其CRC密钥为3*n位,即2^(3*n)
可以看出该密码体系是“积木式组合”的,故菜农认为:
该对称密码体系是目前地球上最朴实和最强大的密码体系~~~而且很适应于小资源的计算机系统如MCU.
下午经过攻击验证后,首先打电话给王育民教授,和他探讨了很长时间,由于他近日很忙无法腾出时间。
但我们约好了在菜农“全球征婚”截止日期2009.12.26前见个面,讨论菜农近期在密码领域的“大动作”。
菜农坚信“红色脑浆”绝不会输给“白色脑浆”~~~
HotPower@126.com 2009.12.15 于雁塔菜地
●█〓██▄▄▄▄▄▄ ●●●●●●→ ''''╭WWWW╮
▄▅██████▅▄▃▂ 传播非典灌水四方 ( ●_●)
███天█马█行█空████ '''',,,;,;,;'''/▇\''
◥⊙▲⊙▲⊙▲⊙▲⊙▲⊙▲◤ 群魔乱舞见阳光/MMMM\
文章评论(0条评论)
登录后参与讨论