XP / Vista上的数字签名时间戳“不可用”,导致验证失败
背景
我有一个WiX / Burn安装包,其中包括安装ReportViewer 2012 Runtime.在Windows 7或更高版本的计算机上运行时,它可以正常工作.在XP(SP3)或Vista(SP1)上它失败了. 现在,检查the download page for the ReportViewer redistributable,我注意到它说它需要Vista SP2或更高版本.通常我会接受这个,但a)我认为这最近已经改变了,b)下载并手动安装这个可再发行的作品.可能有些部件在XP / Vista上不起作用,但出于我的意图和目的,它安装并运行得很好,尽管他们声称. 问题 检查安装日志文件说明数字签名验证失败.因此,我手动将可再发行组件包下载到Windows XP计算机上并检查其签名.签名在那里,但时间戳报告“不可用”.点击详细信息还告诉我签名时间是“不可用”.文件本身由过期的证书签名,因此如果没有此时间戳,自然验证将失败. 但是,如果我将同一文件下载到Windows 7计算机,则会显示时间戳.点击详细信息显示正确的签名,验证工作和安装. 我试过的 我安装了许多不同版本的“根证书更新”无济于事,包括the latest.如果这确实是解决方案,请告诉我which one我需要. 我已经跟踪了签名上的证书链,并以“Microsoft Root Certificate Authority 2010”结束.此根证书似乎安装在XP计算机中.我唯一能看到的是这个证书的“2011”版本也在“第三方根证书颁发机构”商店,而2010年则没有.我不知道这是问题的原因还是正常的. 我最终可能会使用禁用签名验证并使用基于散列的有效负载验证.但在此之前,我想知道我是否遗漏了一些明显的东西. 我的问题 是否有“正常”用户可以下载的更新或步骤,这将允许在XP / Vista中识别时间戳/会签?这里的“普通”用户意味着不具备计算机知识的人;我不是指管理员权限. 解决方法
似乎有两种时间戳记签名类型可用于Windows代码签名(Authenticode):
> Proprietary:在签名属性的版本字段(PKCS#7版本?)中生成V1 我没有找到明确说明这一点的任何文档,但通过测试,似乎Windows XP(安装了所有更新的SP3)仅支持版本V1的时间戳.版本V2的时间戳导致“不可用”状态.当然,版本号可能只与结果相关 – 时间戳可能有另一个方面导致它被忽略. 当前可用的ReportViewer MSI文件具有V2时间戳.但是,在发布此问题之后,时间戳也是在2014年7月制作的. 更多背景: Windows SDK signtool命令支持两个选项(对于sign和timestamp子命令),以生成两种不同的时间戳类型: > / t< timestamp服务器URL>:结果为V1
但是,似乎不清楚(由于在其他选项上使用类似语句的方式)这是否适用于目标系统或运行signtool的系统. 例子 V1时间戳: signtool.exe sign /f cert.pfx /p %passphrase% /t http://timestamp.comodoca.com/authenticode /d "Test" test.exe V2时间戳: signtool.exe sign /f cert.pfx /p %passphrase% /tr http://timestamp.comodoca.com/rfc3161 /d "Test" test-rfc3161.exe (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 如何在Windows 7上使用批处理文件更改MAC地址?
- windows-server-2008 – 使用Windows Server 2008的iPhone简
- 使用Windows服务器配置的修订控制?
- 部署 – 如何在Windows Azure中部署Orchard CMS?
- windows10环境下装ubuntu双系统,装显卡驱动,配置CUDA,cu
- Windows:文件监控脚本(批处理/ VBS)
- windows-server-2012 – Server 2012陷入重启循环 – lsass
- windows提权方法总结
- windows – 监视COM对象
- windows – 为什么ReadDirectoryChangesW省略事件?
- windows-server-2008-r2 – Exchange如何与DC集成
- windows-server-2008 – 在Windows 2008服务器上
- windows-server-2008 – Windows AD域名更改的最
- 我将如何定期备份Windows应用程序日志?
- windows-server-2012 – 在SVCHOST / Workstatio
- windows – 如何在循环中获取局部变量的子串?
- windows-mobile – 如何在Windows CE设备中最小化
- windows-server-2008 – 在Windows Server 2008上
- 如何在使用Windows主机时安装Docker卷?
- minikube windows hyperx填坑记