Visual studio 2015 VS2015安装程序项目-向MSIs添加无效的Microsoft签名

Visual studio 2015 VS2015安装程序项目-向MSIs添加无效的Microsoft签名,visual-studio-2015,windows-installer,Visual Studio 2015,Windows Installer,生成MSI时,此Microsoft工具会添加无效的Microsoft数字签名 有人知道一种简单的方法来阻止工具添加数字签名吗?还是在生成后删除数字签名的简单方法 VS2015安装程序项目链接 即使签名不正确,MSI文件也可以正常工作。但是,当有人试图使用Edge浏览器下载MSI时,它会阻止下载并显示此下载错误消息。 “此文件的签名已损坏或无效”。带有一个可怕的红色错误屏蔽图标。 如果你想吓跑产品或工具的潜在用户,这是一个完美的方法 咆哮: 微软在2012年放弃这一工具后,再次推出这一工具,这让

生成MSI时,此Microsoft工具会添加无效的Microsoft数字签名

有人知道一种简单的方法来阻止工具添加数字签名吗?还是在生成后删除数字签名的简单方法

VS2015安装程序项目链接

即使签名不正确,MSI文件也可以正常工作。但是,当有人试图使用Edge浏览器下载MSI时,它会阻止下载并显示此下载错误消息。 “此文件的签名已损坏或无效”。带有一个可怕的红色错误屏蔽图标。

如果你想吓跑产品或工具的潜在用户,这是一个完美的方法

咆哮:
微软在2012年放弃这一工具后,再次推出这一工具,这让它大受欢迎。告诉开发人员“看,我们确实听你的,我们带回了这个流行的工具。”那么,你不认为微软可以指派一个低级别的开发人员来维护它并修复像这样简单的事情吗。似乎只是另一个玩具,它的轮子坏了,MS把它扔到沙箱里,让它散架了。来吧,微软,花10分钟来解决这个问题。

问题似乎是,旧的SHA1证书在2015年底和强制执行它的安全更改后不再有效,如此线程和1月12日的安全更新评论:

我个人没有在这里尝试过这个想法,但是在MSI文件上测试删除证书的代码看起来相当简单:


要解决此问题,您还可以尝试对包进行双重签名,而不是完成删除数字签名。这样,有关无效签名的警告消息将在下载时消失,并且正确的信息将在安装时出现在UAC提示中

当然,双重签名需要SHA2证书

早于Windows 7的操作系统无法识别SHA 2签名,因此,如果您也以这些签名为目标,并且希望您的签名在那里可见,则需要执行该操作


Microsoft正在解释,并提供更多详细信息。

PhilDW,谢谢。关于SHA1在2016年1月被弃用的信息非常好。这确实是一个SHA1证书。我尝试了Fluxbytes工具(在链接的页面上有一个预编译下载)。但是它似乎没有删除证书,即使工具报告它删除了证书。当我在Windows中检查文件属性时,它仍然显示带有证书的数字签名选项卡。但是谢谢,值得一试。我昨晚刚接到一位顾客打电话问我这件事。他在安装掩护2012上,现在必须在更新到安装掩护2015或只是不再代码签名之间选择。我已经尝试了C++和C*IVIDER EMOCECARECIFTICAL调用,而底层问题是获得错误87,无效参数——如果我成功了,我会在这里发布。在exe上,但不是在MSI文件上。信息很好,但我不认为双重签名解决了这个问题。问题似乎是关于.msi文件的,Microsoft的文章提到双重签名不适用于.msi文件。实际上,msi不支持双重签名,但其中的文件支持双重签名。文章还提到了如何处理MSI的签名:Bogdan,感谢这些链接。我读了材料,它看起来更复杂,我想处理。现在,我可能要等一会儿,看看微软是否能修复他们的坏工具。我知道,如果我认为他们会的话,我可能是个傻瓜。这开始看起来像是Y2K乱象(2000年错误)。Bogdan,你的一个链接说,“在2017年1月1日之后,Windows将不再信任具有SHA-1签名(文件哈希或时间戳)的文件。”这是否意味着Windows将拒绝运行SHA-1签名的MSI——即使用户想继续运行?@Dan LT no,它只会对从互联网下载的文件发出警告消息(如文章中的示例屏幕截图),并在UAC和SmartScreen中显示“Publisher Unknown”,但用户可以运行它。此外,这将只适用于Win7和更新的操作系统。我认为它更像是所有MSI专家的中指。