RSA加密AES密钥的优势

use*_*117 4 security encryption cryptography rsa aes

我目前正在开发一个在客户端和服务器之间传输数据的系统,并且想知道我计划使用的加密强度是多少.

我的想法是拥有一个私有/公共RSA密钥对,并将公钥分发给每个客户端(仅将私钥留在服务器上).然后,每个客户端将生成自己的AES密钥,RSA会对其进行加密.然后,他们将AES加密其数据并将加密的数据和加密的AES密钥发送到服务器.然后,服务器将使用私钥解密AES密钥,然后使用AES密钥解密数据.

是否有任何我缺少的安全漏洞和/或有更好的方法吗?

jhe*_*ngs 19

这几乎就是SSL/TLS的工作方式(查看握手部分).使其更强大的唯一方法是为每个连接生成AES密钥,而不是每次都使用相同的密钥.您可能还希望对来回传递的消息进行数字签名,以避免中间人和其他欺骗攻击.

一般来说,创建一个好的密码系统非常困难.如果可能,您应该始终支持现有(受信任)应用程序来提供帮助.在这种情况下,您可以考虑使用HTTPS发送消息,而不是创建自己的系统.

  • +1始终选择使用专家设计的现有安全套件而不是设计自己的安全套件. (9认同)