首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >https协议与SSL证书的区别

https协议与SSL证书的区别
EN

Stack Overflow用户
提问于 2009-05-13 05:29:11
回答 4查看 64K关注 0票数 53

https协议和我们在web浏览器中使用的SSL证书有什么区别?

这两个不是都用来加密客户端(浏览器)和服务器之间的通信吗?

EN

回答 4

Stack Overflow用户

发布于 2009-05-13 05:37:09

HTTPS是超文本传输协议(HyperText )加上安全套接字层( SSL )。您需要证书才能使用任何使用SSL的协议。

SSL允许任意协议安全地进行通信。它使客户端能够(a)验证它们确实正在与其期望的服务器通信,而不是中间人,以及(b)加密网络流量,以便客户端和服务器以外的各方看不到通信。

SSL证书包含公钥和证书颁发者。客户端不仅可以使用证书与服务器通信,还可以验证证书是否由官方证书颁发机构进行了加密签名。例如,如果您的浏览器信任SSL证书颁发机构,而VeriSign签署了我的VeriSign证书,则您的浏览器将本质上信任我的SSL证书。

这里有一些不错的读物:http://en.wikipedia.org/wiki/Transport_Layer_Security

票数 53
EN

Stack Overflow用户

发布于 2009-05-13 05:32:38

一个解决方案的两个部分。

https是定义客户端和服务器如何协商安全连接的协议。

SSL证书是他们用来就服务器的真实性达成一致的文档。

票数 38
EN

Stack Overflow用户

发布于 2013-11-28 21:44:50

HTPS是新的HTTPS。HTTPS很容易受到SSL剥离/ MITM (中间人)的攻击。引用亚当·兰利( adam Langley)的博客《帝国紫罗兰》:

"HTTPS往往会导致人们发表演讲,嘲笑证书安全和围绕它的生态系统。“

问题是该页面不是通过HTTPS提供的。它应该是,但当用户在浏览器中键入主机名时,默认方案是HTTP。服务器可能会尝试将用户重定向到HTTPS,但这种重定向是不安全的: MITM攻击者可以重写该重定向,并将用户保留在HTTP上,从而始终欺骗真实站点。攻击者现在可以截获这个配置良好且安全的网站的所有流量。

这就是所谓的SSL剥离,它非常简单,而且非常有效。我们可能不经常看到它,因为它不是公司代理需要做的事情,所以它不在现成的设备中。但这种喘息不太可能持续很长时间,可能已经结束了:我们如何知道它是否正在被使用?

为了停止SSL剥离,我们需要使HTTPS成为唯一的协议。我们不能在整个Internet上做到这一点,但我们可以使用HTTP严格传输安全(HSTS)逐站点地做到这一点。

HSTS告诉浏览器总是通过HTTPS向HSTS站点发出请求。站点可以通过内置在浏览器中,或者通过广告标题来成为HSTS:

严格传输安全: max-age=8640000;includeSubDomains

报头在给定的秒数内有效,并且也可以应用于所有子域。必须通过干净的HTTPS连接接收报头。

一旦浏览器知道一个站点只有HTTPS,用户输入mail.google.com就是安全的:初始请求使用HTTPS,攻击者没有漏洞可以利用。

(mail.google.com和许多其他站点已经内置到Chrome中作为HSTS站点,所以实际上不可能使用Chrome通过HTTP访问accounts.google.com -我不得不篡改这个图像!)如果你想加入Chrome的内置HSTS列表,请发邮件给我。)

HSTS还可以保护你,网站管理员,避免犯愚蠢的错误。假设您已经告诉您的母亲,在访问她的银行站点之前,应该始终输入https://,或者您为她设置了一个书签。老实说,这超出了我们对用户的期望。但是假设我们的超级用户..。]

由于stackoverflow上针对新用户的链接规则的阻碍/非常愚蠢,我不能给你亚当剩下的答案,你必须自己访问亚当·兰利的博客https://www.imperialviolet.org/2012/07/19/hope9talk.html

"Adam Langley在Google的HTTPS服务基础设施和Google Chrome的网络堆栈上工作。“

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/856209

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档