От приложения Android In App Billing версии 3 (TrivialDrive) с приложением sdk
MainActivity.java
/* base64EncodedPublicKey should be YOUR APPLICATION PUBLIC KEY
* (that you got from the Google Play developer console). This is not your
* developer public key, it the *app-specific* public key.
*
* Instead of just storing the entire literal string here embedded in the
* program, construct the key at runtime from pieces or
* use bit manipulation (for example, XOR with some other string) to hide
* the actual key. The key itself is not secret information, but we don't
* want to make it easy for an attacker to replace the public key with one
* of their own and then fake messages from the server.
*/
String base64EncodedPublicKey = "CONSTRUCT_YOUR_KEY_AND_PLACE_IT_HERE";
Ну, я не уверен, что понимаю эту меру безопасности. Я знаю, как получить открытый ключ приложения (который уже закодирован в базе 64) из консоли разработчика Google Play.
То, что я не понимаю, это эта часть
/* Instead of just storing the entire literal string here embedded in the
* program, construct the key at runtime from pieces or
* use bit manipulation (for example, XOR with some other string) to hide
* the actual key
*/
Насколько я знаю, этот открытый ключ является постоянной строкой, которая предоставляется от Google во время процесса загрузки приложений.
Как мы можем создать один и тот же ключ программно, используя любой процесс манипуляции бит? Кто-то сделал это раньше? Есть ли какой-нибудь пример кода, как это сделать?