0

PDFファイルにデジタル署名したいデジタル証明書を持っているので、C#でソフトウェアを開発しています...iTextSharpとBouncyCastleAPI、および.NETのコアライブラリを使用しています...

x509という名前のx509Certificate2の証明書オブジェクトがあり、このようなOrg.BouncyCastle.Crypto.AsymmetricCipherKeyPairオブジェクトを見つける必要があります。

Org.BouncyCastle.Crypto.AsymmetricCipherKeyPair cert = DotNetUtilities.GetKeyPair(x509.PrivateKey);

次に、iTextSharpが提供する次の行に追加します

PrivateKeySignature pks = new PrivateKeySignature(cert.Private,DigestAlgorithms.SHA256);

ただし、「GetKeyPair」を含む前の行は、指定された状態での使用にはキーが無効であることを示す例外を受け取ります。

この背後にある理由を理解することはできません。

4

1 に答える 1

0

確認すべきことの 1 つは、証明書が証明書ストアにロードされたときに、エクスポートを許可するオプションがオンになっていることです。これは、この失敗を引き起こす唯一の理由ではありませんが、理由です。

于 2016-01-25T19:27:39.710 に答える