首页 > 试题广场 >

HTTPS协议对称加密的过程?

[问答题]
HTTPS协议对称加密的过程? 
推荐

本道题=HTTPS协议加解密的过程?

得分点

对数据进行对称加密,对称加密所要使用的密钥通过非对称加密传输。

参考答案

标准回答

​ HTTPS数据加解密过程中数据进行对称加密,对称加密所要使用的密钥通过非对称加密传输。HTTPS协议加密的过程可以分为两个阶段,分别是:

  • 证书的认证阶段:使用非对称加解密算法对数据传送阶段的对称加解密密钥进行加密和解密。
  • 数据传送阶段:通过证书认证阶段获取到目标服务器的对称加解密密钥,对数据进行加密传送给服务器。

加分回答

​ HTTPS为了兼顾安全与效率,同时使用了对称加密和非对称加密。数据是被对称加密传输的,对称加密过程需要客户端的一个密钥,为了确保能把该密钥安全传输到服务器端,采用非对称加密对该密钥进行加密传输。总的来说,对数据进行对称加密,对称加密所要使用的密钥通过非对称加密传输。

在整个HTTPS数据传输的过程中一共会涉及到四个密钥:

  1. CA机构的公钥,用来验证数字证书是否可信任
  2. 服务器端的公钥
  3. 服务器端的私钥
  4. 客户端生成的随机密钥

一个HTTPS请求可以分为两个阶段,证书认证阶段和数据传送阶段。又可以细分为六个步骤:

  1. 客户端第一次向服务器发起HTTPS请求,连接到服务器的443(默认)端口。
  2. 服务器端有一个密钥对,公钥和私钥。用来进行非对称加密使用,服务器端保存私钥,不能泄露,公钥可以发送给任何人。服务器将自己的数字证书(包含公钥)发送给客户端。
  3. 客户端收到服务器端的数字证书之后,会对数字证书进行检查,验证合法性。如果发现数字证书有问题,那么HTTPS传输就中断。如果数字证书合格,那么客户端生成一个随机值,这个随机值是数据传输阶段时给数据对称加密的密钥,然后用数字证书中的公钥加密这个随机值密钥,这样就生成了加密数据使用的密钥的密文。到这时,HTTPS中的第一次HTTP请求就结束了。
  4. 客户端第二次向服务器发起HTTP请求,将对称加密密钥的密文发送给服务器。
  5. 服务器接收到客户端发来的密文之后,通过使用非对称加密中的私钥解密密文,得到数据传送阶段使用的对称加密密钥。然后对需要返回给客户端的数据通过这个对称加密密钥加密,生成数据密文,最后将这个密文发送给客户端。
  6. 客户端收到服务器端发送过来的密文,通过本地密钥对密文进行解密,得到数据明文。到这时,HTTPS中的第二次HTTP请求结束,整个HTTPS传输完成。

延伸阅读


图片说明

编辑于 2021-09-15 19:33:53 回复(0)
client请求服务端(指定SSL版本和加密组件)
server返回CA证书+公钥
client用机构公钥认证server返回的CA证书上的签名是否正确
client生成一个密钥R,用公钥对密钥R加密发送给server server用服务器的私钥解密获取密钥R
后续通信都是采用密钥R进行加密

发表于 2021-11-18 21:45:48 回复(0)

HTTPS数据加解密过程中数据进行对称加密,对称加密所要使用的密钥通过非对称加密传输。HTTPS协议加密的过程可以分为两个阶段,分别是:

  • 证书的认证阶段:使用非对称加解密算法对数据传送阶段的对称加解密密钥进行加密和解密。
  • 数据传送阶段:通过证书认证阶段获取到目标服务器的对称加解密密钥,对数据进行加密传送给服务器。

加分回答

HTTPS为了兼顾安全与效率,同时使用了对称加密和非对称加密。数据是被对称加密传输的,对称加密过程需要客户端的一个密钥,为了确保能把该密钥安全传输到服务器端,采用非对称加密对该密钥进行加密传输。总的来说,对数据进行对称加密,对称加密所要使用的密钥通过非对称加密传输。

在整个HTTPS数据传输的过程中一共会涉及到四个密钥:

  1. CA机构的公钥,用来验证数字证书是否可信任
  2. 服务器端的公钥
  3. 服务器端的私钥
  4. 客户端生成的随机密钥

一个HTTPS请求可以分为两个阶段,证书认证阶段和数据传送阶段。又可以细分为六个步骤:

  1. 客户端第一次向服务器发起HTTPS请求,连接到服务器的443(默认)端口。
  2. 服务器端有一个密钥对,公钥和私钥。用来进行非对称加密使用,服务器端保存私钥,不能泄露,公钥可以发送给任何人。服务器将自己的数字证书(包含公钥)发送给客户端。
  3. 客户端收到服务器端的数字证书之后,会对数字证书进行检查,验证合法性。如果发现数字证书有问题,那么HTTPS传输就中断。如果数字证书合格,那么客户端生成一个随机值,这个随机值是数据传输阶段时给数据对称加密的密钥,然后用数字证书中的公钥加密这个随机值密钥,这样就生成了加密数据使用的密钥的密文。到这时,HTTPS中的第一次HTTP请求就结束了。
  4. 客户端第二次向服务器发起HTTP请求,将对称加密密钥的密文发送给服务器。
  5. 服务器接收到客户端发来的密文之后,通过使用非对称加密中的私钥解密密文,得到数据传送阶段使用的对称加密密钥。然后对需要返回给客户端的数据通过这个对称加密密钥加密,生成数据密文,最后将这个密文发送给客户端。
  6. 客户端收到服务器端发送过来的密文,通过本地密钥对密文进行解密,得到数据明文。到这时,HTTPS中的第二次HTTP请求结束,整个HTTPS传输完成。
发表于 2021-12-02 10:46:53 回复(0)
1、客户端发起一次HTTPS请求,连接到服务端默认的端口443。
2、服务端向第三方机构申请一个证书,返回一个包含公钥和身份标识的数字证书。服务端公开公钥,保存私钥。服务端将包含公钥的数字证书发送给客户端。
3、客户端收到数字证书后,首先向第三方机构申请检验证书,如果证书不合法就中断传输;如果证书合法,客户端随机生成一段随机字符,作为对称加密的密钥,同时用证书中的公钥对其进行非对称加密。HTTPS的第一次请求就结束了。
4、客户端第二次向服务端发起HTTP请求,将对称加密密钥的密文发送给服务端。
5、服务端接收到密文后,使用非对称加密中的私钥解密得到对称加密的密钥。然后对需要返回给客户端的数据通过这个对称加密密钥加密,生成数据密文,最后将这个密文发送给客户端。
6、客户端收到密文之后,使用对称加密的密钥进行解密,得到数据明文。到这个阶段,HTTPS中的第二次HTTP请求就结束了。整个HTTPS传输完成。
发表于 2022-06-16 18:03:28 回复(0)
HTTPS使用443通讯端口,HTTPS协议加密可分为两部分:
  • 证书的认证阶段:使用非对称加解密算法对数据传送阶段的对称加解密密钥进行加密和解密。
  • 数据传送阶段:通过认证证书后对证书签名解密获取对称加解密密钥,对数据加密后传送给服务器。

过程:
client请求服务端(指定SSL版本和加密组件)
server返回CA证书+公钥
client用机构公钥认证server返回的CA证书上的签名是否正确
client生成一个密钥R,用公钥对密钥R加密发送给server 
server用服务器的私钥解密获取密钥R
后续通信都是采用密钥R进行加密

编辑于 2023-08-03 22:26:22 回复(0)
链接:https://www.nowcoder.com/questionTerminal/c3f31d177240492bbb3e78b8c114fba7
来源:牛客网

得分点

对数据进行对称加密,对称加密所要使用的密钥通过非对称加密传输。

参考答案

标准回答

HTTPS数据加解密过程中数据进行对称加密,对称加密所要使用的密钥通过非对称加密传输。HTTPS协议加密的过程可以分为两个阶段,分别是:

  • 证书的认证阶段:使用非对称加解密算法对数据传送阶段的对称加解密密钥进行加密和解密。
  • 数据传送阶段:通过证书认证阶段获取到目标服务器的对称加解密密钥,对数据进行加密传送给服务器
发表于 2022-08-27 19:55:15 回复(0)


HTTPS 的传输兼顾的安全与效率
安全是使用了 非对称加密
效率是使用了 对称见面和Hash 
简单的概况就是,使用非对称加密沟通一个秘钥, 然后使用秘钥进行对称加密的数据传输

具体如下:
1. client 发送一个请求给服务器,包含了  ssl的版本和加密控件;
2. server搜到请求后,   内部自带一套 非对称加密的公钥和私钥.   公钥封装成数字证书,发送给client
3.client收到后,使用自带的证书签发机构的证书,对server的数字证书进行校验.  成功之后,生成新的对称加密的 秘钥. 使用  证书公钥进行加密发送给服务器.
   服务器使用私钥进行解密.  此时,   client和server端拥有同一台对称加密的秘钥. 就可以进行数据的加解密了 




发表于 2022-01-29 14:36:19 回复(0)