c# - PDF 证书过期后的数字签名验证

标签 c# asp.net digital-signature

我是数字签名世界的新手,我正在尝试研究它。发现一篇好文章here和一个很好的教程here 。但我对数字签名有一些疑问。我不确定这些问题是否愚蠢。但我没有其他最好的来源来澄清我的疑虑:)

1) 假设用户使用其私钥对 pdf 进行数字签名。几年后,假设他的证书到期。那么其他人可以验证pdf吗?

2) 假设有一个组织,他们将文档存储为 pdf 格式,并由一名官员进行数字签名。假设该官员调到另一个组织。那么原组织的其他人员是否能够验证签名?

3) 两个或更多人可以使用自己的证书签署 PDF 吗?

4)我还想创建一个网络应用程序。我正在考虑使用 iTextSharp。那么我该如何获取服务器的证书和密码呢?如果可能的话,有人可以分享一个好的教程的链接吗?

提前致谢。

最佳答案

1) 除非签名带有时间戳,否则验证将提示证书/签名过期。解决这个缺点PAdES提供了标准。

2) 是的,大多数情况下签名是独立的(假设受信任的根证书仍然可用)。

3) PDF 格式不支持对原始文档进行两个独立签名,但除此之外,两个人可以对文档进行相应签名(即第一个人签署原件,第二个人签署 document_with_fist_signature)。

4) 没有办法也没有意义(私钥必须保持私密并保存在客户端)。阅读 my response to similar question here 。顺便说一句,我们的解决方案将适合您。

关于c# - PDF 证书过期后的数字签名验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10717465/

相关文章:

c# - 在 C# 中是否有一种很好的强类型方法来处理 PropertyChanged 事件?

ASP.NET 站点无法在 IIS 下启动

java - 如何使用EdDSA/Ed448签名算法重新生成私钥?

java.security.SignatureSpi 用法

c# - "signature is corrupt or invalid"从IE下载

c# - 在代码隐藏中创建一个 ajaxToolkit TabPanel

c# - 当我在 WPF Mvvm 中按下按钮时,如何在 DataGrid 中显示数据?

c# - 从代码隐藏中打开 jQuery UI 对话框

javascript - 如何设置语义 UI 下拉菜单的宽度

java - KeyStore.builder - .crt 文件的类型参数