signtool.exe を使用して SHA1 と SHA2 でバイナリに二重署名する必要があります。証明書は 256 ビット SHA2 をサポートしています。
Windows 8 SDK のサインツールを使用する:
例えば:
signtool.exe 署名 /as /fd sha256 /t http://timestamp.verisign.com/scripts/timstamp.dll /f "certificate.pfx" /p XXXXXXX "file.dll"
(ここで、XXXXXXX は証明書のパスワードです)
不可解なエラーで失敗します:
SignTool エラー: SignedCode::Sign がエラーを返しました: 0x80070057 パラメータが正しくありません。SignTool エラー: 署名中にエラーが発生しました: file.dll
タイムスタンプなしの署名は機能し、SHA1 または SHA256 として個別に署名することもできますが、二重署名が必要であり、タイムスタンプがないことはあり得ないと想像してください。
32 ビット版と 64 ビット版の signtool.exe を試し、Win7 と Win8 マシンで試し、コマンド ライン オプションをいじってみましたが、うまくいきませんでした。誰かが以前にこの問題にぶつかったことがありますか?