標籤:style blog http color os io 使用 ar strong
程式碼簽署是對軟體進行標識的一個過程,它通過對軟體增加了發布商的資訊來檢查軟體在發布後是否被修改或受病毒影響。在軟體出售前進行簽名已經成為了行業範圍的專業實踐。隨著使用者的安全意識的提高,現在越來越多的使用者限制下載未簽名的軟體,因此作為專業的軟體公司,在軟體出售前進行簽名已經成為必不可少的一步。
要進行程式碼簽署,需要以下準備:
1)程式碼簽署認證和密碼;
2)程式碼簽署工具;
3)時間戳記伺服器的URL地址;
程式碼簽署工具
程式碼簽署工具, 微軟提供了兩套程式碼簽署工具,
1)signcode.exe, 從1998年開始使用,隨.NET Framework SDK發布。
signcode.exe 程式碼簽署工具
makecert.exe 建立程式碼簽署認證
cert2spc.exe 將程式碼簽署認證轉化為軟體發行者認證格式
2)signtool.exe,隨visualstudio 2005及其以後的版本發布。
signtool.exe 程式碼簽署工具
makecert.exe 建立程式碼簽署認證
cert2spc.exe 將程式碼簽署認證轉化為軟體發行者認證格式
pvk2pfx.exe(pvkimprt.exe) 將私人的密匙和軟體發行者認證合并為pfx檔案,此檔案將被signtool.exe使用
上面2中工具的不同是signcode.exe需要輸入私人密匙和軟體發行者認證(pvk和spc檔案),signtool.exe只需要輸入由pvk和spc合并產生的一個個人資訊互動檔案(pfx)。
獲得程式碼簽署認證
程式碼簽署認證,你需要向可信賴的憑證授權單位購買程式碼簽署認證和密碼,例如你可以向以下的認證機構WoSign購買。
時間戳記伺服器,你可以選擇下列之一,
- http://timestamp.wosign.com/timestamp
- http://timestamp.wosign.com/rfc3161
1)使用signcode.exe,如下:
signcode.exe -t <timestamp URL> -spc mycert.spc -v mykey.pvk "<file to be signed>"進行程式碼簽署的檔案可以是.exe, .dll, .ocx 或者是其他的可執行檔。
2)使用signtool.exe,如下:
現在,就可以使用WDK的 SignTool 簽名你的檔案了,點這裡下載 Signtool簽名工具。簽名命令列為:
XP,Win7使用者 signtool sign /v /s my /t http://timestamp.wosign.com/timestamp test.cab
Win7使用者 signtool sign /v /s my /tr http://timestamp.wosign.com/rfc3161 test.cab
其中:
(1) /v: 顯示詳細的簽名結果
(2) /s my: 載入個人認證庫中的程式碼簽署認證。請確保只有一個WoSign頒發的微軟程式碼簽署認證;
(3) /t,/tr: 為代碼加上WoSign免費時間戳記,確保簽名後的代碼永不到期;
(4) test.cab: 就是您要簽名的Windows檔案,如:.cab, .dll, .exe 等檔案
以下是使用signtool.exe簽名的一個執行個體:
微軟程式碼簽署操作指南