曲径通幽论坛

 找回密码
 立即注册
搜索
查看: 4446|回复: 1
打印 上一主题 下一主题

https 工作流程

[复制链接]

4918

主题

5880

帖子

3万

积分

GROAD

曲径通幽,安觅芳踪。

Rank: 6Rank: 6

积分
34395
跳转到指定楼层
楼主
发表于 2012-8-30 12:18:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一些网站为了安全起见,会要求我们采用 https 的安全链路来连接网页服务器,下面简单说明 https 协议的工作流程。

1. 首先客户端向网站服务器发送 https 连接请求。

2. 接着网站服务器将其公钥传递给客户端(网站服务器事先需要准备好一组密钥,分别是公钥和私钥)。

3. 客户端收到服务器送来的公钥后,随机生成一个会话密钥(称之为会话密钥(Session Key)),接着使用公钥来加密该密会话密钥,完后发送给服务器端。

4. 服务器端使用私钥解开被加密的会话密钥。于是,这个会话密钥只有该客户端和服务器所拥有。

5. 以后客户端和服务器端之间的通讯就用会话密钥进行对称加密。

关于对称加密和非对称加密的概念可参考:《对称加密与非对称加密

关于公钥和私钥的概念可参考:《公钥与私钥

从上面的流程来看,客户端以及 Web 服务器间所传输的数据似乎已经得到了安全保证,但是事实并非如此,以上结构仍然相对脆弱,关键一点是没有确认所连接的 WEB 服务器就是我们需要访问的对象。比如某个钓鱼网站冒充了我们所要访问的网站,它不但高仿了整个正规网站的界面,而且还采用了书写相似度极高的域名,甚至进一步来说,我们主机上的 hosts 文件还遭到了恶意篡改。这样,即使我们能够保证客户端和服务器之间传输的数据都是经过加密的,但仍然无济于事。

因此,解决这个问题,https 网站还需要使用网站安全证书。比如我们访问铁道部的 12306.cn 时,需要安装证书才能继续购票,这样做就是唯一确定我们访问的确确实实是 12306.cn 而不是别的网站。关于证书的话题,内容也比较多,在此就不展开了。只要知道,https 需要两个重要的内容:第一是使用数字证书确定唯一身份;第二使用上面所述协议加密传输内容而保证数据安全。


注意,上面所举的 12306.cn 证书一例,并不能严格代表一个正规且正式的基于 https 商业网站所采取的做法。因为 12306 的根证书,不太友好的说是自己给自己发着玩的。你要用它,你就信任它,只能如此。在另外的文章里会详谈到为何如此。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|曲径通幽 ( 琼ICP备11001422号-1|公安备案:46900502000207 )

GMT+8, 2025-5-4 19:44 , Processed in 0.079260 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表