两个异地的人在网络上交流,因为发送都是明文的,很容易被别人劫持看到交流的信息。为了安全,得进行一些处理。
1.对称加密
双方协商一个相同的秘钥,可以通过一个密钥,在发送信息前进行加密操作,接收信息再进行解密。如图
缺点:秘钥不能网上发送,怕被别人劫持,私下发送一旦人数多又很麻烦。
2.RSA:非对称加密
非对称加密算法,有一对钥匙,一个是保密的成为私钥,另一个是公开的成为公钥。私钥加密的数据,只有对应的公钥才能解密;用公钥加密的数据,只有对应的私钥才能解密。公钥是公开的,每个人都可以知道,私钥只有自己知道。
A可以将要发送的信息用公钥加密,然后发送给B,B用自己的私钥解密即可获取信息。不会被中间人发现信息内容。
缺点:RSA算法加密和解密速度很慢。
3.非对称加密+对称加密
先生成一个对称加密秘钥,用RSA方式进行传送给另一个人,可以保证对称秘钥不被泄露,在用对称加密进行数据发送即可安全通信。可解决加解密速度慢问题。
4.中间人劫持
A最开始发送公钥给B时候,有可能被中间人劫持,然后用中间人的公钥发送给B,冒充A,与B进行交流。然后用A的公钥进行加密发送信息给A。
5数字证书
6 HTTPS
以上是https原理,具体流程如图