そういえば(SHA-1→SHA-2)
そういえば、以前かいた記事の顛末を書き忘れていました。
備忘録的に記載。
参考記事
84taka-y.hateblo.jp
こちらですが、その後進展がありまして。
まぁ、かなり情報が出てきているのですが、弊社では
SHA-1、SHA-2のダブル署名とすることにしました。
理由は、以下の通り。
・Windows Vista/Windows Server 2008を切るわけにはいかない。
・Vista/Server 2008は、特定KBを充てないと、SHA-2を認識しない。
(WindowsVista/Server2008ではKB2763674, Windows7ではKB3033929, Windows XPではKB968730を必須)
・SHA-2は対応する必要がある。
発生条件
以下の条件を全て満たす場合に発生します。
- OSがWindows7/Windows Server 2008 R2以降。
- Windows Update(KB3123479)がインストールされている。[2016年01月13日に配信開始]
- 電子署名でSHA-1方式の電子署名を使い、2016年01月01日以降に電子署名を実施したファイルを、Internet Explorer 9, 10, 11のいずれかを使用して取得操作をする。
対処方法
ダブル署名にします。
ren This is a codesign.bat
rem **********************************************************
rem 使用するsigntool系は、SHA-256に対応したものにしてください。
rem **********************************************************rem **************
rem sha-256(sha-2)
rem **************
set pvk_path=xxxxx\myprivatekey.pvk
set spc_path=xxxxx\mycredentials.spc
set pfx_path=%Temp%\mypfx.pfx
set pwd=hogehogerem **************
rem sha-1
rem **************
set pvk_path2=xxxxx\myprivatekey.pvk
set spc_path2=xxxxx\mycredentials.spc
set pfx_path2=%Temp%\mypfx.pfx"%tool_dir%"\pvk2pfx.exe -pvk "%pvk_path2%" -spc "%spc_path2%" -pfx "%pfx_path2%" -pi %pwd%
"%tool_dir%"\signtool.exe sign /f "%pfx_path2%" /a /t http://timestamp.verisign.com/scripts/timstamp.dll /p %pwd% %1
del "%pfx_path2%"
"%tool_dir%"\pvk2pfx.exe -pvk "%pvk_path%" -spc "%spc_path%" -pfx "%pfx_path%" -pi %pwd%
"%tool_dir%"\signtool.exe sign /fd sha256 /f "%pfx_path%" /a /as /tr http://timestamp.geotrust.com/tsa /p %pwd% %1
del "%pfx_path%"