Android数据加密之——Rsa加密
注:本文为转载文章,原文请参考:Android数据加密之Rsa加密
什么是Rsa加密?
RSA算法是最流行的公钥密码算法,使用长度可以变化的密钥。RSA是第一个既能用于数据加密也能用于数字签名的算法。
RSA算法原理如下:
- 随机选择两个大质数p和q,p不等于q,计算N=pq;
- 选择一个大于1小于N的自然数e,e必须与(p-1)(q-1)互素。
- 用公式计算出d:d×e = 1 (mod (p-1)(q-1)) 。
- 销毁p和q。
RSA的安全性依赖于大数分解,小于1024位的N已经被证明是不安全的,而且由于RSA算法进行的都是大数计算,使得RSA最快的情况也比DES慢上倍,这是RSA最大的缺陷,因此通常只能用于加密少量数据或者加密密钥,但RSA仍然不失为一种高强度的算法。