签名验证前发件人证书已过期

时间:2017-12-18 20:03:58

标签: java security certificate digital-signature signature

我正在开发一个关于Java中的证书和数字签名的项目,但我无法理解以下情况。 创建签名时,文档的发送者和接收者证书有效。但是,当接收方收到文件时,发件人证书已经过期。这是有效的情况,所以接收者通常可以验证签名,或者他不能?

还有一个问题。使用什么不可否认密钥用法?

3 个答案:

答案 0 :(得分:3)

即使证书已过期,数字签名仍将保持密码正确,但签名验证无效。

电子证书具有由证书颁发机构的政策建立的使用期限,超过该期限,私钥的使用不被视为安全。

为了在签名到期之后保留签名的有效性,可以在签名中加入时间戳或撤销证据(CRL,OCSP响应),以便可以在不必联系的情况下验证签名未来的CA.

  

还有一个问题。对于什么是使用不可否认密钥用法?

请阅读此X509: What's the difference between digital signature and non-repudiation

答案 1 :(得分:1)

我们需要有一些明确的概念:

1-A证书可以随时过期或被撤销,因此所有带有签名的文件都将无效。所有证书都有到期日。

  

1.1 - 为避免这种情况,通常需要使用标准XADES-T和TSA(时间戳)进行签名   Authority)必须验证并重新签名该文件。这会给你   长寿避免第一个问题 - >结束于AdES-A。

这只是一个线索,这个过程有更多的理论。

  

注意:时间戳不仅仅是一个时间戳,它可以包含在正常的签名中,它必须是设置此时间的邮票,证明您的签名在那一刻有效且他认可。

回答你的问题:是的,这是一个有效和正常的情况,你无法做任何事情(按标准方式),它不再有效。现在你可以通过TSA(信任,在西班牙我们有来自政府的@Firma)再次避免这种情况再次发生,并重新盖章你的有效文件。

使用什么不可否认密钥用法? 这是用来让你不能说你没有签署文件,一旦签署它是完整有效和合法的。要做到这一点,你必须签署一份标准证书(由一个官方实体给出),其中包含你最重要的信息,通常这是先生给出的(至少在西班牙),你必须带着你的认证文件去一个具体的地方( DNI或国家身份证号码)以获得您的证书。

西班牙语链接可能会有所帮助: https://www.sede.fnmt.gob.es/certificados/persona-fisica/obtener-certificado-software

http://firmaelectronica.gob.es/Home/Ciudadanos/Aplicaciones-Firma.html#arroba_firma

希望这会有所帮助。 感谢。

答案 2 :(得分:0)

证书可以在“已使用”和“已验证”之间过期或可以撤销。为避免这种情况,您可以在使用后立即对其进行验证。签署PDF文件时,这是PAdES LTV规范的一部分。