【问题标题】:How to validate a digital signature?如何验证数字签名?
【发布时间】:2013-04-15 00:08:02
【问题描述】:

我花了 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 获得建议屏幕...

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

我错过了什么?

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

【问题讨论】:

    标签: c# .net vb.net certificate digital-signature


    【解决方案1】:

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

    【讨论】:

    • 这意味着所有替代方案都在为签名付费?
    猜你喜欢
    • 2014-03-16
    • 2017-10-11
    • 1970-01-01
    • 2019-11-24
    • 2017-02-18
    • 2019-11-01
    • 1970-01-01
    • 2014-01-28
    相关资源
    最近更新 更多