理解HTTPS加密安全传输流程

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 理解HTTPS加密安全传输流程

HTTPS(SSL/TLS)是计算机网络的知识,主要用来对HTTP协议传输的文本进行加密,提高安全性的一种协议。

因为HTTP是明文传输,所以会很有可能产生中间人攻击(获取并篡改传输在客户端及服务端的信息并不被人发觉),HTTPS加密应运而生。

非对称加密,就是用一个密钥对数据进行加密和解密。

对称加密,就分为公钥和私钥,公钥加密的数据可以用私钥解密,私钥加密的数据可以用公钥解密。

①  采用非对称加密,传输数据时无论是服务器向客户端,还是客户端向服务器,发送密钥,都是有可能被窃取的

② 采用对称加密,服务器有公钥A私钥a ,服务器给客户端发送公钥A的明文(会被窃取);

    客户端有公钥A,使用其加密数 据 发送给服务器;

    服务器拥有私钥a,可以获得数据(中间人没有私钥a无法解密);

    由于客户端只有公钥A,服务器只有使 用私钥加密客户端才能获得数据,此时中间人和客户端都拥有公钥A,数据被窃取。

③  既然一组对称密钥可以实现单项的安全传输,那如果是实现的是两组呢:

     服务器有公钥A私钥a,客户端有公钥B私钥b;

     服 务器向客户端发送公钥A;

     客户端向服务器发送公钥B;

     客户端向服务器发送数据用公钥A加密(只有服务器有私钥a);

     服务器 向客户端发送数据用公钥B加密(只有客户端有私钥b)。

     这样虽然不会被中间人窃取数据,但这样太耗时了,不合适。

④  采用对称和非对称结合的方式:

    服务器有公钥A私钥a;

    客户端向服务器发送请求,服务器发送公钥A的明文数据给客户端(会被窃取);

    客户端根据公钥A制作一份私钥x,使用公钥A对私钥x加密发给客户端(只有客户端有私钥a);

    此时服务器和客户端都拥有了私钥x,后面采用对称加密的方式传输数据

    危害:服务器发送公钥A的明文数据给客户端;

              中间人截取公钥A,把自己的公钥B发给客户端(中间人有私钥b);

   客户端不知道这个公钥B是否是服务器的,制作私钥x,使用公钥B加密私钥x发给服务器;

              中间人截取,使用私钥b获得私钥x,中间人使用公钥A对私钥x加密发给服务器(服务器不知道私钥x已被窃取);


  问题:让客户端能够确认收到的公钥,是对应请求的服务器的?

     解决:使用数字证书( 网站在使用HTTPS前,都要向CA机构申领 )传输,数字证书中包含浏览器的公钥数据,持有者信息。


    问题:保证数字证书不被修改?

    解决:采用数字签名的方式:

使用散列函数生成数据对应的散列值,使用签名者的私钥对散列值加密,获得签名;

               签名和证明附加到数据上,发送;

               客户端收到数据,对数据使用散列函数生成散列值1;

               使用签名者的公钥对加密后的散列值解密,获得散列值2;

               比较1 和 2 是否相等

目录
相关文章
|
1月前
|
存储 安全 5G
|
1月前
|
安全 算法 网络安全
网络安全与信息安全:守护数字世界的坚盾在这个高度数字化的时代,网络安全和信息安全已成为全球关注的焦点。无论是个人隐私还是企业数据,都面临着前所未有的风险和挑战。本文将深入探讨网络安全漏洞、加密技术以及安全意识的重要性,旨在为读者提供实用的知识,帮助构建更加安全的网络环境。
【10月更文挑战第4天】 在数字化浪潮中,网络安全与信息安全成为不可忽视的议题。本文通过分析网络安全漏洞的类型与成因,探讨加密技术的原理与应用,并强调提升安全意识的必要性,为读者提供一套全面的网络安全知识框架。旨在帮助个人和企业更好地应对网络威胁,保护数字资产安全。
121 65
|
1月前
|
存储 安全 前端开发
端到端加密:确保数据传输安全的最佳实践
【10月更文挑战第12天】端到端加密(E2EE)是确保数据传输安全的重要手段,通过加密技术保障数据在传输过程中的隐私与完整性,防止第三方窃听和篡改。本文介绍E2EE的工作原理、核心优势及实施步骤,并探讨其在即时通讯、文件共享和金融服务等领域的应用,强调了选择加密协议、密钥管理、数据加密及安全接口设计的重要性,旨在帮助企业和开发者有效保护用户数据,满足数据保护法规要求。
|
1月前
|
NoSQL Java Redis
shiro学习四:使用springboot整合shiro,正常的企业级后端开发shiro认证鉴权流程。使用redis做token的过滤。md5做密码的加密。
这篇文章介绍了如何使用Spring Boot整合Apache Shiro框架进行后端开发,包括认证和授权流程,并使用Redis存储Token以及MD5加密用户密码。
31 0
shiro学习四:使用springboot整合shiro,正常的企业级后端开发shiro认证鉴权流程。使用redis做token的过滤。md5做密码的加密。
|
1月前
|
存储 缓存 安全
https访问提示不安全,证书密钥验证上如何解决
【10月更文挑战第4天】访问提示不安全,证书密钥验证上如何解决
325 2
|
1月前
|
安全 大数据 网络安全
网络安全与信息安全:守护数字世界的坚盾在数字化浪潮席卷全球的今天,网络安全已成为维系社会稳定、促进经济发展的重要基石。本文旨在深入探讨网络安全漏洞、加密技术及安全意识等核心议题,通过分享前沿知识与实用策略,助力构建更加安全可靠的网络环境。
【10月更文挑战第8天】 本文聚焦网络安全领域的关键要素,包括安全漏洞的识别与防御、加密技术的演进与应用,以及安全意识的培养与提升。通过对最新研究成果和实际案例的分析,文章揭示了网络安全威胁的多样性和复杂性,强调了综合防护策略的重要性。同时,倡导社会各界共同参与,形成全民网络安全意识,共筑数字空间的安全防线。
64 0
|
1月前
|
编解码 JSON 安全
使用search-guard加固安全为https访问
使用search-guard加固安全为https访问
|
1月前
|
存储 安全 数据库
Uno Platform 安全数据存储秘籍大公开!加密、存储、读取全攻略,让你的数据固若金汤!
在 Uno Platform 中实现安全的数据存储需要选择合适的数据存储方式,并对存储的数据进行加密。通过加密数据,可以保护用户的敏感信息,防止数据泄露。同时,在读取和使用数据时,需要进行解密操作,确保数据的可用性。希望本文对你在 Uno Platform 中实现安全的数据存储有所帮助。
30 0
|
自然语言处理 算法 安全
HTTPS是如何保证安全的?
HTTPS是如何保证安全的?
HTTPS是如何保证安全的?
|
安全 算法 网络安全
为什么说HTTPS比HTTP安全 HTTPS是如何保证安全的?
为什么说HTTPS比HTTP安全 HTTPS是如何保证安全的?
168 0
为什么说HTTPS比HTTP安全 HTTPS是如何保证安全的?