java - DSA算法java中生成P

标签 java dsa

你能告诉我我说得对吗?我想在 DSA 算法中生成 p。我不明白:|| pTemp.bitLength() != ldo while 语句中,因为这意味着我只在寻找 1 数字素数,即 2,5,7 ?这是胡说八道。

private BigInteger generateP(BigInteger q, int l) { 
    if (l % 64 != 0) { 
        throw new IllegalArgumentException("L value is wrong");
    } 
    BigInteger pTemp;
    BigInteger pTemp2;
    int i = 0;
    do {
        //pTemp = new BigInteger(l, primeCenterie, rand);  <--- this is useless also?
        pTemp = new BigInteger(l,  rand);
        pTemp2 = pTemp.subtract(BigInteger.ONE);
        pTemp = pTemp.subtract(pTemp2.remainder(q));
        System.out.println("1 " + i++); 
    } while (!pTemp.isProbablePrime(primeCenterie) || pTemp.bitLength() != l);

    return pTemp;
}

最佳答案

IT 不是 1(one) 而是 l(L) 一切正常。我 2 个月前在做,现在还不明白。

关于java - DSA算法java中生成P,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12234007/

相关文章:

c++ - Openssl DSA 标志

java - 无法验证 openssl 使用 dsa key 签名的字符串

android - 适用于 Android 的 Keytool 公钥/私钥对

java - 使用 RSA 公钥加密 DSA 私钥

java - Javafx 中有 RSyntaxTextArea 的替代品吗?

java - 嵌入来自其他网站(例如亚马逊)的外部网站数据

java - 模块化 Java EE 应用程序

java - 我应该在 Maven 的 Web (WAR) 项目中的什么地方添加 Java 文件?

data-structures - 对加权无向图使用基于 BFS 的单源最短路径

java - java如何捕获java内部的退出代码?