一天一八股——SSL/TLS协议

早期设计的http协议存在诸多的问题,SSL/TLS在http的基础上保证了数据的保密,验证和身份验证

  • https的保密性通过混合加密的方式保证,解决窃听问题
  • https数据的完整性通过摘要算法保证,
  • 通过数字证书+CA的方式进行数据来源和数据可靠性验证,保证数据可用

一 混合加密

https采用非对称加密和对称加密混合的方式进行数据的加密,在通信建立的过程中采用非对称加密的方式协商密钥,后续不使用非对称加密,在通信的过程中使用对称加密的方式进行明文数据的加密。

二 摘要算法

https通过摘要算法(哈希算法)生成传输内容的摘要,对摘要进行加密,接收方可以通过对数据内容进行摘要,然后判断生成的摘要是否相同数据是否被篡改

公钥加密私钥解密保证了内容传输的安全,私钥加密,公钥解密(数字签名):验证了消息是否是他人冒充的

三 数字证书+CA

数字证书是身份的标识,包括个人信息+公钥+数字签名(CA的私钥+公钥)

CA是具有权威的数字证书的颁发机构

我们可以通过CA去验证数字证书是否正确,通常数字证书会随着传输的内容一起发送,如果判断是合法的证书,就可以验证服务端公钥的身份

相关推荐
m0_6948455710 分钟前
服务器如何配置防火墙规则开放/关闭端口?
linux·服务器·安全·云计算
阿巴~阿巴~1 小时前
Linux基本命令篇 —— alias命令
linux·服务器·bash
xkroy1 小时前
网络协议概念与应用层
网络
筏.k1 小时前
C++ 网络编程(14) asio多线程模型IOThreadPool
网络·c++·架构
好名字更能让你们记住我2 小时前
Linux多线程(十二)之【生产者消费者模型】
linux·运维·服务器·jvm·windows·centos
门思科技2 小时前
设计可靠 LoRaWAN 设备时需要考虑的关键能力
运维·服务器·网络·嵌入式硬件·物联网
小锋学长生活大爆炸2 小时前
【知识】RPC和gRPC
服务器·网络协议·rpc
小高不会迪斯科2 小时前
MIT 6.824学习心得(2) 浅谈多线程和RPC
网络·网络协议·rpc
学习编程的gas2 小时前
Linux开发工具——gcc/g++
linux·运维·服务器
大大。2 小时前
van-tabbar-item选中active数据变了,图标没变
java·服务器·前端