在混淆程式碼中隱藏敏感字串
混淆程式碼以保護專有資訊是一種常見的做法,但敏銳的眼睛仍然可以發現隱藏的字串。要有效隱藏敏感數據,請考慮以下技術:
編碼與加密
如果目標是阻止隨意檢查,編碼就足夠了。 android.util.Base64 類別提供了方便的方法。然而,編碼提供的安全性可以忽略不計。
為了更好地防範攻擊者,建議使用 AES 等密碼進行對稱加密。 javax.crypto.Cipher 類別提供了其用法範例。
手動加密和解密
按照以下步驟手動實現加密和解密:
第三方 DRM 解決方案
考慮使用第三方 DRM 解決方案,例如 Google 的授權伺服器。與自滾動解決方案相比,它們提供了潛在的安全優勢,但仍具有類似於手動加密和解密的限制。
R 類別字串
您在中提到的 R 類別字串您的程式碼是對資源的引用。像 ProGuard 這樣的混淆器不會混淆 R 類別本身,而是混淆對資源 ID 的參考。它們保持相同的數字,但更改了指向實際資源的映射。
在本例中,2130903058 引用了版面配置檔案。如果沒有反編譯的R類,你無法直接檢索它所代表的資源,但它仍然是資源的二進位資料的位址。
以上是如何將敏感字串隱藏在混淆程式碼中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!