在開發網頁的應用程式時,每次測試時總是要先更改 IE的安全性。
當開發完成之後,總不能也要求使用者進行此類操作吧,此時就需要申請憑證,對軟體進行認證囉。
1. 憑證種類
對於自行開發程式的研發人員而言,在發行軟體時可能會用到下列憑證
- Microsoft Authenticode Digital ID
- Sun Java Signing Digital ID
- Netscape Object Signing Digital ID
- Microsoft Office and VBA Signing Digital ID
- Macromedia Shockwave Digital ID
- Marimba Castanet Channel Signing Digital ID
由於我們這次所撰寫的專案是使用 .cab 與 .jar。所以我只需要申請
- Microsoft Authenticode Digital ID
- Sun Java Signing Digital ID
2. 憑證申請
台灣有一些代理商可協助向國外申請憑證,主要有以下兩家網際威信和寰宇數位認證中心。
個人的刻板印象中,VeriSign是國際上有名的憑證中心,因此申請時也傾向採用VeriSign的代理商。最後決定是跟網際威信直接訂購。上述的每種簽證,申請一年的價錢都是 16500。
- http://www.hitrust.com.tw/
- http://www.globaltrust.com.tw/
如果要省點錢的話,可以直接跟原廠訂購,或是採用別的憑證中心。以原廠而言(http://www.verisign.com.tw/),一年是美金$499,可以省下台幣1500。不過為了方便,我想第一年還是直接跟代理商買好了。後續要續約時再找原廠。
申請程序完成後, 會收到一封Email,裡面包含一個.crt和一個private key file,並且會附上使用說明。
例如:我們可以利用微軟提供的sign tool 並指定verisign所給的上述兩個檔案
進行ActiveX的簽署動作
3. 憑證簽署工具
以Authenticode憑證為例:可以使用微軟的檔案簽屬工具,.NET Framework SDK 1.0 版和 1.1 版使用 signcode,新版SDK則使用 signtool。下面提供簽署工具的下載連結
- http://msdn.microsoft.com/zh-tw/library/9sh96ycy(v=vs.80)
- http://msdn.microsoft.com/zh-tw/library/8s9b9yaz(v=vs.80)
4. 各家憑證比較,參考寰宇數位認證中心
GlobalTrust、Thawte 和 GlobalSign 都有自己的程式碼簽張憑證產品,如果您是希望購買微軟代碼簽名證書,我們推薦您選購GlobalTrust的程式碼簽張憑證,一樣的支持所有流覽器,但價格更便宜,審核發送的速度更快,並且有更好的中文支援。而如果您希望購買Java代碼簽名證書(包括MIDlet簽章),寰宇認證中心則推薦您選購Thawte 或 GlobalSign 的程式碼簽章證書,而VeriSign Java程式碼簽章憑證支援最多的機型的手機服務。