我获得了Certum证书以签署我的C#应用程序。一切似乎都没问题,我可以执行该应用程序,并在其上看到有效的证书。
但是,如果我将其上传到我的网页(使用Visual Studio发布或上传EXE),我无法在Windows7上使用Internet Explorer下载它。我总是得到这样的信息:“签名已损坏或无效”。但是一旦它在PC上,它似乎是有效的。我知道,IE在2013年有一个错误,但应该解决。
在Windows 10上,Smartscreen也阻止了这个exe,我无法下载它。我付了这个证书证明我的应用程序是安全的,现在我遇到了比以前更多的问题:(
我不知道我是否可以在此处插入指向我的应用程序的链接。
编辑:我在Microsoft找到了这个文档: http://social.technet.microsoft.com/wiki/contents/articles/32288.windows-enforcement-of-authenticode-code-signing-and-timestamping.aspx - 似乎微软与IE(以及谷歌与Chrome)不再允许下载SHA-1签名的应用程序,因为它不够安全.1 / 1。
答案 0 :(得分:3)
好的,现在我可以说:没有解决方案!
至少目前(2016年1月)。
因此,如果要为WindowsXP创建应用程序,可以使用Certum的开源标志。如果您想为自己的应用程序签署新的操作系统,只要购买Certum OpenSource证书,您就只能省钱!
答案 1 :(得分:1)
我不得不删除KB3124263(已在14日为我安装)以返回功能: - (
答案 2 :(得分:0)
即使我的代码签名证书有SHA2哈希,但在IE / Edge中下载文件时仍然会出现无效或损坏的签名错误。
显然,还要求代码签名证书由具有SHA2哈希值的CA颁发。
在联系Verisign / Symantec支持后,他们将我引导至以下指南以重新颁发我的证书:
这将我的中间CA从“VeriSign Class 3 Code Signing 2010 CA”(SHA1)更改为“Symantec Class 3 SHA256 Code Signing CA”(SHA256),现在IE / Edge不会报告任何错误