Big-O用于公钥加密

Por*_*os3 5 big-o cryptography public-key-encryption

我一直在搜索几天,但是我找不到一个用于加密,解密或试图破解使用公钥加密的加密文件(暴力)的大O表示法算法.我试图确定我开发的大量使用公钥加密的想法的大O符号.

与公钥加密相关的这些Big-O算法是什么:

A)使用L长度密钥加密由N个字符组成的文件

B)解密同一个文件

C)典型的强力算法,用于打破具有N个字符且最大密钥长度为L的加密文件

任何包含用于破解加密的更有效算法的Big-O表示法都将受到赞赏.此外,还可以参考可以找到此材料的任何位置.

很抱歉提出一个我真的应该能够自己找到的问题,但我没有设法找到我想要的东西.

dus*_*uff 5

标准的公钥/私钥算法几乎从不用于大型输入,因为这些算法的安全属性通常不适合批量加密.最常见的配置是使用公钥/私钥算法加密一个小的(恒定大小,通常是128 - 256位)密钥,然后使用该密钥进行对称加密算法.

话虽这么说,我将使用RSA作为其余问题的测试用例:

A/B)放弃密钥生成,RSA加密和解密O(n)消息的大小.(请注意,所有消息必须是密钥的大小,因此填充较小的消息并且必须分解较大的消息.)加密/解密的确切速度取决于RSA实现使用的算法,但它是密钥大小的多项式:

http://www.javamex.com/tutorials/cryptography/rsa_key_length.shtml

C)给定一个公钥,可以通过对公钥进行因式分解来破解RSA,这目前最好使用GNFS(即O(exp((7.1 b)^1/3 (log b)^1/3))).我不认为基于加密数据破解RSA有很多工作,因为公钥是一个更有用的目标.