2016-01-02 46 views
0

我下面谷歌的IAP教程Google In-appAndroid中如何使用「加密存儲」?

和它說:

強烈建議您不要硬編碼的確切公共許可證密鑰字符串值由谷歌提供的播放。相反,您可以在運行時從子字符串構造整個公共許可證密鑰字符串,或者在將其傳遞給構造函數之前從加密存儲中檢索它。

如何實施「加密存儲」以安全存儲字符串? 似乎沒有關於它的大量信息。

+0

我想這只是一個通用的術語,指的是你可以在應用程序中實現的某種加密。 – Henry

+0

是的,我想是這樣的 - 我沒有找到關於「加密存儲」的演示/教程/例子。我認爲這對於Google的文檔夥伴來說是「一個簡單的出路」。 –

回答

1

這是我做過什麼,使之樂趣餅乾:

1)我用JNI隱藏解密密鑰,我通過包括從數據確信這會導致對象文件大於256KB大隨機的單詞生成器和一張貓的圖片。使對象文件大於256KB,以防止使用的https://www.onlinedisassembler.com/odaweb/要使用NDK開發是很重要的,請按照本教程http://ph0b.com/new-android-studio-ndk-support/

2)我硬編碼我的加密谷歌播放計費的許可證密鑰在Java類,後把它分成幾個獨立的字符串。 (不要把它放進/ RES /串,因爲它太容易「apktool」拆卸APK後發現,看https://ibotpeaches.github.io/Apktool/install/

3)這是我用來執行加密和解密https://github.com/scottyab/AESCrypt-Android/blob/master/aescrypt/src/main/java/com/scottyab/aescrypt/AESCrypt.java

這花了大約2天的時間來計算和實施,所以我希望Google允許在「生成簽名的APK」階段插入許可證密鑰,然後我的應用程序(以及我的應用程序)才能讀取。

如果任何人有任何其他建議,請評論...

注: 我想要去的RSA加密,但我發現計費的許可證密鑰是RSA太大因此,使用AES。

+0

因此,您的整個應用程序使用Android NDK? –

+0

不,不是整個應用程序,只是讀取隱藏鍵的部分 –

+0

您可以在Github Gist上發佈代碼示例嗎?我正在嘗試讓應用內結算工作在我的應用上,這將非常有幫助。 –

相關問題