我正在编写一款基于HTML5的游戏,它将作为一款独立应用运行。它是通过网络分发的,但没有其他服务器需求——没有数据库等——一切都是"应用内"的。这是故意的,因为额外的服务器会增加分发成本。
所以,考虑到它只是一个静态的html文件与大量的JavaScript,是什么阻止有人托管文件在自己的网站上?有什么技术可以帮助缓解这种情况吗?
我担心的不是奇怪的用户,而是其他网站的身份盗窃。非额外的服务器解决方案将是首选,但任何想法都将受到赞赏。
如果一切都在客户端运行,那么您可以做的事情就不多了。您可以尝试混淆JavaScript,但这不是一个非常有效的解决方案。您需要做的是以吸引人的方式将其绑定到后端,例如
- Hilicores 多人
- 与其他游戏的集成
通过提供优质的体验给他们一个回头客的理由。
最后积极寻找和保护你的知识产权。当你发现一个网站在欺骗你的时候,尽你所能去关闭它。
首先,当您分发应用程序的源代码时,任何有一点技术知识的人都应该能够理解它是如何工作的。
但是您可以使事情变得更难——通常,使用混淆(因此有意义的变量名称,例如'hero_score'
被没有意义的变量名称,例如'a45'
取代)
YUI Compressor
确保你的代码有明确的版权。你不能单凭技术上的理由赢得这场战斗。
混淆和压缩代码是最好的技术解决方案,正如Pascal所说。
考虑链接到服务器登录或其他。像Google AppEngine这样的东西使得运行一个可扩展的服务器变得非常简单和便宜。
我建议添加一个javascript函数来测试它在哪里被播放,然后保护你的代码,在网上你可以找到很多关于混淆/加密javascript的信息。
编辑:在这种情况下,我要做的是,知道窃取/重新编辑javascript甚至混淆,可以做到:
我将有一个服务器端页面来保存文件,并且一些核心变量将通过服务器端写入。
困难的部分是编程的方式不能完全在javascript中完成(没有服务器端)。
然后,也许一些物品也可以通过服务器端构建/放置,这样海盗就很难重制所有东西。
同样,域检查的脚本可以通过服务器端完成。
我发现这个Javascript混淆器是最好的保护你会得到,它使你的代码完全不可读,它应该缩小它,我已经做了一个JSPERF,它似乎运行得更快了。
<标题> www.javascriptobfuscator.comAbout - Free Javascript Obfuscator是一个专业的Javascript混淆工具。它将JavaScript源代码转换成混乱和完全不可读的形式,防止它被分析和窃取。
输出代码如下所示:
var _0xe305=["x48x65x6Cx6Cx6Fx20x57x6Fx72x6Cx64x21","x0A","x4Fx4B"
];var a=_0xe305[0];function MsgBox(_0xc87ax3){alert(_0xc87ax3+_0xe305[1]+a);}
;MsgBox(_0xe305[2]);
确保你保留了一份原文的副本:)
标题>