【问题标题】:Parsing a PEM key in C without extra libraries在 C 中解析 PEM 密钥而无需额外的库
【发布时间】:2013-12-19 08:56:52
【问题描述】:

我需要从以 PEM 格式给出的 RSA 私钥中提取模数、私有指数、公共指数、素数等。这是一个嵌入式系统,我不能在目标系统上安装任何加密或 RSA 库,所以一切都应该在本机 C 中完成。任何指向现有代码的指针或如何有效完成的提示将不胜感激。

【问题讨论】:

标签: c rsa pem


【解决方案1】:

PEM 文件包含 der 编码的 base64 格式的 RSA 私钥。

首先,您必须对其进行 base64 解码以获得原始的 der 编码字节。然后你必须解析 der 编码的数据。

正如Lie Ryan 所建议的,您可以静态链接一些C 库来执行此操作。或者您可以参考现有库的源代码并编写自己的解析器来执行此操作。

对于轻量级库,我建议您查看libtomcrypto's der routines,以防您要编写自己的解析器。

同一个库还包含base64 encoding and decoding 的函数。

【讨论】:

    【解决方案2】:

    如果您不能或不想将库安装到目标系统中,那么您可以在编译时静态链接库。

    静态链接库将库的代码打包到主可执行文件中。

    【讨论】:

      猜你喜欢
      • 2017-07-29
      • 2010-11-12
      • 1970-01-01
      • 1970-01-01
      • 2015-08-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多