私はWinCrypt APIをC++で使用しようとしています。CryptoAPI/WinCrypt:PEMファイルの秘密鍵をC++でインポートするには?
私のアプリケーションでは、ファイルを暗号化、復号化、署名、および検証する必要があります。正しい鍵があれば、その方法を知っています。しかし、私の問題は実際には、それらのキーを生成する同じアプリケーションではないことです。
そして:私はPEM形式のファイルで、公開鍵と秘密鍵である必要があり何
いくつかの研究の後
-----BEGIN RSA PUBLIC KEY-----
[Base64 encoded]
-----END RSA PUBLIC KEY-----
が、私は、公開鍵をインポートする方法を発見した:hereをし、 hereを使用し、以下の方法を使用して:
- のCreateFile & のReadFile
- をX509_PUBLIC_KEY_INFOとDERフォーマットにPEMフォーマットから変換するCRYPT_STRING_BASE64HEADER(ヘッダとフッタを削除し、BASE64のデコード)
- CryptDecodeObjectExとCryptStringToBinaryを、ファイルの内容を読み取ります
- CryptImportPublicKeyInfo、キーをインポートする
今、私の問題は秘密鍵と同じことをすることです。 助けが本当に本当に感謝されるでしょう:) ありがとう。
暗号APIはプロプライエタリ暗号化用です。PGP用にこれを使用しているのはちょうどwierdです – marinara
はい、確かです。しかし、実際には私はキーの形式の選択肢がありません:/それ以外の私はCryptoAPIの独自の形式を選択したでしょう。しかし、公開鍵のインポートはPEM形式から可能であるため、秘密鍵でも可能であると考えました。 – nikloskoda