SSL证书

简介

通常希望使用SSL连接进行通信,这可以避免``中间人``攻击。 Godot有一个连接包装器 StreamPeerSSL ,它可以进行更安全的连接。 HTTPClient 类也通过使用相同的包装器来支持HTTPS。

为了使SSL工作,需要提供证书。必须在项目设置中指定.crt文件:

../../_images/ssl_certs.png

此文件应包含了许多具有 https://en.wikipedia.org/wiki/Privacy-enhanced_Electronic_Mail 格式的公共证书。

当然,请记住将.crt添加为过滤器,以便导出器在导出项目时识别这一点。

../../_images/add_crt.png

获取证书有两种方法:

方法1:自签名证书

第一种方法是最简单的:生成一副私钥和公钥对,并将公钥放在.crt文件中(再说一遍,是PEM格式)。 私钥应该放到您的服务器中。

OpenSSL有 一些文档 谈到这些。 这种方法也 不需要域名验证 也不要求您花费现金从CA购买证书。

方法2:CA证书

第二种方法借助于证书颁发机构(CA),如Verisign,Geotrust等。这是一个更加繁琐的过程,但它更加``正式``并且确保您的身份被清晰地表示。

Unless you are working with large companies or corporations, or need to connect to someone else’s servers (i.e., connecting to Google or some other REST API provider via HTTPS), this method is not as useful.

此外,当使用CA颁发的证书时, 您必须启用域名验证 ,以确保您要连接的域名是您想连接的域名,否则一个CA颁发的证书将会成功用到任意数量的网站中。

如果您使用的是Linux,则可以使用系统提供的证书文件,通常位于:

/etc/ssl/certs/ca-certificates.crt

此文件允许HTTPS连接到几乎任何网站(即Google,Microsoft等)。

或者,如果要连接到特定网站,请选择任何更加具体的证书。