Inno setup 是否可以使用sha1和sha256证书对安装程序和卸载程序进行双重签名?
在Inno安装程序中,是否可以同时使用sha1和sha256对卸载程序和安装程序进行签名 我知道它可以通过命令工具执行两个证书,但我想知道这是否可以通过Inno中的Inno setup 是否可以使用sha1和sha256证书对安装程序和卸载程序进行双重签名?,inno-setup,signtool,verisign,Inno Setup,Signtool,Verisign,在Inno安装程序中,是否可以同时使用sha1和sha256对卸载程序和安装程序进行签名 我知道它可以通过命令工具执行两个证书,但我想知道这是否可以通过Inno中的SignTool实现。Autoanswer 是的,这是可能的。正如@Wosi所建议的,您可以编写一个批处理,然后使用添加的$f参数调用它 样本批次(signtool.bat): 然后在Inno设置中,您可以调用signtool.bat$f,其中$f将被传递给批处理的%1 对于sha1的Windows XP兼容性:删除了/as,/tr替
SignTool
实现。Autoanswer
是的,这是可能的。正如@Wosi所建议的,您可以编写一个批处理,然后使用添加的$f
参数调用它
样本批次(signtool.bat):
然后在Inno设置中,您可以调用signtool.bat$f
,其中$f
将被传递给批处理的%1
对于sha1的Windows XP兼容性:删除了/as
,/tr
替换为/t
,删除了/td
(根据需要)
我将把它留在这里,因为也许有人会发现它很有用。我正在使用InnoSetup 5.5.9。我使用ISCC从命令行编译脚本。我的设置脚本在[setup]部分包括以下两行:
SignTool=sha1
SignTool=sha256
ISCC命令如下所示:
ISCC "/ssha1=signtool.exe /f <cert.pfx> /p <certpwd> /fd SHA1 /t <timestamp.url> /v $f" "/ssha256=signtool.exe /f <cert.pfx> /p <certpwd> /fd SHA256 /tr <timestamp.url> /td SHA256 /as /v $f" setup.iss
ISCC”/ssha1=signtool.exe/f/p/fd SHA1/t/v$f”“/ssha256=signtool.exe/f/p/fd SHA256/tr/td SHA256/as/v$f”setup.iss
Innosetup将使用两个证书对安装和卸载进行签名。为什么不可能?您可以将批处理文件作为signtool传递,该批处理文件调用signtool.exe两次。虽然可以这样做,但请注意,您可以有多个批处理文件,如图所示。我有一些编译错误–需要编写完整路径:c:\…\signtool.bat$f
ISCC "/ssha1=signtool.exe /f <cert.pfx> /p <certpwd> /fd SHA1 /t <timestamp.url> /v $f" "/ssha256=signtool.exe /f <cert.pfx> /p <certpwd> /fd SHA256 /tr <timestamp.url> /td SHA256 /as /v $f" setup.iss