【发布时间】:2018-08-03 14:57:52
【问题描述】:
我有一个使用 Base64 编码的公钥,我被指示解码给定的编码字符串以获得需要用于 GPG 加密的实际公钥。
我正在做的是,我使用下面的代码来解码给定的字符串以获得实际的公钥,但是当我这样做时,我看到 Eclipse 控制台上打印了一些不可读的字符。
import org.apache.commons.codec.binary.Base64;
class Test
{
String encodedPK = "mQGi..../../"; //I mentioned dummy here, due to security reasons
byte[] decoded = Base64.decodeBase64(encodedPK);
System.out.println(new String(decoded));
}
OUTPUT:- "qÕÍ•È陑™Ì
【问题讨论】:
-
Base64 解码为
byte[],byte[]是不可读的,除非您将其编码为某种东西(例如 Base64)。 -
谢谢,但是,我怎样才能从中取出公钥,他们说,我可以用 Base64 解码后得到它。
-
有一些方法可以从
byte[]恢复公钥。 -
好的,你能指点我吗?
-
JDK好像不支持GPG,需要第三方库。 (例如 bouncycastle)