1

我在使用 GnuTLS 库导入证书时遇到问题。我生成了一个自签名证书,我想将其导入到我的 C++ 代码中,以进一步处理它。我使用fopen. 我将其保存到 a gnutls_datum_t-type,这似乎是 aFILE-type和 的元组length of the FILE-type。为什么我的代码会抛出Error Value: -207这意味着Base64 unexpected header error.

当我查找证书的类型时,它告诉我是pkix-cert+pem,但我也尝试了x-x509-cert. 全部使用 certtool 生成。

当我更改输入的预期格式时,错误值更改为 -73,这意味着 ASN1 解析器:TAG 中的错误

当我打印文件类型时,我可以看到通常的证书结构。

我的错是什么?

4

1 回答 1

0

gnutls_datum_t是一个缓冲区和它的长度。

给定一些文本,这可能会对其进行初始化certPem

gnutls_datum_t certDat;
certDat.data = (unsigned char *)certPem;
certDat.size = strlen(certPem) + 1;
于 2021-05-06T08:21:10.020 回答