我需要的是什么:通过LAN网络在服务器和客户端之间进行安全的TLS / SSL通信。身份验证必须是单向身份验证:
我已经完成的工作:我创建了一个能够通过Wi-Fi网络进行通信的服务器和客户端。我已经实现了SSL套接字,但缺少身份验证......所以它不会工作:)
我需要帮助的地方:我是TLS / SSL的初学者,也是网络安全人员。
答案 0 :(得分:1)
CA不是强制性的本身。 CA签名证书的替代方案是自签名证书,但除非客户端程序明确信任特定的自签名证书,否则验证(验证)同伴会失败。
您应该创建或请求服务器证书,并配置服务器以使用该证书。有关如何配置证书和其他TLS设置的详细信息取决于您使用的服务器软件或TLS库。
通常,客户端具有受信任的根CA证书的集合。 最终实体证书由根CA或中间CA 签名,该CA 由某些高级证书签名,一直到根。服务器提供终端实体证书和任何中间证书的证书链,但最多但通常不包括根证书。
在验证期间,客户端验证从其信任的根CA的任何中有一个有效的签名链。如果是这样,并且如果链中的证书都没有过期或撤销,则将接受服务器证书并继续会话。
在大多数浏览器和操作系统中,默认情况下通常会安装并信任公共CA的根证书。但是你不需要使用公共CA;您可以创建用于签署证书的私有CA.如果这样做,客户端将需要配置为信任其根证书(详细信息因软件而异)。
无论您使用公共CA还是私有CA,只要客户端信任根CA并且您已将服务器配置为提供(链式)服务器证书,一切都应该有效!