X509Certificate2Signature 返回 ArgumentNullException

问题描述 投票:0回答:0

我正在使用 NET 6 和 EF Core 创建 API REST。 我有一个 X509Certificate2(在 ITextSharp 下),据我所知它是正确创建的。 现在,在创建证书后,我需要创建一个 X509Certificate2Signature,以便我可以使用特定凭据签署 PDF 文件,将 X509Certificate2Signature 传递给 IExternalSignature。问题在于,当我尝试构建 X509Certificate2Signature 时,它会抛出:

enter image description here

代码如下(在try-catch块内):

X509Certificate2 rootX509 = new X509Certificate2(
                    certificado.Cert, 
                    pass, 
                    X509KeyStorageFlags.Exportable | 
                    X509KeyStorageFlags.PersistKeySet | 
                    X509KeyStorageFlags.UserKeySet);
                
                IExternalSignature external = new X509Certificate2Signature(rootX509, "RSA"); 

我正在尝试复制我们实际使用的旧 DLL 的行为,它位于 Net Framework 4.7.2 中。 我需要构建证书,以便从中构建签名,然后签署 PDF 文件。 NET 6 中的所有内容都使用 ITextSharp 5.5。 我希望它的问题为零,但似乎该库具有不同的兼容性/它不再与 NET 6 兼容。

c# itext x509certificate2
© www.soinside.com 2019 - 2024. All rights reserved.