【发布时间】:2019-04-11 09:53:16
【问题描述】:
我正在研究 JDK 如何实现 RSA 解密。我在 RSACore.class 中找到了函数“priCrypt”,下面是代码:
private static byte[] priCrypt(byte[] var0, BigInteger var1, BigInteger var2) throws BadPaddingException {
BigInteger var3 = parseMsg(var0, var1);
RSACore.BlindingRandomPair var4 = null;
var4 = getBlindingRandomPair((BigInteger)null, var2, var1);
var3 = var3.multiply(var4.u).mod(var1);
BigInteger var5 = var3.modPow(var2, var1);
var5 = var5.multiply(var4.v).mod(var1);
return toByteArray(var5, getByteLength(var1));
}
var0 是密文,var1 是模数,var2 是私钥。
我的问题是“getBlindingRandomPair”是什么意思?我无法弄清楚它的功能。如果再深入一点,谁能解释一下 BigInteger.modPow 函数是如何实现的?
【问题讨论】:
标签: java encryption rsa biginteger