Windows Code-Signing进程和MS signtool.exe的替代?

Red*_*ick 4 code-signing digital-signature

使用非Microsoft编译器,我已经为Windows编写了一个小应用程序,我想免费赠送或出售一些微不足道的数量(5美元说).该程序不使用注册表,但我想将其作为使用免费工具(例如InnoSetup)创建的安装程序可执行文件(例如MyAppInstall.exe)提供.

签署Windows EXE文件和其他来源,我的理解如下:

  1. 如果我没有签署安装程序,Windows将弹出一个警告对话框,警告用户该发布者未知,并建议他们不要运行该软件.这是不可取的.

  2. 如果我使用自我认证密钥对安装程序进行签名,则弹出对话框将至少提供发布者名称而不是"未知".它会说发布商无法验证或发布商不受信任.这可能比被描述为未知的出版商要好一些.

  3. 如果我每年向CA 支付约100美元,我可以获得一个代码签名证书,这将允许我提供可以轻松安装的有用的免费软件 - 不会出现可怕和令人反感的对话.

  4. 我可以使用OpenSSL的Windows版本来创建自我认证的代码签名密钥.这样我就不必从MS下载安装一个590 MB的SDK文件来获取微软的makecert.exe

  5. Catch 22:我听说的唯一代码签名工具signtool.exe只能通过下载和安装至少590 MB的其他东西(SDK)来获得.

问:有没有替代微软的 signtool.exe

Ale*_*ios 7

kSign,他们的博客也有一篇关于如何与Inno Setup集成的文章.

它不是signtool的完全替代品(即它不会在签署驱动程序包时签署.cat和.sys文件),但它将对EXE,DLL,COM,CAB和OCX文件进行数字签名.