SignedXml KeyInfoX509Data可重用且线程安全吗?

时间:2016-07-13 15:28:19

标签: .net xml cryptography

我正在创建SignedXml文档,此过程的一部分是从证书初始化KeyInfoX509Data:

void Sign(
    System.Security.Cryptography.Xml.SignedXml signedXml,
    System.Security.Cryptography.X509Certificates.X509Certificate2 cert)
{
    ...
    var keyInfo = new KeyInfoX509Data(cert, X509IncludeOption.ExcludeRoot);
    signedXml.KeyInfo.AddClause(keyInfo);
    ...
}

此方法需要很长时间,我将其缩小到“newKeyInfoX509Data()”行。我的猜测是它正在用钥匙链做一些事情,它只是闲置10-15秒。

如果我重新使用证书签署多个XML,我想我应该能够创建一个KeyInfoX509Data并将其重用于所有签名的XML文档,甚至可以跨多个线程。

SignedXml是否会更改KeyInfoX509Data类的任何状态,使其在线程之间连续或同时重复使用是不安全的?

0 个答案:

没有答案