我正在寻找与microsoft.net框架兼容的库,该库允许创建和验证XAdES签名(XAdES,XAdES-C,XAdES-XL等)。

库使程序员能够选择以下内容很重要:

1.-在签名过程中使用的证书类型(PFX文件,Windows集中存储,SmartCard)
2.- CRL以验证证书。
3.-可以在签名上包括时间戳记。
4.-在签名上包含OCSP响应的可能性。

我发现的全部都是Java中的库,但没有在.NET中找到任何库。

欢迎提出所有建议。

最佳答案

似乎很难找到XAdES(XML高级数字签名):-D

我在网上搜索,但仅使用Apache库找到Java的实现,而在某些Web论坛中仅提及1个.NET库:

EldoS的SecureBlackbox
http://www.eldos.com/sbb/

在该库上运行的测试中,我发现它可以与仅需要1个签名的文档完美配合,但是当您需要对文档进行多重签名时,它会遇到一些问题。

目前,我还没有找到.NET中XAdES的功能实现,您可以使用它在带有时间戳记的CRL中将多个签名放入XML中。

编辑(27/08/2012):

微软法国的一个团队使用.NET 3.5开发了XAdES的实现。

目前,该库可从此Microsoft网站(http://www.microsoft.com/france/interop/ressources/xades.aspx)下载,它支持XAdES,XAdES-T,XAdES-C,XAdES-X和XAdES-XL签名。

一个完全用.NET编写的很好的解决方案

10-04 22:29