加密其他人的公钥以减少总体所需的密钥大小,可行吗?

时间:2015-01-01 11:23:44

标签: encryption rsa public-key-encryption memory-efficient

我需要在密钥的字节大小很重要的环境中使用RSA加密。 我不想冒破坏安全的风险,所以我想知道你是否可以让一个人首先使用(2048位)传输他的密钥,然后让另一个人传输他的密钥(256bit)用另一个人的密钥加密。如果这仍然可以提供安全方案?

PS:我知道加密会增加256位,你可以忽略中间人问题。

TL; DR:保持公钥密钥是否允许更小的密钥大小?

1 个答案:

答案 0 :(得分:0)

通常,人们会使用RSA和其他非对称算法专门用于交换密钥。 RSA的安全性与分解大质数有关,这就是为什么它们的密钥大小通常比AES等算法的对称密钥长得多。您不想做的是减少方案中的RSA密钥大小。因此,如果你正在做的是创建256位AES密钥然后使用AES进行加密,我认为安全方案将起作用。公钥加密比对称加密慢得多,因此出于性能和其他原因,您不希望使用RSA。

关于保密公钥的问题,我认为这违背了RSA的意思。公钥是公开的。

实施也可能有失败,例如,2014年发现SSL 3有一个padding oracle漏洞。我建议您使用像TLS这样的标准实现,而不是尝试制作自己的协议。安全协议通常是加密中最困难的问题。