这个问题类似于 Starting to use OpenSSL 但更具体和详细,所以我认为这是公平的问。将http服务器转换为https服务器需要什么?
假设我有,做一个成功的GET场景
- 下一个简单的HTTP服务器创建一个监听套接字
- 客户端连接
- 通过的recv
- 读取数据解析GET请求,现在它知道哪个资源返回
- 通过发送写入响应
- 关闭soc 012
此服务器是在Linux上用C++编写的。
我的问题是,需要将此服务器转换为最小的https服务器? (特别是使用OpenSSL,但在一般意义上的答案是受欢迎的。)
这是我的理解(问号的意思是我不知道)
- 初始化库
- 读取服务器证书和私钥以及其他配置
- 创建一个普通的监听套接字(?)
- 客户端连接
- 通过库函数做握手(?)
- 握手完成
- 在开始接收和发送数据之前,我需要一个特殊的步骤吗?
- 通过库函数(?)读取数据
- 数据看起来和HTTP GET完全一样吗?
- 如果这样做,解析GET和获取资源通过图书馆功能
- 写回的数据(?)
- 关闭通过库函数的连接(?)
总之,我希望它只需要向当前代码添加一些额外的步骤,而不会影响HTTP解析。这个假设是否正确?
非常感谢任何能够填补空白的人。
的最小SSL服务器在列出[答复问题7080958] [1] [1]:HTTP://计算器。com/questions/7080958/openssl-code-works-on-xp-but-hangs-forever-in-vista-and-up –