公钥和私钥:每一对公钥和私钥之间都可以相互加密解密,即用公钥加密的数据,需要用私钥解密,用私钥加密的数据需要用公钥解密。
客户端和服务器端(接口)之间的非对称加密流程
客户端第一次向服务器端发送请求将客户端的公钥(该公钥为公开,任何人都可以得到)发送给服务器端,服务器端在接受到客户端的公钥后用客户端的公钥将自己的公钥进行加密后返还给客户端(此过程中若被黑客截取,黑客也只有客户端的公钥,该数据需要客户端的私钥才能解密,所以黑客无法解读数据,所以无法获取服务器端的公钥),客户端接受到服务器端返回的数据后使用自己的私钥将数据解密就可以得到服务器端的公钥。
客户端第二次向服务器端发送请求的时候,使用服务器端的公钥将数据加密(此过程中数据若被黑客截取,该数据需要服务器端的私钥才能解密,所以黑客依然无法解读该数据),服务器端在接受到数据后,使用自己的私钥进行解密使用。服务器端再返回数据给客户端的时候依然使用客户端的公钥进行加密后将数据返回,客户端在接受到数据后使用自己的私钥将数据解密后使用;