【发布时间】:2015-01-23 21:50:29
【问题描述】:
我想通过 HTTP/HTTPS 封装进行客户端/服务器通信。
HTTPS模式只用于加密数据,不需要认证。
对于 HTTPS 连接,我在服务器端创建并安装了证书。
此外,我使用 HttpServerApi lib 开发了我的服务器,并使用 WinHttp 开发了我的客户端 (Windows)。所以客户端开始请求服务器,有一个密钥交换,但结果是:加密警报(21)解密失败:
> 192.168.3.138 192.168.1.6 TLSV1 ClientHello
> 192.168.1.6 192.168.3.138 Server Hello, Certificate, Server Hello Done
> 192.168.3.138 192.168.1.6 TLSV1 ClientKeyExchange, Change Cipher Spec, Encrypted Handshake Message
> 192.168.1.6 192.168.3.138 TLSV1 Change Cipher Spec, Evrypted Handshake Message
> 192.168.3.138 192.168.1.6 TLSV1 Application Data, Application Data
> 192.168.3.138 192.168.1.6 TLSV1 Application Data, Application Data
> 192.168.3.138 192.168.1.6 TLSV1 Application Data
> 192.168.3.138 192.168.1.6 TLSV1 Encrypted Alert
这是 wireshark 的详细信息(服务器端),192.168.3.138 是我的客户端。
在192.168.1.6 192.168.3.138 TLSV1 Change Cipher Spec, Evrypted Handshake Message中,我有: Header checksum: 0x0000 [不正确,应该是0x4ac1(可能是“IP cheksum offload”引起的?)]
如何在我的服务器证书和端口 443 或我开发的 Http Server 之间建立联系?
谢谢
【问题讨论】:
标签: https client-server server