我需要一种计算方法:
(g^u * y^v) mod p
在爪哇。
我找到了计算 (g^u) mod p 的算法:
int modulo(int a,int b,int c) {
long x=1
long y=a;
while(b > 0){
if(b%2 == 1){
x=(x*y)%c;
}
y = (y*y)%c; // squaring the base
b /= 2;
}
return (int) x%c;
}
它工作得很好,但我似乎无法找到一种方法来做到这一点
(g^u * y^v) mod p
因为我的数学能力很差。
把它放在上下文中,它是用于“简化” DSA 的 java 实现 - 验证部分需要解决这个问题。