我正在开发一个使用ssl(openssl)在客户端与服务器之间建立安全通信通道的客户端服务器应用程序。我相信我现在有两种选择可以在客户端和服务器之间进行安全的数据传输。一种选择是继续在客户端和服务器之间建立的安全SSL通道上进行数据传输,即使加密/解密过程由于使用非对称密钥而速度较慢。另一种选择是在对称密钥交付给客户端后,在ssl通道上传输对称密钥并关闭ssl通道。之后的通信将在使用对称密钥的常规TCP信道上发生,我相信这将比使用非对称密钥快得多。这种方法有什么缺点吗?对称密钥方法显而易见的一件事是密钥管理的过程,我想通过不在客户端存储密钥来处理密钥管理。对称密钥将在通过SSL通道启动时传递给客户端。密钥将不会存储在客户端中。有什么想法吗?对称加密密钥与非对称密钥-ssl
2
A
回答
7
你在混淆。 Ssl使用非对称密钥(在证书中定义)在客户端和服务器之间传递自动生成的对称密钥。然后在整个安全会话(通道)中使用这个对称密钥。
所以基本上,你在使用ssl时已经有了快速的对称加密。唯一的非对称加密发生在通信的最初阶段。
不要试图自己管理你的对称密钥。不起作用。
2
继续使用SSL连接,因为SSL在初始阶段后使用对称密码。
0
一种选择是继续在客户端和服务器之间建立的安全SSL通道上进行数据传输,即使加密/解密过程由于使用了非对称密钥而会很慢。
不,它不会。 SSL使用对称加密。
另一种选择是在对称密钥交付给客户端后,在ssl通道上传输对称密钥并关闭ssl通道。
只要会话已完成,客户端和服务器就已具有对称加密密钥。这只会是多余的。
这里没有问题要解决。
相关问题
- 1. 非对称加密密钥
- 2. 非对称密钥切换的对称密钥
- 3. 非对称密钥系统?
- 4. 对称密钥加密算法
- 5. 对称加密密钥通过行为
- 6. SSL对称密钥存储在哪里?
- 7. 对称密钥存储
- 8. 带对称密钥的RSA
- 9. 保护对称密钥
- 10. SQL服务器:非对称密钥
- 11. 与非对称密钥解密XML失败,InvalidCastException的.NET中
- 12. SQL加密 - 非对称密钥 - 第二服务器
- 13. 非对称加密
- 14. 私钥解密对称密钥,但在对称密钥联网时给出不同结果?
- 15. 如何在Java非对称加密中保存和重用密钥对?
- 16. Java加密:从文件加载对称密钥
- 17. 结合对称和非对称加密
- 18. 对称加密密钥交换和存储?
- 19. 为对称数据加密导出多用密钥
- 20. 使用对称密钥的文件加密
- 21. 使用Java中的对称密钥byte []加密消息
- 22. 如何使用对称密钥加密连接字符串
- 23. MariaDB是否提供了不对称密钥加密
- 24. 非对称密钥不匹配增强强名称
- 25. SQL Server证书和对称密钥
- 26. 在SQL中制作反对称密钥
- 27. 对称密钥认证协议
- 28. Javascript获取对象密钥名称
- 29. 如何复制SQL Server对称密钥?
- 30. SWT组合框名称/密钥对
会话密钥永远不会被加密,也不会被发送。它总是谈判。 RFC 2246#8.1。 – EJP 2017-02-07 22:18:28