我正在使用自签名证书,但我不知道这个协议是如何工作的。我用套接字 SSL 连接了两个应用程序,它工作正常。服务器是 Python 应用程序,客户端是 Android 应用程序。我使用 openSSL 创建了自签名证书,现在我有两个文件:私钥和自签名证书。服务器使用所有文件,但客户端仅使用自签名证书。
我发现很多页面解释了带有签名证书和 CA 的协议连接,但没有一个页面是没有 CA 的自签名。
带签名的协议:客户端服务器
ClientHello -------->
ServerHello
Certificate*
ServerKeyExchange*
CertificateRequest*
<-------- ServerHelloDone
Certificate*
ClientKeyExchange
CertificateVerify*
[ChangeCipherSpec]
Finished -------->
[ChangeCipherSpec]
<-------- Finished
Application Data <-------> Application Data
(这个模式是从 RFC 中无耻地复制过来的。)
使用自签名证书怎么样?