我们正在尝试在嵌入式系统和Web服务器之间建立安全通信。首先,我们在微控制器中实现HTTP连接。我只是连接到我的Web服务器的80端口并发送简单的GET请求到此端口,如下所示:
GET /foo.php?msg=test HTTP/1.1
HOST: foo.com
我的问题是,我们将如何将其转换为HTTPS?我应该连接哪个端口?上面的GET请求结构会有什么不同吗?我是否必须手动进行一些加密或连接到“https”链接,而“http”是enuogh用于安全通信。
感谢您提供任何信息
HTTP请求和HTTPS请求之间的唯一区别是第一个是通过普通TCP连接发送而另一个是通过TLS连接发送,即:
除此之外,我建议使用已建立的HTTP库或仔细阅读standard。虽然HTTP看起来很简单但实际上并不存在,并且在这里存在许多问题,用户尝试执行简单的HTTP请求并跳过他们没有预料到的行为。
例如,在您的情况下,服务器可能会发送带有分块编码的响应,带有内容长度,或者只是以连接关闭结束它。它可能会等待同一连接上的进一步请求,因为HTTP / 1.1隐式启用HTTP keep-alive。您的代码是否真的能解决所有这些问题?