我想将Android游戏的分数保存到te parse.com后端。 所以我将创建一个ParseObject并将其保存在后台:
ParseObject gameScore = new ParseObject("GameScore");
gameScore.put("score", 1337);
gameScore.put("playerName", "Sean Plott");
gameScore.saveInBackground();
现在有人可以反对engeener我的Android应用程序,获取解析客户端密钥和应用程序ID,并为他的用户parse.com后端写下他想要的任何高分? 或者Parse是否已经以某种方式阻止了这种情况?
THX
答案 0 :(得分:2)
是的,您需要额外的安全性,这些API密钥可能被盗。
混淆是阻止某人对您的代码进行逆向工程的第一步。但是,像API密钥这样的东西通常存储为String
,因此它们不会被混淆。没有真正完美的解决方案。无论你做什么,致力于它的人都可以偷走它。但是有一些方法可以使这个过程更加困难
一些例子:
为了保护您的公钥免受恶意用户和黑客的攻击,请不要将其作为文字字符串嵌入任何代码中。相反,在运行时从片段构造字符串或使用位操作(例如,XOR与其他字符串)来隐藏实际的键。密钥本身不是秘密信息,但您不希望黑客或恶意用户轻易用其他密钥替换公钥。 http://developer.android.com/google/play/billing/billing_best_practices.html
有关该主题的更多信息:
http://www.androidauthority.com/how-to-hide-your-api-key-in-android-600583/ http://www.informit.com/articles/article.aspx?p=2268753&seqNum=4
相关问题: