繁体   English   中英

boost.asio 的 ssl::stream 是否加密消息?

[英]Does boost.asio's ssl::stream encrypt messages?

我正在使用 boost.asio 的ssl设施连接服务器和客户端。 我创建了一个boost::asio::ssl::stream ,在服务器和客户端上加载一个自签名证书,在服务器上加载证书的私钥,并成功执行handshake()

我现在相信boost::asio::ssl::stream::write_some() (及其asyncread变体)会自动为我加密和解密消息。 但是, 文档没有证实这一点。

如果有加密,这是使用服务器公钥的非对称加密,还是使用 session 密钥的对称加密?

是的。 它对消息进行加密,但仅在传输过程中。 这就是传输加密的含义。

它不会出现在文档中,因为它是 SSL/TLS 的属性,它确实记录了它。

事实上,流的读/写操作在handshake之前或shutdown之后是无效的。

要了解有关 SSL 的更多信息: https://en.wikipedia.org/wiki/Transport_Layer_Security

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM