2009-09-14 50 views
3

我有一個zip文件,其中包含許多從HTTPS站點下載的jar文件。驗證JAR文件的完整性是否必要?

罐子形成一個命令行驅動的服務器端應用程序。我有一個Java編寫的應用程序安裝程序,它執行一些檢查來驗證罐子是否使用特定的可信數字證書進行簽名,並且在傳輸過程中未被修改。

是否有必要在收到時驗證jar文件,或者這是JVM做的事情嗎?我知道JVM驗證字節碼,但是jar簽名怎麼樣?

回答

2

這取決於如何使用罐子。

如果罐子最終由一個類加載器加載,類加載器可能執行的簽名的驗證。如果類加載器碰巧是URLClassLoader的實例,則其將執行簽名的驗證

如果您在Java API中利用JarFile類來訪問JAR,那麼使用接受String或File參數的簡單構造函數將導致執行驗證。必要時,必須明確地關閉驗證。