gpt4 book ai didi

java - base64编码问题,java

转载 作者:行者123 更新时间:2023-11-29 03:41:47 25 4
gpt4 key购买 nike

我正在使用 apache 库编码为 base64。但是这次的问题很典型。我有一个 b64 编码的字符串。

MIIHSjCCBjKgAwIBAgIQQuw1emUfNRlPD/euDuzBjDANBgkqhkiG9w0BAQUFADCB"+
"5TELMAkGA1UEBhMCRVMxIDAeBgkqhkiG9w0BCQEWEWFjQGFjYWJvZ2FjaWEub3Jn

它是证书 (.CER) 文件的一部分。我只是对其进行解码并再次对其进行编码,但结果略有不同。结果字符串是,

"MIIHSjCCBjKgAwIBAgIQQuw1emUfNRlPD/euDuzBjDANBgkqhkiG9w0BAQUFADA"+ "/5TELMAkGA1UEBhMCRVMxIDAeBgkqhkiG9w0BCQEWEWFjQGFjYWJvZ2FjaWEub3Jn"

区别在于第一行的结尾和第二行的开头。 CB 替换为 A/

此更改使我的证书无效。问题可能出在哪里?

最佳答案

问题出在您的中间字符串转换中。如果只使用字节数组,一切都很好。

public static void main(String args[]) {
String partOfCer = "MIIHSjCCBjKgAwIBAgIQQuw1emUfNRlPD/euDuzBjDANBgkqhkiG9w0BAQUFADCB" + "5TELMAkGA1UEBhMCRVMxIDAeBgkqhkiG9w0BCQEWEWFjQGFjYWJvZ2FjaWEub3Jn";
byte[] dec1_byte = Base64.decodeBase64(partOfCer.getBytes());
// String dec1 = new String(dec1_byte);
byte[] newBytes = Base64.encodeBase64(dec1_byte);
String newStr = new String(newBytes);
System.out.println(partOfCer);
System.out.println(newStr);
System.out.println(partOfCer.equals(newStr));
}

关于java - base64编码问题,java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12815174/

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