嗨,我需要在 php 中自己实现 RSA 算法。我唯一有问题的是计算私钥的部分。我的函数的工作方式是获取一个随机数并检查它是否适合私钥公式。这很好用,但是唯一的问题是当使用非常大的数字时,它需要很长时间并且页面超时。我想知道,有没有更好的方法可以实现这一点而不必继续生成随机数?这是所需的代码:
$decrypt = rand(1,($phi-1));
while(!private($decrypt, $encrypt, $phi)){
$decrypt = rand(1,($phi-1));
}
...
function private($decrypt, $encrypt, $phi) {
if(($decrypt * $encrypt) % ($phi) == 1){
Return true;
}
else{
Return false;
}
}