我正在开发一个处理SSL的服务器。它可以处理来自浏览器的SSL请求。通常请求开始如下:
0001 0110 0000 0011 0000 0001
含义:(0001 0110)是22,握手记录。 0000 0011是3,0000 0001是1,它表示SSL版本3.1
服务器可以正常使用浏览器的请求。
Charles是一个HTTP代理/ HTTP监视器/反向代理,使开发人员能够查看其计算机和Internet之间的所有HTTP和SSL / HTTPS流量。
但是当我打开Charles SSL代理时,由于Charles是一个中间人,虽然请求是由浏览器启动的,但服务器实际上是从Charles那里得到了请求。请求以这样的方式开始:
1000 0000 0110 1110 0000 0001
然后我根本不知道如何处理这个问题。对我而言,它没有遵循任何SSL协议。有什么想法吗?
答案 0 :(得分:0)
我找到了原因。它是一个版本2.0 CLIENT-HELLO消息'。 '请注意,此消息必须直接在线路上发送,而不是作为TLS记录包装。'