关于ssl对称性加密、非对称加密等的浅显解释

SSL(Secure Socket Layer)是一种用于保护网络通信安全的协议,主要依靠散列函数、非对称加密和对称加密来确保数据的完整性和隐私性。在SSL握手过程中,客户端首先发送请求,服务器回应其证书,客户端验证证书后生成对称密钥并使用公钥加密发送回服务器。服务器用私钥解密获取密钥,随后双方使用此对称密钥进行加密通信,防止中间人攻击。同时,SSL还涉及双方的身份验证,确保通信双方的真实性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

主要依赖三种加密算法  散列函数hash、非对称加密、对称加密   

1. 散列函数验证信息完整性   

2. 非对称加密

        有公钥和私钥,公钥是公开的,私钥的私密的

        公钥和私钥都可以加密和解密,不过必须是对应的公私钥   

3. 对称加密 使用的密钥只有一个,发送和接受方都用这个密钥进行加密和解密

        加密过程 数据发送方将原始数据和加密密钥一起经过特殊加密处理,生成密文进行传输

        解密过程 接收方接收到数据后,则要使用加密使用的密钥以及相同算法的逆算法对加密数据        进行解密 

ssl握手过程

1.客户端发送请求到服务器

2.服务端响应客户端,把证书(含有公钥)发送给客户端

3.客户端验证证书的有效性,权威证书已经内嵌到电脑系统,如果有效,客户端会生成随机数(对称密钥),通过证书的公钥进行加密,并把加密后的url和http数据以及对称密钥一起返回给服务器

服务器收到公钥加密的数据后,用私钥解密得到数据和对称密钥,然后把要发送的数据进行对称加密,然后发送给客户端

4.客户端在接收到服务器发送的数据时,用对称密钥进行解密   

大概意思就是,当请求服务器的时候,服务器把含公钥的证书发给你(非对称),然后你验证是否有效,有效就会生成对称密钥(对称),然后用服务器发送给你的公钥(非对称)把要提交的数据加密再发送到服务器(个人觉的把对称密钥也给加密了,安全点)。服务器就用私钥(非对称)解密得到数据和密钥(对称),然后把要发送的数据进行对称加密,然后发送给客户端。感觉越说越糊涂、

ssl防止中间人攻击(面试可可能会问)

服务器端对请求它的客户端要进行身份验证,客户端对自己所请求的服务器也会做身份验证。服务端一旦验证到请求自己的客户端为不可信任的,服务端就拒绝继续通信。客户端如果发现服务端为不可信任的,那么也中止通信

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值