gpt4 book ai didi

JAVA:字符串问题的 128 位 key 和返回

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:39:32 24 4
gpt4 key购买 nike

我创建了一个包含 128 位 key 的 SecretkeySpec 对象。我想把这个 key 放在一个字符串中(这个字符串需要稍后放回原来的 key ),所以我使用 Base64 编码。

这是我的 key 以原始格式从字节数组到字符的样子:

*P??? ?ukL|?~

所以我获取字节并像这样对其进行编码。

byte[] okay = Base64.encode(eF.getSpec().getEncoded());

现在,当我将它翻译成字符时,我得到:

S2xEa3Ara0o5blVGYTB3WkRIeUZmZz09DQo=

现在我想让我的 key 从 base64 编码数组恢复到它的原始格式。

String dkey = "S2xEa3Ara0o5blVGYTB3WkRIeUZmZz09DQo=";

byte[] key = null;
key = dKey.getBytes();
key = Base64.decode(key);

现在,当我检查结果时,我得到:

DKlDkp+kJ9nUFa0wZHyFfg==

代替:

*P??? ?ukL|?~ 

如您所见,这不是我希望看到的结果。我肯定犯了一个新手错误,请原谅我,但我对编程还是比较陌生的。如果有人能给我一个转换的工作示例,我将不胜感激可读格式的 128 位 key ,也许还有我思考错误的解释。

对于任何拼写错误,我深表歉意,英语不是我的母语。

提前致谢

最佳答案

S2xEa3Ara0o5blVGYTB3WkRIeUZmZz09DQo=

解码为

KlDkp+kJ9nUFa0wZDHyFfg==.

开头多出来的D是复制粘贴错误吗?

KlDkp+kJ9nUFa0wZDHyFfg== 

又是一个有效的 base64 字符串,可以解码为一些二进制数据。所以看起来你正在做两次编码。

Now when i translate it into chars i get

你究竟是怎么做到的?该步骤是否涉及其他 base64 编码?

关于JAVA:字符串问题的 128 位 key 和返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4354448/

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