2.非对称加密
2020-08-13 11:38:37 19 举报
非对称加密
作者其他创作
大纲/内容
非对称加密(RSA)
基于对称加密存在的问题,又有了非对称加密。非对称加密算法需要一组密钥对,费别是公钥和私钥,这两个密钥是成对出现的。
AES+RSA存在的问题
黑客可以伪装成服务器,与客户端进行通行。类似于客户端和服务端之间多了一个中间商!也就是说协商密钥的过程依然存在楼的。客户端怎么能确定对方是真正的目标服务器呢?怎么整明服务器的身份呢?-->数字证书
对称加密+非对称加密(AES+RSA)
对称加密和非对称加密都存在密钥传输的问题,但是至少非对称加密可以保证客户端传输给服务端的内容无法”破解“,而对称加密算法性能油比较好,可以考虑如下方式。第一次通信的时候服务端发送公钥给客户端,由客户端产生一个对称密钥,通过服务端的公钥加密后发送给服务端,后续的交互中通过对称密钥进行加密传输。也就是说先通过非对称密钥加密对称密钥,通过对称密钥加密实际请求内容。
公钥&私钥
公钥加密的内容需要用私钥解密,私钥加密的内容需要用公钥解密!私钥由服务器自己保存,公钥发送给客户端。客户端拿到公钥后就可以对请求进行加密后发送给服务端了,这个时候就算被黑客截获,黑客没有私钥也无法解密发送的内容,这样确保了客户端发送到服务端数据的“安全“!但是由于公钥也需要通过网络发送给客户端,同样能被黑客截获,这样服务器私钥加密后的内容依然可以被小王截获并解密,并且非对称加密的效率很低。
解决方案
1.A有一套公-私钥,B也有一套公私钥,A把自己的公钥给B,B把自己的公钥给A2.B给A传数据text,首先用A给的公钥加密(防止别的看到)3.B再将加密的结果用B自己的私钥签名(因为公钥在A,如果A解开了,说明A小的就是B发送的) 其实B的公钥不但A有,大家都是公开的,所以大家都可以解 开,都知道是B发送的,但是B在发送前用A的公钥加密了, 所以对大家而言,虽然解开了第一次,还有第二层解密4.A收到信息,必须先用B的公钥解签,成功了(这里只能证明,这个东西是B发送的),然后再用自己的私钥解密(因为B用A的公钥加密,所以A肯定可以用自己的私钥解开)
0 条评论
回复 删除
下一页