[Code Signing] 淺談 EV Code Signing 延伸驗證程式碼簽章

上一篇談過了 Code Signing,這篇更進一步來聊聊 EV Code Signing(延伸驗證程式碼簽章)。EV 的全名是「Extended Validation」,其實這玩意可以說是 Code Signing 第二代,所以如果還沒過上篇的建議先看看—「淺談 Code Signing 程式碼簽章」。

EV Code Signing 多了個 EV,有何不同?

老實說,在我的感覺中,似乎就只有在軟體被執行時不會跳出 Windows 10 的 SmartScreen 警告視窗。另外,據說在 Windows 7 使用 ie 下載時,也會出現不一樣的下載畫面

而在簽署動作上,EV Code Signing 必須使用 USB Token 才能夠進行簽章作業,並不像 Code Signing 僅需要連網就可簽署。也因為如此,就更不容易被破解。當然,除了這些差異外,再來就是 EV 的售價比較貴。

什麼是 SmartScreen?

SmartScreen 是 Windows 8.1 及 Windows 10 防止使用者進入釣魚網站、執行惡意軟體的一套防護工具。當使用者試圖執行具有風險的軟體時,就會跳出來警告提醒使用者,但使用者仍然是可以強制執行的。該軟體要避免被 Windows 誤判,在不使用簽章的情況下,就只能仰賴該軟體的載點廣為人知,被很多人下載後,某天自動從 Windows 風險名單中移除,是一個很不可控的方式。

關於 SmartScreen,更多資訊可以參考:SmartScreen 篩選工具: 常見問題集

點擊左圖相當不顯眼的「其他資訊」後,會出現右圖的畫面,仍可強制執行。

總結

SmartScreen 視窗看起來遠比 Code Signing 的警告視窗看起來凶狠的多,相當具有警示作用,使用者也無法「輕易」執行。如果真要簽章,不如就簽 EV Code Signing 吧~。

看到 EV Code Signing 這玩意,最大的心得是...微軟好騙錢聰明。