將 APK 檔案拖放到此處
或點擊瀏覽本地檔案
完整的簽名和證書分析為什麼要驗證 APK 簽章?
APK 簽名可確保應用程式來自其原始開發人員且未被竄改。
- 確認應用程式真實性和開發者身份
- 檢測修改、篡改或重新打包的 APK
- 驗證更新與現有安裝的兼容性
- 識別V1/V2/V3簽章方案版本
- 查看 SHA-1 和 SHA-256 憑證指紋
- 檢查 MANIFEST.MF 檔案完整性
APK 簽章方案
v1
JAR 簽名
原始方案,驗證每個 ZIP 條目。速度較慢但廣泛相容。
v2
APK簽章方案v2
全APK驗證,安裝更快。從 Android 7.0+ 開始需要。
v3
APK簽章方案v3
支援密鑰輪換。適用於 Android 9.0+。
v4
APK簽章方案v4
流式安裝支援。Android 11.0+。
APK 簽章驗證器 — 常見問題
Android APK 簽章方案(v1、v2、v3 和 v4)如何保護套件完整性
Android 的 PackageManager 拒絕安裝任何缺少有效加密簽署的 APK,而且它會阻止應用程式更新,除非新 APK 的簽署憑證與已安裝套件的憑證完全匹配(否則拋出 INSTALL_FAILED_UPDATE_INCOMPATIBLE)。在旁加載 APK 之前對其進行驗證可以讓您確認存檔未被不可信第三方篡改或重新簽署。
我們基於瀏覽器的 APK簽名驗證器 檢查舊版 META-INF/ JAR 簽章目錄和緊鄰 ZIP 中央目錄之前嵌入的二進位 APK簽名區塊:
- v1 簽名(JAR 簽名 — META-INF/*.MF / *.SF / *.RSA): 向後相容於 Android 6.0 及更早版本所必需的。由於 v1 僅對 MANIFEST.MF 中列出的單一檔案條目進行哈希處理,因此它不保護 ZIP 元數據,從而導致了歷史性的「Janus」漏洞 (CVE-2017-13156)。
- v2 簽章(APK 簽章方案 v2 — 區塊 ID 0x7109871a): 在 Android 7.0 (Nougat) 中引入。將整個 APK 檔案雜湊為 1 MB 區塊中的二進位影像,確保不會在檔案中的任何位置注入額外的位元組或 DEX 有效負載。 Android 11+ (targetSdkVersion ≥ 30) 上強制。
- v3 簽章(金鑰輪換 — 區塊 ID 0xf05368c0): 在 Android 9.0(Pie)中引入。在簽名區塊中嵌入加密的輪換證明沿襲,以便開發人員可以輪換到更強的 RSA-4096 或 ECDSA 金鑰,而不會失去更新相容性。
- SHA-256 憑證和檔案指紋辨識: 在安裝之前,使用「概述」標籤中顯示的 SHA-256 摘要根據官方開發人員發行說明或 VirusTotal 交叉檢查您的 APK。