默认算法是sha1。自己测试还行,如果正式发布显然是有点……怎么办?经过一番反复折腾、搜索、验证,终于完成了。
下载正确的签名包
https://download.csdn.net/download/quantum7/36133788
使用压缩包中提供的bat
操作有点麻烦,所以提供了三个bat,一个是配置,一个初始化,一个签名操作。两个文件的密码、文件等要做适当修改。
三个文件的具体内容如下。
配置文件TaishanSignatureConfig.bat
@ECHO OFF SET TSIT_NAME=taishan-it SET PASSWORD=TaishanQuantum6 SET ALGORITHM=sha512 SET START_DATE=01/01/2021 SET END_DATE=12/31/2050 SET SIGN_INFO="CN=柳鲲鹏,EMAIL=quantum6@yeah.net" SET HTTP_TIMESTAMP=http://timestamp.digicert.com/scripts/timestamp.dll
TaishanSignatureInitiator.bat:使用sha512初始化签名相关
@ECHO OFF CALL TaishanSignatureConfig.bat DEL %TSIT_NAME%.pvk DEL %TSIT_NAME%.cer DEL %TSIT_NAME%.spc DEL %TSIT_NAME%.pfx REM 会要求输入密码 Makecert -r -a %ALGORITHM% -sv %TSIT_NAME%.pvk ^ -b %START_DATE% ^ -e %END_DATE% ^ -n %SIGN_INFO% ^ %TSIT_NAME%.cer Cert2spc %TSIT_NAME%.cer %TSIT_NAME%.spc Pvk2Pfx -pvk %TSIT_NAME%.pvk -pi %PASSWORD% ^ -spc %TSIT_NAME%.spc -pfx %TSIT_NAME%.pfx -f
TaishanSignatureWorker.bat:签名时指定sha512
@ECHO OFF CALL TaishanSignatureConfig.bat SET DEST_DIR=. ECHO - for %%i in (Office.exe ^ TPlayerCore.dll ^ ) ^ do ( ECHO Sign %%i now! IF EXIST %DEST_DIR%\%%i ( REM 一个命令也可以完成 REM SignTool sign /v /as /f %TSIT_NAME%.pfx ^ REM /p %PASSWORD% /fd %NEW_ALGORITHM% ^ REM /tr %HTTP_TIMESTAMP% ^ REM %DEST_DIR%\%%i REM 为了方便察看,使用两个命令 SignTool sign /v /as /f %TSIT_NAME%.pfx ^ /p %PASSWORD% /fd %ALGORITHM% ^ %DEST_DIR%\%%i SignTool timestamp /tr %HTTP_TIMESTAMP% ^ %DEST_DIR%\%%i ) ECHO - )