java - 将字节数组转换为 key

标签 java byte secret-key

我一直在尝试将字节数组转换为其原始 SecretKey,但我没有更多的想法。最有希望的尝试是这个:

byte[] encodedKey     = Base64.decode(stringKey);
SecretKey originalKey = SecretKeySpec(encodedKey, 0, encodedKey.length, "AES")

在这里找到:Converting Secret Key into a String and Vice Versa

我使用的是import javax.crypto.spec.SecretKeySpec,所以SecretKeySpec的构造函数应该正确使用,至少引用http://docs.oracle.com/javase/1.5.0/docs/api/javax/crypto/spec/SecretKeySpec.html .

尽管如此,我总是得到“方法 SecretKeySpec 未定义 ... [类名]” - 我只是不明白。

我猜这只是一个小错误,但我就是想不通。有人可以帮我吗?

最佳答案

您需要使用new关键字来调用构造函数并创建对象。

SecretKey originalKey = new SecretKeySpec(encodedKey, 0, encodedKey.length, "AES");

当您尝试在没有 new 的情况下调用它时,编译器认为它可能是您在该类中定义的方法,因此会出现错误消息。

关于java - 将字节数组转换为 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14204437/

相关文章:

python - 将 Google Cloud 客户端/服务帐户 secret json 文件放在哪里?

java - Minecraft 在 Windows 上如何具有 .exe 扩展名

java - 将多个二进制文件复制到一个二进制文件

java - 需要实现P2P的分布式哈希表

Java 字符串到字节的转换是不同的

c# - 如何找到空字节数组

java - java中字节的奇怪行为

docker - 有关k8空间中的configmap和 secret 的一般问题

java - 加密 - 使用 AES/BlowFish/DESede 和 Enum 解密

java - java.lang.Object 的源代码