| 程序包 | 说明 |
|---|---|
| cn.ponfee.commons.jce.implementation.rsa |
RSA implementation
|
| 类和说明 |
|---|
| AbstractRSACryptor
http://blog.51cto.com/xnuil/1698673
RSA Cryptor, Without padding
RSA私钥解密证明:费马小定理(欧拉定理特例)
等同证明:c^d ≡ m (mod n)
因为:m^e ≡ c (mod n)
于是,c可以写成:c = m^e - kn
将c代入要我们要证明的那个解密规则:(m^e - kn)^d ≡ m (mod n)
等同证明:m^(ed) ≡ m (mod n)
由于:ed ≡ 1 (mod φ(n))
所以:ed = hφ(n)+1
得出:m^(hφ(n)+1) ≡ m (mod n)
|
| RSAKey
The RSA Key
https://blog.csdn.net/seccloud/article/details/8188812
https://blog.csdn.net/zntsbkhhh/article/details/109581852
https://www.zhihu.com/question/54779059
(1)选择两个不同的大素数p和q
(2)计算公共模数(n=pq)和欧拉数(eular=(p-1)(q-1))
(3)选择公钥指数e
(4)计算inverse(d)
(5)生成公钥和私钥
公钥KU:
n:两素数p和q的乘积(p和q必须保密)(n为模值)
e:与(p-1)*(q-1)互质(e称为公钥指数)
私钥KR:
n:两素数p和q的乘积(p和q必须保密)(n为模值)
d:满足(d*e) mod ((p-1)*(q-1)) = 1(d称为私钥指数)
加密过程 C=M^e mod n (C为密文)
解密过程 M=C^d mod n (M为明文)
|
Copyright © 2023. All rights reserved.