使用OpenSSL将现有TCP套接字转换为TLS
Convert existing TCP socket into TLS using OpenSSL
我需要一些关于OpenSSL, TLS套接字的信息。首先,我想通过TCP上的TLS与服务器建立连接。通常首先创建一个TCP套接字,然后使用TCP套接字连接到服务器,之后(在通过TCP套接字发送或接收任何数据之前)将TCP套接字转换为TLS。
我的问题是,是否有可能按照以下方式?
-
创建TCP socket
-
使用TCP套接字连接服务器
-
通过TCP套接字发送和接收一些数据
-
将TCP套接字转换为TLS
注意:我使用的是OpenSSL。
在服务器必须支持的情况下,这似乎是可能的。看到SMTP。它以这种方式用于SMTP服务器,其中前几个会话是纯TCP,然后是SSL/TLS。您可以使用BIO_new_socket将现有套接字绑定到BIO,然后使用SSL_set_bio将该套接字设置为SSL *结构。
您可以找到很多SSL客户端的例子
相关文章:
- 当套接字连接断开时检测C/C++Unix
- 通过套接字[TCP]传输数据 如何在C / C ++中打包多个整数并使用send() recv()传输数据
- 如何通过套接字将文本文件的内容从服务器发送到客户端
- 如何在C/C++中用FD_set Unix设置套接字文件描述符
- 套接字读取后,我在缓冲区中看到意外输入
- 如何在CPP中创建应该在Windows和Linux上运行的套接字?
- 我可以与 python 服务器而不是 c++ 客户端建立 tcp/ip 套接字吗?
- 套接字连接"Operation not permitted"错误,甚至使用升压/平发器根.cpp
- WINAPI 注册应用程序重新启动时不清除打开的套接字
- 将"uint8_t"(从套接字读取)隐式转换为"char"安全吗
- C++ TCP 套接字 | 无法将"std::__cxx11::字符串"转换为"const
- 如何将C++套接字编程代码转换为C#
- 如何将 BYTE 数组转换为字符数组以使用套接字 C++ 发送
- C++将TCP套接字转换为BIO(OpenSSL)
- 将char*转换为boost::数组以供套接字使用
- char数组到字符串的转换会产生奇怪的字符-套接字
- 从套接字转换(解析)谷歌协议缓冲流
- 将字符缓冲区类型转换为来自套接字的结构
- 使用OpenSSL将现有TCP套接字转换为TLS
- c++boost:asio将套接字转换为流