security - SSL 实际上是如何工作的?

标签 security ssl

每当我看到有人谈论它时,听起来就像是简单地“打开”SSL,然后向/从在线服务器发出的所有请求/响应就神奇地安全了。

是吗? SSL 仅与代码有关——我可以编写两个应用程序并让它们通过 SSL 进行通信,还是必须以某种方式在外部注册/认证它们?

最佳答案

在端口 443 而不是正常端口 80 上请求安全网页。SSL 协议(protocol)(本身非常复杂)负责保护通信,并使用服务器和浏览器上的证书信息来验证按照他们所说的那样服务。

生成 SSL 证书很容易。生成一个基于嵌入在 99% 的网络浏览器中的信息的网站需要花钱。但技术方面没有什么不同。

您知道,有些组织(Verisign、Globalsign 等)多年来一直将其证书颁发机构信息包含在浏览器中。这样,当您访问具有他们生成(签名)证书的站点时,您的浏览器会显示:

“嗯,如果 Verisign 信任 XYZ.com,而我信任 Verisign,那么我也信任 XYZ.com”

过程很简单:

去有能力的 SSL 供应商,例如 GlobalSign。在网络服务器上创建 key 和证书请求。使用它们(和您的信用卡)购买证书。在服务器上安装它。将网络浏览器指向 HTTPS(端口 443)。剩下的都为您完成。

关于security - SSL 实际上是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1904206/

相关文章:

c - 从字符串中读取 RSA key

ssl - 具有多个域的通配符 SSL

ssl - 由于 OpenJDK Java 11 得到 javax.net.ssl.SSLHandshakeException : Received fatal alert: handshake_failure

php - 哪些请求 header 可用于浏览器/客户端指纹?

android - 为什么 printStackTrace() 对移动 (Android) 应用程序存在安全风险?

http - 将用户的权限存储在 JWT 声明中或在每次请求时在服务器上检查它是否更有效?

来自 HTTPS 网站的 HTTP 链接

php - 在 Gearman/PHP 和 YouTube 中使用 SSL

c# - 为什么我不能在C#中设置这个ACL规则?

security - 密码符号,长度和 'strength'