Почему signtool.exe не поддерживает параметр /as в то время как двойной знак SHA2 и SHA1

Я получил ошибку о параметре /as, когда двойной знак SHA2 и SHA1

signtool sign /v /n "name" /sha1 "sha1 hash" /t http://timestamp.verisign.com/scripts/timstamp.dll my.exe
signtool sign /v /n "name" /sha1 "sha1 hash for sha256" /as /fd sha256 /tr http://timestamp.geotrust.com/tsa /td sha256 my.exe

Ошибка SignTool: неверный параметр: /as

Я предполагаю, что моя версия signtool.exe не поддерживает параметр /as? Я использовал версию signtool.exe 6.1.7600.16385 BTY, я могу успешно подписать SHA2 без параметра /as.


person Tom Xiong    schedule 02.03.2016    source источник
comment
BTY, я использую signtool.exe как в Windows 7, так и в Windows Server 2008.   -  person Tom Xiong    schedule 02.03.2016


Ответы (3)


Я могу успешно подписывать файлы с помощью двойной подписи, пока использую более высокую версию 6.2.9200.20527 signtool. Signtool принадлежит Windows SDK 8 https://dev.windows.com/en-us/downloads/windows-8-sdk. Я предполагаю, что более высокая версия Windows 8 SDK выше также может поддерживать параметр /as.

person Tom Xiong    schedule 08.03.2016
comment
Вы хотите сказать, что вам удалось поставить двойную подпись (SHA1+SHA256) на файл под Windows 7? С отметкой времени SHA256? Если да, пожалуйста, предоставьте полную команду. - person CodeX; 21.05.2016
comment
Мне удалось дважды подписать мои файлы под Windows 7 Professional с помощью двух команд: V:\Bin\signtool.exe sign /f V:\instalador\YourSoftware-code-sign.pfx /p 123456 /d YourSoftware Your Company /du YourSoftware.com.br /fd sha1 /tr timestamp.comodoca.com/?td=sha1 /td sha1 C:\exe\YourSoftware.exe ------ V:\Bin\ signtool.exe sign /f V:\instalador\YourSoftware-code-sign.pfx /p 123456 /d YourSoftware Your Company /du YourSoftware.com.br /fd sha256 /tr timestamp.comodoca.com/?td =sha256 /td sha256 /as C:\exe\YourSoftware.exe - person Rebelss; 20.09.2018

Нужна Windows 8/10, по крайней мере пока под Windows 7 это невозможно, что действительно странно. Даже если вы будете использовать более новые бинарные файлы signtool под Windows 7 (например, из SDK 10), все равно будет невозможно использовать ключ /as.

person Bolek Zandler    schedule 11.03.2016
comment
Это неправильно. В данный момент я выполняю двойной вход на компьютере с Windows 7, и он отлично работает. Ключевым моментом является использование более новой версии signtool, которая поддерживает двойную подпись. В моем случае я установил Windows 8.1 SDK на свой компьютер с Windows 7. SDK включает версию signtool, поддерживающую двойную подпись. - person Pedro Ramilo; 15.11.2016

Я предполагаю, что фактическая причина проблемы заключается в следующем: signtool.exe связан с mssign32.dll и wintrust.dll. Эти dll находятся в папке %WinDir%\system32 и в Windows 7, похоже, не поддерживают двойную подпись. WinSDK 8.x поставляется с собственными версиями этих DLL в той же папке, что и signtool.exe. Здесь работает двойная подпись! В более старых версиях SDK это не так. Я только что установил WinSDK 10 на свою Windows 7, и снова он здесь больше не работает, так как этот SDK больше не поставляется с собственными версиями dll, упомянутыми выше. Я думаю, именно поэтому другие думают, что это работает под Windows 8.x и выше, только потому, что здесь mssign32.dll новее ...

person StefanB    schedule 24.11.2016