3

我花了 3 天时间阅读和测试以了解这到底是什么数字签名和代码签名,为什么存在以及如何签署我的应用程序......(仍然没有 100% 学会)

好吧,今天我已经完成了自己的证书和数字签名,但是当我尝试在其他机器上打开已编译的应用程序时,例如使用 Win7 的 VirtualMachine (VBOX),我仍然从共享设备(我的意思是从网络设备,你知道虚拟机的共享文件夹)

在此处输入图像描述

建议说我的数字签名无效,我不知道为什么!

无法验证免费的数字签名?

这就是我从命令行获得证书的方式:

makecert -r -pe -a sha1 -n "CN=%Name%" -b "%InitialDate%" -e "%ExpireDate%" -$ individual -sr LocalMachine -ss my -cy authority -# "%SerialNumber%" "%Name%.cer"

这就是我签署我的框架 4 应用程序的方式:

SignTool sign /f "%Name%.pfx" /p "%Password%" Application.exe

此外,我在项目的签名选项卡中添加了我的证书,但我仍然从 Windows 获得建议屏幕......

当我尝试在其他机器上运行我的恶意应用程序时,为什么操作系统会提示该屏幕?

我错过了什么?

PS:我知道如何绕过设置 IE 选项的建议屏幕,但这不是其他人的解决方案。

4

1 回答 1

3

这是因为您使用自己的非正版证书对代码进行签名。代码签名证书必须由 Thawte、VeriSign、GlobalSign 等合法受信任的发行商颁发。否则,您需要以自己的方式分发自己的证书,并要求用户将证书作为受信任的证书导入。合法证书通常由 Windows 更新自动分发。

于 2013-04-22T07:55:26.087 回答