2015-09-21 99 views
1

我们有2个Web应用程序和一个使用强命名DLL的​​WCF服务。用于签署此DLL的证书即将过期,我们还没有获得替换证书。代码签名证书过期会发生什么情况?

如果我们在证书过期后继续使用这个强命名的DLL,任何人都可以请告诉我们应用程序是否存在任何问题。

感谢

回答

1

在谈到签约的DLL,有必要区分两种情况:

  • 给予集强名称
  • 创建验证码签名

证书用于给强名称可以过期,并且不会影响强命名过程本身,并且不会影响后续的汇编。因为只有公钥/私钥对用来给出强名。 .SNK文件通常用于保存密钥以实现强命名,只是公钥/私钥的容器。

Authenticode签名需要完整的证书文件,您不能使用过期的证书来创建authenticode签名。 但有两种方法可以创建authenticode签名:带有验证的时间戳或不带。 如果DLL没有经过验证的时间戳签名,那么当用于签名DLL的​​证书过期时,它的签名将变为'无效'。如果使用经过验证的时间戳对DLL进行签名,那么该DLL将永远有效。

因此,在你的情况下,如果你只谈论强名称,那么一切都将起作用。

如果您使用Authenticode签名并且不使用经过验证的时间戳,那么在证书过期后您的DLL将没有有效的签名,但它们仍然可以正常工作。虽然,例如当要分发的DLL具有有效/无效的Authenticode签名时,ClickOnce的行为会有所不同。

相关问题