对称加密
使用一个密钥
例: DES、3DES、Blowfish、IDEA、RC4、RC5、RC6 和 AES
非对称加密
使用公钥和私钥两个密钥
例:RSA、ECC(移动设备用)、Diffie-Hellman、El Gamal、DSA(数字签名用)
数字签名
非对称加密的一种形式,私钥加密,公钥解密。目的是为了防止数据被他人篡改。
接口加密的流程
step1:使用AES生成密钥aeskey,加密传入的值param为value.
step2:生成一对RSA密钥, publicKey和privateKey(公钥加密,私钥解密)
step3:使用对方RSA公钥加密AESkey,生成key
step4:使用自己RSA私钥加密key的前10位,生成rsaKey(私钥加密,公钥解密)
step5:将生成的rsaKey+key+value传输出去
接口解密流程
step1:接收rsaKey+key+value
step2:取rsaKey,使用对方RSA公钥解密
step3:取key的前10位,对比rsaKey解密出的数据验签
step4:取key,使用自己RSA私钥解密生成aeskey
step5:使用aesKey解密value得到传输数据