Android開發者表示,以下有關存儲您的應用程序的公共密鑰在您的項目:Android應用內安全建議 - 這是什麼意思?
安全建議:強烈建議您不要 硬編碼的確切公共許可證密鑰字符串值,按照 提供Google Play。相反,您可以在運行時從子字符串構造整個公共許可證密鑰 字符串,或者在將其傳遞給構造函數之前從加密的 存儲中檢索它。這種方法使得 更難以讓惡意的第三方修改APK文件中的公開 許可證密鑰字符串。
這應該是不言自明的?我不明白他們希望我做什麼。
他們在這個例子的評論中說了同樣的話,但是他們沒有真正證明他們的指示是什麼意思。下面是這樣說的:
而不是僅僅存儲在這裏嵌入 的 *程序的整個文本字符串,構建從碎片或 *使用位操作(例如XOR在運行時的關鍵,與其他一些字符串)隱藏 *實際的密鑰。密鑰本身並不是祕密信息,但我們不想讓攻擊者容易地用自己的 *代替公鑰,然後從服務器僞造消息。
那麼一個人究竟能做到這一點呢?
因此谷歌建議「相反,你可以在運行時從子構建整個公共許可證密鑰字符串,或從加密存儲庫中進行檢索,」 從服務器「從加密存儲庫中檢索」 retrieveing呢?什麼是安全的方式來構建它在運行時從字符串描述? –
將所有交易驗證邏輯到你的服務器,並使用HTTPS連接到它。 – skygeek
和串變換你需要實現自己的邏輯或爲前看到更新的答案。 – skygeek