html - 如何保护免费增值 HTML5 免受变量修改?

标签 html obfuscation source-code-protection

有些人提出了关于保护 HTML5 应用程序和保护免费增值应用程序的类似问题,但不是同时提出这两个问题。我单独问这个问题是因为我的印象(无论是对还是错)HTML5 与原生相比特别不安全。

我正在开发一个嵌入式 HTML5 应用程序,我想使用免费增值模式获利,但我担心如何防止其虚拟货币和评分变量太容易被最终用户弄乱,我担心如果某些黑客(该术语无意冒犯)要创建有关漏洞利用的 YouTube 视频或博客帖子,这可能会对收入产生负面影响。我认为这种情况在早期不太可能发生,但我认为脆弱性会随着受欢迎程度而变得更加重要。我还担心有人可以复制应用程序。

不过我意识到,通过在设备上安装一个应用程序,这两者都是可能的。

我的问题是:

  1. 根据您的意见或经验,惹恼一个人有多容易 未混淆的嵌入式(不依赖于浏览器)HTML5 应用程序及其 Javascript 与具有基于 Java 或 Objective-C 数据的核心文件的 native 应用程序相比?/混淆在 HTML5 应用程序上的效果与 native 混淆的效果如何 数据保护方面的应用程序?
  2. 混淆 HTML5 应用与在常规 Android 应用上使用 Proguard 之类的东西相比有多难?
  3. 混淆是否会导致 HTML5 对于普通用户来说速度明显变慢?
  4. 最后,您认为使用 HTML5 应用程序是否可行 免费增值功能?还是您个人认为它太脆弱了?

我基本上想与他们弄清楚的是 HTML5 是否特别容易受到攻击或难以保护,至少与保护 native 应用程序相比是这样。如果经过混淆的 HTML5 应用程序与常规应用程序一样安全或不安全,那么我想我可以接受。

最佳答案

防止作弊(解锁免费增值元素是一种作弊)的唯一方法是将所有相关游戏逻辑移至服务器。忘记混淆。当它在客户端机器上执行时,它处于用户的控制之下。混淆可以减慢用户的速度,但无法阻止决心破解它的人。这不仅适用于 javascript,它适用于每一个游戏客户端,无论它是用什么编程语言编写的。

设计防作弊多人游戏的一般规则是永远不要相信客户端并在服务器上进行所有与游戏玩法相关的计算。

关于html - 如何保护免费增值 HTML5 免受变量修改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14737959/

相关文章:

html - 如何以编程方式显示 HTML5 客户端表单验证错误气泡?

html - 如何强制网络浏览器不缓存图像

javascript - 如果 .js 文件不存在,则包含 jQuery

当 HTML 输入使用自动对焦时 jQuery 执行操作

android - 如何保护Android应用程序的AndroidManifest.xml文件?

javascript - 从混淆的 javascript 代码创建 javascript 代码

matlab - 如何编写 protected MATLAB 脚本/程序?

source-code-protection - 如何阻止程序员在离开公司时从 GitHub 复制代码?

c# - 加密可执行文件导致 BinaryAssemblyInfo.GetAssembly 异常

python - 保护 Matlab 与 Python 中的源代码