分类: SSL/TLS (4)

使用OpenSSL为开发环境创建自签名CA和SSL证书

在开发环境中,我们可能需要生成自己的证书颁发机构(CA)和 SSL 证书进行测试。这些指令使用了 OpenSSL,这是一款强大的 SSL 和 TLS 协议工具包。下面我详细介绍了如何在 Windows 上创建这些证书,但类似的步骤也可以应用在不同的平台上。


2023年8月7日
阅读全文

理解HTTP CONNECT通道

为了确保数据通信的安全,HTTPS 已广泛应用于互联网,浏览器与服务器之间的 HTTPS 通信都是加密的。然而当浏览器需要通过代理服务器发起 HTTPS 请求时,由于请求的站点地址和端口号都是加密保存于 HTTPS 请求头中的,代理服务器是如何既确保通信是加密的(代理服务器自身也无法读取通信内容)又知道该往哪里发送请求呢?为了解决这个问题,浏览器需要先通过明文 HTTP 形式向代理服务器发送一个 CONNECT 请求告诉它目标站点地址及端口号。当代理服务器收到这个请求后,会在对应的端口上与目标站点建立一个 TCP 连接,连接建立成功后返回一个 HTTP 200 状态码告诉浏览器与该站点的加密通道已建成。接下来代理服务器仅仅是来回传输浏览器与该服务器之间的加密数据包,代理服务器并不需要解析这些内容以保证 HTTPS 的安全性。


2018年8月12日
阅读全文

如何搭建要求客户端证书的IIS站点(使用自签名证书)

有些 IE、IIS 的问题会牵涉到客户端证书,每次搭建一个要求客户端证书的网站测试环境都要花费较长时间,痛定思痛决定把所有步骤:创建自签名根证书、服务端证书、客户端证书、配置 IIS 记录下来。


2016年7月31日
阅读全文

如何通过Wireshark查看HTTPS、HTTP/2网络包(解码TLS、SSL)

最近正在做 HTTP/2 相关的研究,由于目前所有的浏览器仅支持在 HTTPS 上使用 HTTP/2,所以通过 Wireshark 只能查看到加密后的 TLS 网络包。其实 Wireshark 提供了一些设置允许我们解码 TLS、SSL 网络包。


2015年12月15日
阅读全文