簡體   English   中英

如何使用 libtomcrypt 導入 RSA 公鑰?

[英]How do I use libtomcrypt to import an RSA public key?

我正在嘗試使用 libtomcrypt 進行 RSA-2048 位加密。 我目前的目標是從文件中導入公鑰。 此文件是使用 OpenSSL 和以下命令生成的:

$ openssl rsa -in private.pem -outform PEM -pubout -out public.pem

所以我相信我的公鑰是 PKCS#1 填充和 OpenSSL 的 PEM 格式。

我相信我需要使用的函數是 rsa_import(),但這需要一個輸入緩沖區、一個長度並輸出一個 rsa_key 指針。 為了清楚起見,我相信我需要做的如下:

  1. 將 public.pem 的內容讀入緩沖區
  2. 扔掉包含“開始公鑰”等的頁眉和頁腳。
  3. 從 base64 解碼數據。
  4. 將結果數據傳遞給 rsa_import。

這樣對嗎? 任何為此目的使用過 libtomcrypt 的人都可以對此發表評論嗎? 謝謝。

因此,在深入研究 rsa_import() 的源代碼后,我很快發現它希望密鑰采用 DER 格式。 因為我可以訪問私鑰,所以我只是使用這個 openssl 命令制作了一個 DER 文件:

openssl rsa -in private.pem -outform DER -pubout -out public.der

值得注意的是 -outform 的參數現在是 DER 而不是 PEM。 在此之后,我只是將文件內容讀入一個字符緩沖區,然后將其作為 rsa_import 的主要參數傳入。 之后 rsa_import 使密鑰沒有問題,我能夠從那里加密/解密。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM