从无符号字符数组中加载公钥



我有一个公钥,它是来自xxd的字节数组:

unsigned char publicKey_txt[] = {
 0x30, 0x82, 0x02, 0x22, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, .. }; 

从以前的堆栈溢出问题,我有一个大致的理解,在我的情况下,StringSink之后的负载应该工作

StringSource publicstring(publicKey_txt, true, NULL);
publicKey.Load(publicstring);

简单地从文本文件加载工作,但当我从StringSink加载时,我得到一个错误:

Error: BER decode error

如何从unsigned char数组加载公钥?

从@ jwww -从内存中加载RSA pkcs# 1私钥找到我的答案?

在我的情况下,轻微修改而不是SinkSource,我使用ArraySource和publicKey_txt_len是字符数组publicKey_txt的大小。

CryptoPP::ArraySource as( publicKey_txt, publicKey_txt_len, true);
publicKey.Load(as);

最新更新