假設我有一個調用Web服務從遠程服務器數據的基礎上,這意味着我的代碼中的一些部分我將使用URL得到一些數據的Android客戶端應用程序的後端調用我需要的API,現在可能現在有android de-compilers獲取APK文件的源代碼,這意味着我用來調用API的URL可能會受到某人的反編譯我的應用程序,這是我想要避免的一個主要問題,即使我已經通過身份驗證保護了我的遠程服務器,無論它是基本還是摘要還是以往,我仍然不希望我的API的URL受到來自第一個地方,我該如何避免這種情況發生,是否有某種算法可以解碼我的代碼內部的URL,因此當我的APK被反編譯時,我調用的這些API的地址不會被公開?Android系統如何保護我的源代碼
回答
沒有辦法阻止攻擊者獲取URL。你應該有一些API或密碼,每個用戶都是唯一的,以防止未經授權訪問你的api。
由於攻擊者擁有apk,並且由於應用程序必須知道要使用哪個網址,因此攻擊者只需使用一些邏輯即可獲取網址,但無論如何,混淆你想出來。
你的代碼可以逆向工程在幾乎所有情況下,即使你使用機器人會built-in obfuscator。你只能讓攻擊者更難。因此,包含apikey或密碼也不起作用 - 因爲這個超級機密信息也必須存儲在某個地方。
但最大的問題是:監控網絡流量將揭示
URL
服務器的位置,在任何情況下,不管你做什麼。
因此,唯一的解決方案是設計你的服務器的方式,它可以處理「邪惡」的請求。沒有辦法繞過它,否則你的服務器可能會被黑客入侵!所以...
- 你不想讓任何人知道你的服務器? 不可能要限制每個用戶的請求
- ? 幾乎不可能。如果哪裏容易,拒絕服務攻擊將成爲過去。限制每個IP地址的請求數是一個開始,但不是完美的,因爲手機經常改變他們的地址。
爲什麼倒票? – PhilLab 2014-09-12 13:17:46
不是我...... :) – user2469133 2014-09-12 15:11:09
但是,如果連接是通過SSL加密的,那麼您可能會錯誤地在「監視網絡流量將會顯示URL」,然後數據包嗅探器不應該能夠顯示請求url – user2469133 2014-09-12 15:27:48
- 1. 保護android源代碼
- 2. 如何保護源代碼?
- 3. 源代碼保護
- 4. 保護DLL的源代碼
- 5. 如何保護x ++源代碼
- 6. Google Native Client - 如何保護源代碼?
- 7. 從源代碼構建Android系統
- 8. 保護源代碼段
- 9. 保護AngularJS源代碼
- 10. 如何保護我的HTML Metro應用程序的源代碼?
- 11. 如何保護我們的代碼?
- 12. 如何保護我的代碼
- 13. 如何在部署時保護我的源代碼?
- 14. 如何查看Windows操作系統中的Android源代碼?
- 15. 保護我的代碼?
- 16. 版本控制系統可以幫助我保護我的代碼嗎?
- 17. 保護碼頭文件系統訪問
- 18. 與IronPython程序集一起工作的代碼保護系統?
- 19. 如何保護Javascript代碼?
- 20. 如何保護登錄系統
- 21. 密碼保護系統應用程序android
- 22. 如何保護我的內容管理系統?
- 23. 如何保護我自己託管的網站/系統?
- 24. 如何解碼android系統
- 25. Pivotal CRM的源代碼管理系統
- 26. 源代碼管理系統的算法?
- 27. 系統空閒進程的源代碼
- 28. 保護腳本語言源代碼
- 29. jxcore無法保護源代碼
- 30. 在Matlab和Python中保護源代碼
您可以使用天真的機制對字符串進行加擾/解擾,因此乍一看看起來不像URL,但易於被任何想知道URL的人反向設計。 – 2014-09-12 12:20:28