代碼簽章檢視原始碼討論檢視歷史
代碼簽名(Code signing)是對可執行文件或腳本進行數位簽章以確認軟件作者及保證軟件在簽名後未被修改或損壞的措施。此措施使用加密散列[1] 來驗證真實性和完整性。
代碼簽名可以提供幾大功能價值。最常用的需求是代碼簽名為部署提供了安全性。在某些編程語言中,它也可用來幫助防止命名空間衝突。幾乎每個代碼簽名的實現都提供某種數字簽名機制來驗證作者或構建系統的身份,以及校驗對象是否未被修改。它也可用來提供對象相關的版本信息,以及存儲對象的其他元數據。
代碼簽名作為軟件安全性依賴的效果取決於所支持簽名密鑰的安全性。與其他公鑰基礎設施(PKI)技術一樣,系統的完整性依賴於發布者對其私鑰免受未經授權訪問的保護。存儲在通用計算機的軟件中的密鑰易於受到影響。因此,將密鑰存儲在安全、防篡改的硬件密碼設備(也稱硬件安全模塊,HSM)是更加安全的最佳實踐。