gpt4 book ai didi

java - 使用 bouncycaSTLe 计算 SHA3 哈希值 - `error: cannot find symbol`

转载 作者:行者123 更新时间:2023-12-02 10:19:29 26 4
gpt4 key购买 nike

我从这里举了例子: bouncycastle_example

这是第二个答案,不是接受的答案!

它在 Java 8 和 Java 11 中运行良好,尽管如 Maven Central 上所述,后者不受支持。

现在我自己的项目已经复制了与示例中相同的行,并给出了标题中所述的错误消息。

有一个正在运行的示例,我想知道为什么完全相同的代码在我的项目中不起作用......

//Klassenattribute (transient):
//transient BigInteger message;
transient byte[] message;

transient SHA3.DigestSHA3 digestSHA3 = new SHA3.Digest512();


//Konstruktor:
public Signature_Path (byte[] message) {//Done: BigInteger message
//Klassenattribute initialisieren:
path= new Vector<Node>();

//Klassenattribute initialisieren (GEHEIM):
sk = new Secret_Key ();
std_rnd = new Random (); //Zufallszahlgenerator

//Klassenattribute initialisieren (privat):
k = 0;//Bitlaenge der Zufallszahlen p, q
//Klassenattribute initialisieren (transient):
byte[] digest = digestSHA3.digest(message.getBytes());
this.message = digest;

}

我希望使用充气城堡方法digestSHA3.digest来计算变量digest

我得到一个编译器标记,后者不可用。

UPDATE_20190212:使用 java8 和 java11 编译并得到完全相同的错误消息。

这是来 self 的 pom.xml:

<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk15on</artifactId>
<version>1.60</version>
</dependency>

最佳答案

虽然编译器标记位于括号之外,但有问题的表达式不是 digestSHA3.digest,而是 message.getBytes()message 已经是 byte[],因此删除 .getBytes() 可以解决问题。

关于java - 使用 bouncycaSTLe 计算 SHA3 哈希值 - `error: cannot find symbol`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54448006/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com