首页
社区
课程
招聘
二次加密可以被一次穷举击破吗?
2020-9-6 21:54 11259

二次加密可以被一次穷举击破吗?

2020-9-6 21:54
11259
  如果对明文加密两次得到的密文能被一次穷举攻击破解吗?这个问题也许很少有人研究过,毕竟二次加密就比较少见。
  一般也没有办法判断密文是一次加密的产物还是二次加密的产物,个人认为一次穷举是不能破解二次加密的密文的,理由是密码空间不能同日而语。如果真是这样倒是个反制穷举攻击的着数。欢迎讨论。

[培训]二进制漏洞攻防(第3期);满10人开班;模糊测试与工具使用二次开发;网络协议漏洞挖掘;Linux内核漏洞挖掘与利用;AOSP漏洞挖掘与利用;代码审计。

收藏
点赞0
打赏
分享
最新回复 (20)
雪    币: 13529
活跃值: (4858)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
tDasm 2020-9-7 08:33
2
0
二次加密甚至n次加密,同你那个细分分组本质上是一样的,都是增加加密的运算次数,只不过形式不同而已。
下面举个例子,来分析你那个所谓细分到底起什么作用。
假设某加密算法是可以穷举的,现有一段明文,按正常分组只需一组就能完成加密(所谓正常分组就是按加密位数自动分组)。那么穷举只需一次就可以了,假设穷举一次的时间是1天,也就是24小时。
现在我们来进行细分,把本来一组的数据细分为10组,那么每组的位数只有原来一组的十分之一。
接下来分二种情况进行加密:
1、每组用同一个key进行加密,显然因为key相同,我们只需一次穷举就可以了,穷举时间理论上是1天,但是实际是不是需要1天,我将在第2点中进行分析。
2、每组用不同key加密,因为key不同,显然必须要10次穷举才能完成,但是穷举时间是不是需要10天呢?这是问题的关键,如果的确需要10天,那么细分的目的就达到了。但是实际是不是呢?我们来进一步分析之。
细分为10组,加密时因位数不足会自动进行填充数据,我们来看看加密前的数据结构:十分之一位的明文+十分之9的填充数据。换句话说,就是1/10的数据是变动的,9/10的数据是不变的。也就是说加密前的数据动态范围显著变小了。如果针对这一特点进行穷举,那么一次的穷举时间会明显减少,理想状态应该只有原来的十分之一的时间,当然实际会有所增加。那么10次穷举的总时间是:10乘以1/10,还是1天。当然这是理想状态。实际会有所增加,但是肯定的是不需要10天。
综上所述,我的结论就是,细分不能解决任何问题,只是增加加密次数,和穷举次数,但是不能成倍增加穷举时间。
欢迎批评指正。
雪    币: 1787
活跃值: (340)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
yezhulove 2020-9-7 09:38
3
0
张口就来,2DES不是多次加密?安全吗?
雪    币: 107
活跃值: (3625)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
Imxz 2020-9-7 10:36
4
0
真恶心.
雪    币: 6694
活跃值: (2606)
能力值: ( LV4,RANK:52 )
在线值:
发帖
回帖
粉丝
不对 2020-9-7 10:56
5
0
可以暴力碰撞的,看你是多少字节的加密,每个字节的加密最多需要碰撞256次
雪    币: 13529
活跃值: (4858)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
tDasm 2020-9-7 11:34
6
0

再用一个通俗的比喻来说明。
一块钢板可以承受1000kg力,现在攻击力最大为1500kg,按照你的简单思维逻辑就是再加一块钢板不就解决了?
而改进加密算法和增加加密位数目的是直接把一块钢板的承受力增加为2000kg,而不是去增加一块钢板。
这个比喻告诉你,有很多事不是简单进行叠加就能解决的。不是所有时候都会达到1+1=2的效果。假如那个位置只能放一块钢板呢?如果某算法已经证明可以穷举,那就应该不用,而不是通过细分去解决了。因为细分并没有解决穷举问题,只是稍微增加穷举难度而已。

最后于 2020-9-7 11:37 被tDasm编辑 ,原因:
雪    币: 10014
活跃值: (2012)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
sjdkx 2020-9-7 11:59
7
0
遗憾,没有一个正面回答问题的。
@tDasm   谢谢你的回答,你的回答好像是针对分组密码的,如果是流密码加密细分,不用进行填充数据,能从流密码的角度考虑吗?考虑到细分加密感觉还是不给力,如果将明文看成一个闭环,明文的加密起点由用户密码确定,这样将增加穷举攻击的难度,否则从头部开始有点太简单了。
细分需要很长的密钥,这本身就是穷举的难点,如果密钥和明文一样长你觉得还有穷举成功的可能吗?
@不对  你用暴力时,怎么判断你暴力对了呢?
雪    币: 10014
活跃值: (2012)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
sjdkx 2020-9-8 23:42
8
0
以流密码加密说明一次解密是解决不了二次加密的密文的。
流密码加密用户密码的作用最重要的是算出所用随机函数的种子,所以不管用户密码多长也只是算出一个种子。
首先说明一点,在我的流密码加密中明文和密钥之间的算符使用的是加减法,而不是异或,这样多遍运算不会出现白做的情况。
设一个随机函数序列,s[0],s[1],...,s[n]。这是个周期为 n的随机序列。如果直接用作密钥,就是用序列中的一段做密钥加密或解密文件。例如是用了从i到k的自然序列加密了文件,如果用穷举攻击用整个随机序列,去试解是可以成功的。为了简化这里设二次加密使用了和一次加密时同样长度的密钥,二次加密相当于又用从i1到k1且 k1-i1 = k-i 的序列值再次加密了文件,这时用整个 s[]序列去穷举将不能成功,事实上,是s[i]+s[i1] ,s[i+1]+s[i1+1], ...  s[k]+s[k1];构成的新数组是不存在于 s[]序列中的,所以用什么密码 s[]序列穷举二次加密的结果是不能成功的。
雪    币: 20
活跃值: (78)
能力值: (RANK:0 )
在线值:
发帖
回帖
粉丝
mb_baxqznha 2020-9-10 08:24
9
0
sjdkx 遗憾,没有一个正面回答问题的。 @tDasm 谢谢你的回答,你的回答好像是针对分组密码的,如果是流密码加密细分,不用进行填充数据,能从流密码的角度考虑吗?考虑到细分加密感觉还是不给力,如果将明文 ...
多么熟悉的一句话
你认为没有正面回答,是因为你根本就看不懂别人
总以为别人不懂你,其实你是完全不懂别人
或者是,你根本就不想懂别人,因为,懂了别人,你就发现自己就是个小丑
雪    币: 20
活跃值: (78)
能力值: (RANK:0 )
在线值:
发帖
回帖
粉丝
mb_baxqznha 2020-9-10 08:26
10
0
sjdkx 遗憾,没有一个正面回答问题的。 @tDasm 谢谢你的回答,你的回答好像是针对分组密码的,如果是流密码加密细分,不用进行填充数据,能从流密码的角度考虑吗?考虑到细分加密感觉还是不给力,如果将明文 ...
从技术上,此贴可封楼了。
作为一个攻击者,最希望的就是两次加密,而不是两倍密钥长度的一次加密
密码的安全,是攻击者最终评价的,不是做梦者
雪    币: 10014
活跃值: (2012)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
sjdkx 2020-9-10 14:27
11
0
@mb_baxqznha   楼上的大英雄,帖子提出的问题或是或否,你说了一通废话也看不见回答何也? 
攻击者希望是二次加密,为什么不是八次加密?
雪    币: 920
活跃值: (1585)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
wuxiwudi 2020-9-10 15:31
12
0
举个简单例子啊,121xor10xor5=118, 118xor15=121,再复杂点也行,反正没成本
雪    币: 20
活跃值: (78)
能力值: (RANK:0 )
在线值:
发帖
回帖
粉丝
mb_baxqznha 2020-9-10 15:33
13
0
sjdkx @mb_baxqznha 楼上的大英雄,帖子提出的问题或是或否,你说了一通废话也看不见回答何也? 攻击者希望是二次加密,为什么不是八次加密?
相遇攻击。自己学习去吧。
雪    币: 920
活跃值: (1585)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
wuxiwudi 2020-9-10 15:36
14
0
多说一句,任何人都会骗你只有数学不会,因为数学不会就是不会
雪    币: 20
活跃值: (78)
能力值: (RANK:0 )
在线值:
发帖
回帖
粉丝
mb_baxqznha 2020-9-10 15:40
15
0
https://bbs.pediy.com/thread-260673.htm
这个标题的帖子你都不看,还有啥好沟通的。
一个问题需要说多少次呢?为什么?因为你根本就不学习,所以,你不行,无术。
这个成语太适合你了。
雪    币: 10014
活跃值: (2012)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
sjdkx 2020-9-10 20:42
16
0
那个帖子是 wsy胡说八道,什么现代密码学,已知明文,已知密文,已知明文还用破解吗?所谓现代密码学,不知谁定下的套路,你们就在里面爬行,还自以为懂得挺满足。我主要考虑信息安全而不是符合谁的规定。我的目的是密文不可破解,这点已经实现了,加密一般分两步走,1.去掉明文的特征,2加密无特征的文件。解密是恢复密文为乱码文件,再恢复明文的特征。
雪    币: 4217
活跃值: (4102)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
ericyudatou 2 2020-9-10 22:48
17
0

@sjdkx 

那个帖子是 wsy胡说八道,什么现代密码学,已知明文,已知密文,已知明文还用破解吗?所谓现代密码学,不知谁定下的套路,你们就在里面爬行,还自以为懂得挺满足。我主要考虑信息安全而不是符合谁的规定。我的目的是密文不可破解,这点已经实现了,加密一般分两步走,1.去掉明文的特征,2加密无特征的文件。解密是恢复密文为乱码文件,再恢复明文的特征。

建议您先学习一些基本的知识,把看雪知识库稍微看一看

1.“已知明文,已知密文,已知明文还用破解吗?”

     已知明文攻击,假定明文内容(“passwd”,"license","LIC"等可能出现的字符串)对加密算法进行攻击

2.“不知谁定下的套路,你们就在里面爬行,还自以为懂得挺满足。”

    a.Flexlm公开的ECC函数(sect239k1+ECDSA)和公钥也没见人把私钥求出来,做出可用签名

    b.Simics使用AES-128对安装包加密,512位密码。在英特尔泄露密码之前没有人能解开

3."我的目的是密文不可破解,这点已经实现了,加密一般分两步走,"

    可惜您的算法已经被攻破多少遍了,求求您了别整天跟别人对线,好好的研究一下非对称加密吧。你真要搞随机就请你买个单片机开A/D转换收集环境静电

    来做出真随机。

4.如果您真看不起现在的算法和理论那么就请您把我这个问题解决,求出私钥及明文。

    1.明文被BASE64编码,编码后前7位为'5pCt5om'

    2.使用RSA-4096加密,为给您降低难度,给出部分公钥

-----BEGIN PUBLIC KEY-----
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAtf1V4FaOU+Cs2Ja/0Saz
[             省略一行              ]
BMPi0KXoHSA5YZ9HQ1L/svWbdMRTsJENzVJ0ww01jTt6l9HNf/+ZcV2OHV5b0wN6
[                          省略一行                            ]
uj66J3WYaxZ9G4uxSgRCR8psvjhIGgQdP5Udy30Zk+bBiaKCE7xzHAt9yLaY4s1y
[                          省略一行                            ]
vi5kxSifsPBUdwc2hJPqcuwmMLcbErC1L8kHpNxkwVp7sH+bQLT/PuyABujzhd1x
[                          省略一行                            ]
[                          省略一行                            ]
[                          省略一行                            ]
PWWNTtrcQXuX2tlInU3nJqVbKFMo6cUCr01xS1Q73IEtzfPWkhLl4pUdfC69rmvR
7MiHLTj+pJhTEF3q4W3saCcCAwEAAQ==
-----END PUBLIC KEY-----

    3.密文为

XekoDkDN7ul2dSp9boX3WFkWp8F+sY6gZm+p6r6ZG3h3X64n3m8TwG6I9sXVjFThIxeN3SbDo/7UzBs5mi4g/Y4+k3FidtqPIiwSeGTF/OjQ8rVQHLIMFrngSeXFpQpCeX8shZWPN9dF+0aUb1jpeinQKoZnIp2tPmkNWpLt5QdjbbakJqm3OugrTuOi3fNWfO3dEvQxPZhkb/c8S8txKr7pfgMYjBBzQcGut/z147CFwjMM70fS4kUyrRo5SpZJRfoFujYXGaARWBRd67uOdIXqDXzR6CtwVKgPtOxAr1sOvDuEtJ3bTfzxTKI1pLjMjoZtmgYLfC15O0ne9RVL9JtFoo0c1dtABuhrZfqOgr2LtQRdIWsCTawC5puzpxgtILIkBYtXPhZfg8Vu+HVA8MQQqlMfPQGt0C5XPLj+CynHVYJ5ek9DH0PvjdIZq14xTr1xE5cyek6hM29ISRK8iCxhJktXpRFhlqSvo3c8nkISoKyIY1E40j0Ia9qn8J5n8Yd6jqhLh58HBVrgSK18JXqvQiPQrXKvwQavKprRyYN4GyTqSY85hdWt7q9HB22WCklD0fgviPnpTKXT52eALHcEzDTgxLvQj058V3nqQLWw4pBQWgxgZ76h31hv85/04GQFY4ufo0A/FfPmW4GZPgspR9h4RXNPq8eb104WQ4I=

    注解:

    1.明文为四大名著里的一段文字(汉字,GB2312),正序

    2.这个问题被解决的可能为

        a.RSA-4096受计算机性能提升而失去安全性

        b.RSA算法被证实出现严重的安全漏洞

希望我可以在我没有转生异世界之前看到您解决这个问题;建议您重新审视一下您的思路和您最近的行为,您最近的部分行为实属不妥。

//以上均处于善意的提醒,不涉及任何人身攻击性内容

雪    币: 4217
活跃值: (4102)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
ericyudatou 2 2020-9-10 23:07
18
0
IDesignSpec采用AES-128+RSA-MD5-1024对授权信息进行加密(但强度还是依赖于1024位的RSA)。对于比较成熟的加密算法(两种以上)可以一定程度上增强加密强度,但对于一些不太成熟的算法是没有用的。
雪    币: 10014
活跃值: (2012)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
sjdkx 2020-9-11 13:29
19
0
@ericyudatou  我用不重复的流密码加密基本只适合于唯密文攻击,基本没有算法,你说已被攻破多遍了怎么理解?我说的二次加密第一次为了破坏明文特征,并不一定是加密编码也是一样,特征消除后再加密有错吗?能被攻破吗?我没有经历过谁能破解这样形成的密文。
你的那个编码游戏我玩不转,没有什么思路解题。编码也不是没玩过,曾做过base256编码,彩色元素显示。没有研究过编码解密的东西。
真随机数的探索基本完成,根据是热力学第二定律之熵增加原理,很容易形成随机性很好的真随机数,用在流密码加密中形成密钥数组。
非对称密码也研究过,最后是公私密钥采用的小质数算法结合流密码加密形成的复合加密,即用公私密钥又要密码,在速度上安全性上都有保障。
雪    币: 10014
活跃值: (2012)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
sjdkx 2020-10-22 16:57
20
0
谢绝乱喷。
下面举例说明二次加密的结果不能被一次加密所破解。
这里是流密码加密,所用的算符是加减,一般加密是加号,解密是减号。
设所用的随机函数的周期是N,明文长度是n,考察一下操作的状态数。
考察一下加密的状态数,
一次加密的状态数是:从 N中取 n个的排列数。
二次加密的状态数是:从 N中取 n个的排列数乘以从 N中取 n个的排列数。
考察一下加密用到的密钥数组的构成,
一次加密的数组直接是随机函数值。
二次加密的数组是随机函数序列值从某个起点依次求和得到的。
二次加密所用到的数值一般不会出现在一次加密中,所以二次加密是不能被一次加密所替代的,二次加密的结果也不能被一次加密所破解。
雪    币: 477
活跃值: (1412)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
mb_foyotena 2020-10-22 21:25
21
0
白盒aes
游客
登录 | 注册 方可回帖
返回