关注分享主机优惠活动
国内外VPS云服务器

https协议的详细解释

HTTPS协议概念超文本传输协议安全(HTTPS)是用于通过计算机网络进行安全通信的传输协议。HTTPS通过HTTP进行通信,SSL/TLS用于加密数据包。HTTPS的主要目的是为网站服务器提供身份验证,并保护交换数据的隐私和完整性。HTTP协议使用明文传输信息,存在信息窃听、信息篡改和信息劫持的风险,而TLS/SSL协议具有认证、信息加密和完整性检查的功能,可以避免此类问题。安全层的主要职责是对发起的HTTP请求的数据进行加密,对接收到的HTTP内容进行解密。

在HTTPS通信(握手)过程中,客户端向服务器发送请求,其中包括使用的协议版本号、生成的随机数以及客户端支持的加密方法。服务器收到请求后,确认双方使用的加密方法,并给出服务器的证书和一台服务器生成的随机数。确认服务器证书有效后,客户端生成一个新的随机数,用数字证书中的公钥加密,然后发送给服务器。并且还将提供所有先前内容的散列值供服务器检查。服务器使用自己的私钥解密客户端发送的随机数。并提供之前所有内容的哈希值供客户端检查。客户端和服务器根据约定的加密方法使用前三个随机数生成会话密钥,该密钥将在以后的会话过程中用于加密信息。

HTTPS的优势和劣势

优点:用户和服务器可以通过HTTPS协议进行认证,数据可以发送到正确的客户端和服务器。利用HTTPS协议可以进行加密传输和身份认证,使得通信更加安全,可以防止数据在传输过程中被窃取和修改,保证数据的安全性。HTTPS是当前架构下最安全的解决方案,虽然它不是绝对安全的,但它大大增加了中间人攻击的成本。

缺点:HTTPS需要服务器和客户端双方进行加密解密,消耗服务器资源较多,过程复杂。HTTPS协议的握手阶段比较耗时,SSL证书因增加页面加载时间而收费。证书越厉害,成本越高。HTTPS连接服务器的资源占用要高得多,支持访问者多一点的网站需要投入更多的成本。SSL证书需要绑定IP,多个域名不能再绑定同一个IP。

如何确保HTTPS的安全?结合两种加密方法,对称加密密钥对对称加密公钥进行加密,然后将其发送出去,通过对私钥进行加密和解密来接收对称加密密钥,然后使对称加密进入通信。这就带来了一个问题,中间体问题:如果此时客户端和服务器之间存在一个中间体,这个中间体只需要用新的公钥替换掉两个通信对发送的原公钥,这样中间体就可以很容易地解密通信对发送的所有数据。所以这个时候就需要一个安全的第三证书(CA)来证明身份的真实性,防止被中间人攻击。证书包括:颁发者、证书路由、messenger的公钥、messenger的私钥、messenger的哈希算法、证书过期时间等。但问题是,如果证书中途被篡改,身份证明是否有效?我将购买这个证书。这时,我需要一项新技术,数字签名。数字签名是使用CA的散列算法。证书的内容被⾏HASHed得到一个摘要,然后用CA的私钥加密,最后形成一个数字签名。当我不发送他的证书时,我重复同样的哈希算法,再次变成消息摘要,然后CA的公钥解密数字签名,得到CA创建的消息摘要。他们两个都会知道中间有没有被篡改。这时候就可以最大程度的保证通信的安全性。

对称加密:即通信双方加密和解密同一个密钥。对称加密虽然很简单,性能也很好,但是可以解决一次把秘钥发给正确的人的问题,客户很容易截获秘钥。

非对称加密:虽然对称加密更安全,但问题是速度慢,影响性能。

私钥+公钥=密钥对就是私钥加密的数据,只有对应的公钥才能解密,公钥加密的数据只有对应的私钥才能解密。因为双方手中都有一套自己的密钥对,所以在通信之前,双方都会先把自己的公钥发给对方,然后对方再拿着这个公钥加密数据,回复对方。当他们到达对方时,对方会用自己的私钥解密。

TLS/SSL的工作原理

TLS/SSL概述是安全传输层协议。

TLS/SSL的工作模式是客户端使用非对称加密与服务器通信,进行身份验证,协商对称加密使用的密钥。对称加密算法使用协商好的密钥对信息和信息摘要进行加密,不同的节点使用不同的对称密钥,从而保证信息只能被双方获得。

TLS/SSL代表传输层安全,是介于TCP和HTTP之间的一层安全协议。它不影响原来的TCP和HTTP协议,所以使用HTTPS基本上不需要对HTTP页面做太多的修改。TLS/SSL的功能实现主要依赖于三个基本算法。

TLS/SSL函数实现哈希函数:基于哈希函数的对称加密验证信息的完整性;对称加密算法用协商好的密钥加密数据;非对称加密实现了身份认证和密钥协商。

数字证书

数字证书的原因是目前的方法不一定安全,因为没有办法确定获得的公钥一定是安全的公钥。可能会有中间人截取对方发给我们的公钥,然后把自己的公钥发给我们。当我们用他的公钥加密信息时,他可以用自己的私钥解密。然后他假装我们用同样的方法互相发送信息,这样我们的信息就被窃取了,而他还不知道。为了解决这个问题,可以使用数字证书。

数字证书的概念和工作原理:首先使用哈希算法对公钥等信息进行加密,生成消息摘要,然后可信认证中心(CA)用其私钥对消息摘要进行加密,形成签名。最后将原始信息和签名组合在一起,称为数字证书。当接收方收到数字证书时,首先使用相同的哈希算法根据原始信息生成一个摘要,然后使用经过公证的公钥对数字证书中的摘要进行解密,最后将解密后的摘要与生成的摘要进行比较,以确定获得的信息是否被更改过。这种方法最重要的是认证中心的可靠性。一般浏览器会内置一些顶级的认证中心证书,也就是说我们自动信任它们。只有这样才能保证数据的安全。做个对比,可以了解一下获取的信息有没有被改动。

未经允许不得转载:主机频道 » https协议的详细解释

评论 抢沙发

评论前必须登录!