У меня есть два сертификата подписи кода (один SHA-1, один SHA-256), которые я хотел бы применить к одному и тому же файлу. Я попытался добавить сертификат SHA-256, но это не удалось:
:: Signs with the SHA-1 certificate
signtool sign /sha1 8f52fa9db30525dfabb35b08bd1966693a30eccf /t http://timestamp.verisign.com/scripts/timestamp.dll my_app_here.exe
:: Signs with the SHA-2 certificate
signtool sign /sha1 8b0026ecbe5bf245993b26e164f02e1313579e47 /as /t http://timestamp.verisign.com/scripts/timestamp.dll my_app_here.exe
Это не удается с ошибкой:
Done Adding Additional Store
SignTool Error: SignedCode::Sign returned error: 0x80070057
The parameter is incorrect.
SignTool Error: An error occurred while attempting to sign: my_app_here.exe
Если я удалю URL-адрес метки времени из второй команды, подпись завершится успешно, но подпись SHA-2 не будет иметь метки времени. (Независимо от того, поставлю ли я метку времени на первую подпись, это не повлияет)
Цель здесь состоит в том, чтобы позволить кому-либо проверить приложение с помощью более надежного сертификата, если он работает в операционной системе, которая его поддерживает, но избежать сбоя проверки в операционных системах, которые не поддерживают более надежные сертификаты (Vista, XP).
Такое вообще возможно?
/td sha256 /tr ...
вместо/t ...
для второй подписи? - person Thomas Weller   schedule 04.02.2014