此Microsoft工具在您构建MSI时添加了INVALID Microsoft数字签名。
任何人都知道阻止该工具添加数字签名的简单方法吗?还是在构建后删除数字签名的简单方法?
VS2015安装程序项目链接 https://visualstudiogallery.msdn.microsoft.com/f1cc3f3e-c300-40a7-8797-c509fb8933b9
即使签名错误,MSI文件也能正常工作。但是,当有人尝试使用Edge浏览器下载MSI时,它会阻止下载并显示此下载错误消息。 "此文件的签名已损坏或无效" 。有一个可怕的RED Error盾牌图标。
如果您想从产品或工具中吓跑潜在用户,这是完美的方式。
咆哮: 微软在2012年推出这款工具后再次推出这款工具时,微软大肆宣传。告诉开发人员"看到我们真的听你的话,我们带回了这个流行的工具。"好吧,你不认为微软可以指派一个低级别的开发人员来维护它并修复这样的简单事情。似乎只是另一个带有破碎轮子的玩具,MS被扔进沙箱并让它在那里分开。 C' mon Microsoft,花10分钟解决这个问题。
答案 0 :(得分:2)
问题似乎是旧的SHA1证书在2015年底之后不再有效以及强制执行它的安全性更改,如此线程和1月12日安全更新评论中所示:
Internet Explorer shows valid certificate as "corrupt or invalid signature"
我没有亲自尝试过这个想法,但是在MSI文件上测试以删除证书的代码看起来相当简单:
http://www.fluxbytes.com/csharp/remove-digital-signature-from-a-file-using-c/
答案 1 :(得分:1)
要解决此问题,您还可以尝试对包进行双重签名,而不是完成删除数字签名。这样,有关无效签名的警告消息将在下载时消失,并且在安装时UAC提示中也会显示正确的信息。
双重签名当然需要SHA2证书。
早于Windows 7的操作系统无法识别SHA 2签名,因此如果您也将这些签名作为目标,并希望您的签名可见,则需要执行dual signing。
Microsoft解释steps for dual signing,其中包含更多详细信息。