我有一个项目,我应该跟踪每个访问游戏的用户的高分。但是,这些数据将保存在一个数据库中,该数据库需要从想要在其中插入更好分数的用户获得保护。
此外,可以对Flash应用程序进行反编译,以便可以查看,复制数据格式并将其设置为数据库管理脚本。
确保这方面的好方法是什么?
提前谢谢!
答案 0 :(得分:1)
就反编译而言,我认为代码混淆是你应该考虑的事情。对于反编译代码的人来说,它应该使数据跟踪变得更加困难。
在任何情况下,请记住,如果有人真的想破坏您的安全,他们可以并且愿意。请参阅:PS3在线服务。一些预防措施是好的,以保持普通乔斯不要试图打破你的高分,但只有你能做到这么多..被黑客攻击是不可避免的。
就PHP中的记分牌保护而言,请参阅此问题,它有许多精彩的建议:What is the best way to stop people hacking the PHP-based highscore table of a Flash game
答案 1 :(得分:1)
您可以通过将应用程序嵌入另一个应用程序来混淆编译器。 您只需要一个新的Flash文档和一个文档类,其中包含:
package
{
import flash.display.Loader;
import flash.display.MovieClip;
import flash.events.Event;
public class Shell extends MovieClip
{
[Embed(source="Main.swf")]
private var ncvt3ewdsxxnztt:Class;
private var hsf8z42fdfd_as32:MovieClip;
public function Shell()
{
hsf8z42fdfd_as32 = new ncvt3ewdsxxnztt();
hsf8z42fdfd_as32.addEventListener(Event.COMPLETE, onComplete);
}
public function onComplete(e:Event) {
addChild(hsf8z42fdfd_as32);
}
}
}
编辑:
反编译器关于嵌入源的dunno。所以它只会反编译你的shell,保护你的主应用程序免于反编译,保存每个资产和代码。 =)