【发布时间】:2013-06-03 17:46:52
【问题描述】:
我知道使用 RSA 可以通过多种方式加密和解密数据,这意味着您可以使用公钥或私钥(或两者)进行加密,也可以仅使用私钥或公钥进行解密,或两者都使用.
使用 Triple Des,您需要密钥和 iv 来解密吗?或者你能用钥匙以某种方式做到这一点吗? (公钥?)
【问题讨论】:
标签: cryptography rsa tripledes
我知道使用 RSA 可以通过多种方式加密和解密数据,这意味着您可以使用公钥或私钥(或两者)进行加密,也可以仅使用私钥或公钥进行解密,或两者都使用.
使用 Triple Des,您需要密钥和 iv 来解密吗?或者你能用钥匙以某种方式做到这一点吗? (公钥?)
【问题讨论】:
标签: cryptography rsa tripledes
作为一种对称算法,DES(和 3DES)使用共享密钥。它没有公钥。 如果在加密期间使用了这个 IV,那么解密者必须知道 IV。
【讨论】:
RSA 是一种公钥(或非对称)加密算法 - 这意味着存在公钥和私钥的密钥对,您可以使用其中一个加密并使用另一个解密。
DES 和 Triple-DES 是分组密码。您可以将它们与一种操作模式一起使用来加密或解密消息 - 您使用相同的密钥进行加密和解密。这称为对称算法。
一些操作模式(所有好的模式)需要一个初始化向量,所以相同的明文不会导致相同的密文(有时还有其他弱点)。通常这个初始化向量应该与密文一起发送/存储,它不必是秘密的。根据操作模式和使用场景,IV 应该只使用一次,可以是随机的,也可以是不可预测的。
此外,现在您不应该使用 DES(它的密钥太小而无法保证安全)。三重 DES 没问题,但比 AES 等现代算法慢得多(也不是更安全)。
【讨论】:
3DES 与任何其他分组密码没有什么不同。如果您使用需要 IV 的密码模式,并且您没有在消息头中包含 IV,则需要它来解密消息。
【讨论】: