![Android APP开发实战:从规划到上线全程详解](https://wfqqreader-1252317822.image.myqcloud.com/cover/677/22655677/b_22655677.jpg)
上QQ阅读APP看书,第一时间看更新
8.2 非对称加密
非对称加密需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以叫非对称加密。
在非对称加密中,使用的主要算法有RSA、Elgamal、背包算法、Rabin、D-H和ECC(椭圆曲线加密算法)等。
非对称加密与对称加密相比,其安全性更好。对称加密的通信双方使用相同的秘钥,如果一方的秘钥遭泄露,那么整个通信就会被破解。而非对称加密使用一对秘钥,一个用来加密,一个用来解密,公钥可以公开,但私钥是自己保存的,不需要像对称加密那样在通信之前先要同步秘钥。
非对称加密与对称加密相比,缺点是加密和解密所花费的时间长、速度慢。