當我們將一個Android應用程序進行反編譯后,我們會得到包含應用源代碼和資源文件的項目文件。然而,這個反編譯得到的項目文件沒有經過正確的簽名,因此無法直接安裝和運行。
在Android中,每個應用程序都需要進行數字簽名,以確保應用程序的完整性和身份已簽名的apk無法使用驗證。應用程序的簽名由開發者使用自己的私鑰生成,并將相應的公鑰嵌入到應用程序中。當用戶嘗試安裝應用程序時,Android操作系統會驗證應用程序的簽名,并確保該簽名與應用商店中的簽名相匹配。如果簽名未通過驗證,應用程序將無法安裝或運行。
因此,當我們反編譯一個A
ndroid應用程序并修改其中的代碼或資源文件后,其簽名也會失效。修改后的應用程序沒有經過正確的簽名,因此無法直接安裝和運行。即使我們重新簽名這個修改后的應用程序,簽名也與原始應用程序的簽名獲取apk文件的簽名信息不匹配,因此無法通過系統驗證。
然而,一些黑客可能會嘗試使用自己的簽名重新打包修改后的應用程序,并試圖欺騙用戶認為這是原始的應用程序。這種行為被視為違法的侵權行為,并且可能對用戶造成損害。
總結起來,反編譯后的應用程序如果進行了修改,其簽名將會失效。重新簽名后的應用程序也無法通過系統驗證,因此不能正常安裝和運行。這是為了保護用戶安全和應用程序的完整性而存在的機制。