-2

我真的需要在我的 Socket Server\Client 通信中使用 SSL,但是支付认证费用对我来说太贵了 :( 我付不起认证费用

[注意]:我的程序将公开发布,所以我想保护我的程序与服务器的通信

问题是:是否有可能以有效的 [没有安全风险] 方式免费使用 SSL\TLS,因为我买不起付费证书......?

4

2 回答 2

1

简短的回答:是的。

长答案:您从 CA(证书颁发机构)购买的东西通常不是证书。通常,您创建自己的证书,并向 CA 索取“签名”,然后将其提供给客户端(浏览器等),以表明您的证书受到该 CA 的信任。

浏览器(和其他软件)通常有一个他们信任的 CA 的内部列表。这就是人们通常购买签名的原因 - 让当前部署的软件将自己的证书识别为有效。但是,您不需要获得这样的签名。您也可以创建您的证书(通常称为“自签名”证书),并要求最终用户将其作为受信任的软件介绍给软件,或者将其分发到软件本身中。

很多 关于如何在 Web 上创建自签名证书的 说明,通常使用 openSSL CLI,还有 IIS 或 Java。

至于如何在软件上部署这样的证书,最好再问一个问题。

于 2012-09-08T19:46:26.707 回答
1

是否可以有效地免费使用 SSL\TLS,因为我买不起付费证书...?

是的。从受信任的 CA 购买证书,无需任何手动操作(例如 Verisign)即可让您的服务器受到所有浏览器的信任。
如果您同时拥有客户端和服务器并且使用 SSL,您可以创建自己的证书(或获得免费证书)并将它们安装到所有受信任的客户端(在离线过程中)。
现在唯一与安全性相关的部分是密钥大小。至少应为 2048 位。
但是有一个问题。如果您创建自己的证书,则需要注意设置的扩展名,以免在部署期间出现任何问题。CA 知道如何创建X509v3兼容的证书以被所有浏览器(库)接受而不会出现任何问题

于 2012-09-08T19:29:11.487 回答