其实这是一个有点傻关于保护公共密钥(什么是公共密钥的定义呢?),但作为每documentation by Google:如何保护做应用程式内结算时,谷歌播放公钥
为了保持您的公共密钥不受恶意用户和黑客的侵害,因此不要将 作为文字字符串嵌入到任何代码中。相反,在运行时从零件构造 字符串或使用位操作(例如, XOR与其他字符串)来隐藏实际的键。密钥本身并不是秘密信息,但您不希望让黑客或恶意用户轻易地用另一个密钥替换公钥。
有没有推荐的方法来做到这一点?
我知道有很多方法可以做到这一点,我只是不希望用同样的方法的人如何处理密码在过去的散列(例如MD5,SHA1等),我想知道的最佳实践在上面的用例中。
你是什么意思“然而,在实践中,在正确的位置简单地修改你的代码总是为isLicensed(),hasItem()或类似的方法你可能有,没有人这样做。“?这句话没有完全意义。请澄清。 – Stunner 2013-01-16 21:41:22
这意味着修补应用程序并彻底禁用您可能拥有的任何许可检查会更容易,而不是尝试更换密钥和混乱尝试欺骗签名验证。 – 2013-01-17 01:06:53
〜“**可能也会控制相应的私钥**”。但是,应用内结算请求会通过设备上的Play Store APK进行。那么,某人如何控制或操纵该逻辑? – 2016-09-02 14:29:36