我会对非对称算法(如RSA和ElGamal )中的安全性进行一些测试,以评估哪一种算法更安全。
基本的问题是,我需要测试一些对称和非对称算法的安全性,以评估它们的安全性,并知道哪种算法更安全,以及它抵御实时攻击的能力。在这两种类型的算法中,我都用它们的漏洞创建了一个表,但是我想用一些特定的测试来测试它们的安全性。然后,我需要一个测试,让我得出结论,算法是安全的,无论是对称的和不对称的算法。
例如,在对称算法中,您可以使用的测试是雪崩效应链接,但是在非对称算法中,我没有发现任何人,我只知道雪崩效应并不适用于这种类型的密码学。
对可能的测试有什么建议吗?
发布于 2016-10-07 22:18:47
如果您想测试RSA或ElGamal实现的参数,那么这是相当简单的(假设您可以查看实现的内部,并问“这些素数是从随机分布中提取的吗,您是否正确地得到了RSA填充,您是否对相关的侧通道攻击安全,等等)。您确实需要知道您的密码,但这并不难。
另一方面,如果你设计了自己的公钥密码系统,那就更难了。实际上,对称密码系统并不是那么容易;你提到的“雪崩”测试是一个非常弱的测试;密码可以很容易地通过,而且仍然非常弱。
在这两种情况下,真正的测试都是‘一个聪明的人能够访问密文,可能是一些明文,以及(在公钥密码系统的情况下)公钥能够找到攻击’。这不是一个容易回答的问题(或者你希望,如果有一个简单的答案,那就是‘是的,这是这个攻击’)。
对于公钥密码系统,最明显的出发点是它们所基于的“困难问题”;为什么我们认为它很难呢?对于RSA来说,这是"RSA问题“(人们通常说,保理,但事实证明并非如此);对于ElGamal,这是Diffie-Hellman问题。在您的情况下,您需要考虑哪些问题使得在一个方向执行(使用公钥)很容易,而在另一个方向执行则很难(使用公钥,而不是私有密钥)。
困难问题并不是系统失败的唯一可能的方法(考虑没有填充的RSA;RSA问题仍然很难,但我们可以利用原始RSA的同态特性找到打破系统的方法);然而,这是显而易见的起点。
https://crypto.stackexchange.com/questions/40529
复制相似问题