我有一个小网站,它的安全性对我很重要。我没有钱购买SSL证书所以我想自己制作一个(理论上用java,虽然我仍然不知道如何在服务器端解密它)。用户不会信任它,就像他们信任SSL一样,但它会提供我正在寻找的安全性。
我读了一些关于SSL的文章,我想我得到了它背后的数学但是我不明白它如何防止嗅探。如果SSL加密客户端计算机上的密码/信息/任何内容而不是将其发送到服务器进行解密,那么嗅探器嗅探编码密码并将其发送到服务器会有什么问题?
答案 0 :(得分:7)
我没有钱购买SSL证书
你承担不起。你已经浪费了很多时间而不是证书会花费你。
所以我想自己制作一个(理论上用java
不单独使用Java JRE。
用户不会信任它,就像他们信任SSL一样,但它会提供我正在寻找的安全性。
如果用户不信任它,则不会。
如果SSL加密客户端计算机上的密码/信息/任何内容,而不是将其发送到服务器进行解密,那么嗅探器嗅探编码密码并将其发送到服务器会有什么问题?
这比那复杂得多。客户端通过PKI和服务器证书验证服务器的身份。然后,客户端和服务器使用您引用的数学协商对称会话密钥。密钥本身永远不会传输。数据使用此密钥加密,并与消息身份验证代码一起发送,以显示消息是否完整。由于加密,数据是私有的;由于协商密钥的方式,SSL还提供了不受重播攻击的漏洞。