У меня есть два сертификата подписи кода (один 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).
Возможно ли подобное?