免责声明:这只是出于好奇; 在加密方面,我根本不是专家.
假设256位密钥由以下(UTF-16)字符组成:
aaaaaaaabbbbcccc
进一步假设攻击者知道密钥的最后4个字符是cccc.
这种知识是否使攻击者更容易?
我的猜测是它使攻击者更容易对加密文本进行强制攻击,但我的理解是强制执行AES-256是一个非常棘手的问题.然后,可能有一些我不了解AES本身的东西,这使得这种类型的知识对攻击者更有价值.
我想说你的密钥字节来自UTF-16字符是一个更大的问题,但是在ASCII字符空间中(意味着你可以有一个长32个ASCII字符的密钥).因此,您的密钥的32个字节中的16个已知为0x00.知道最后4个c
意味着还有4个字节被泄露了.
因此,您实际上只有12个字节=> 96位的AES密钥未知.
如果您的攻击者采用字母数字字符空间,则会将其减少大约四分之一(62/256).
随着你的工作,你的密钥相当妥协(但不仅仅因为它的4个字符已知)
一个256位的密钥应该给某人1.16×10 ^ 77的猜测权.根据你的情况,它的概率大约是3.23 x 10 ^ 21(基本上是62 ^ 12),这个数字要小一些.
更新:我是一个书呆子,不得不做数学.12个字母数字字符(大写和小写)大致是71位加密强度.(数学检查= log(62 ^ 12)/ log(2))
归档时间: |
|
查看次数: |
380 次 |
最近记录: |