我正在尝试手动验证自签名证书,但过程不清楚。我使用我也创建的一个server.cert文件创建了一个自签名证书ca.crt。
我向我的SSL服务器提供了server.key + server.crt。
现在,客户机应该如何验证server.cert (假设服务器发送server.cert)?
据我所知,在创建server.crt时,ca应该使用ca的私钥加密哈希(server.cert),而这一切(包括签名)都是服务器证书。那么我将如何验证证书。我想我需要在客户端使用ca.cert吗?因为ca.cert也包含ca.public密钥,但是我需要对server.crt做什么才能说签名是正确的呢?
发布于 2018-01-09 13:58:00
服务器需要提供一个由任何权威机构签名的适当证书。那个权威可能是你自己,没关系。问题是,客户端默认不信任“您”。客户端信任其他CA证书的原因是,它附带了一长串已知和受信任的CA;而"you“不在该列表中。若要获得该列表并成为受信任的,请将CA证书添加到本地信任存储区。通常情况下,这是由操作系统管理的,详细说明如何向其添加证书将有所不同,但每个应用程序(例如浏览器)也可能有自己的信任存储,而不使用操作系统的。
https://stackoverflow.com/questions/48169432
复制相似问题