Javascript开发的HTML5游戏的知识产权保护

    Javascript开发的HTML5游戏的知识产权保护,其实这里面保护了两个部分,一个是及时注册相关商标和专利,一个是程序的核心算法,核心数据和用户数据的保护。

    本文主要讨论第二个方面,在当前这个时间点,有什么类型的保护方案,以及各个方案的限制。可以说,目前没有一个完美的解决方案,甚至接近完美的方案都没有。

    方案1:代码混淆

    代码混淆的做法是普遍的做法,但是其保护能力偏弱。要想完整的得到整个游戏的逻辑及进行修改,估计是难度很大的,毕竟一个引擎的代码都4-5w行了,再加上游戏的,混淆完,就很难阅读了,再怎么反向、再怎么格式化都很难阅读。但是,号称的无法反向或反向代价大是针对整个工程而言,如果只是想要其中的某一个片段,比如一些核心算法,则代价相对就小很多了,甚至只要抠出原函数,然后直接调用就好了,不管里面的具体实现。山寨产品很容易用这个方式得到他们想要的核心部分。

   总结,代码混淆是不可少的,保护作用有限,无法保护关键点的东西。

 

    方案2:服务器混搭方式

    在游戏的前端只做渲染或者也兼作部分游戏逻辑处理,核心算法和核心数据由服务器计算提供。 这种方式的保护的可靠性是比较高,暴力破解的成本较高,可以有效的解决较多的游戏安全问题。但是采用这种方式的话有几个不足的地方:1)成本高,一般计算量,一般通信量,一个服务器据说可以扛4000个用户左右,如果是页游,有大量的收入来源支撑,则不会是一个问题,如果是一个休闲类型的游戏,则没有这么多的收入来支撑服务器部分的支出。2)设计难度加大,会增加服务器数据同步、客户端通信延迟,通信协议设计等等工作。

    总结,有效保护,成本高难度大,不适合所有项目,只适合有高产出的大型游戏。 

 

    方案3:浏览器的保护机制(native code)

    这个方式其实也有点类似于方案2的服务器混搭方式,可以选择使用native code构建一个本地服务器,也可以选择直接做算法保护。这个算是当前方案比较合适的,但是悲催的是,目前就只有chrome提供这种方式,其他浏览器还没支持。

    总结:局部可用,不考虑跨浏览器的话,是优选方案,但是chrome的用户量。。。。。

 

    HTML5在游戏行业的推广,很大程度上会受代码安全的问题的影响,目前我就处于这样的阶段。客观上在当前环境下,没有一个完美的解决方案,浏览器特殊的环境决定了这个将是一个长期的话题,要能完美的解决这个问题,估计最后的突破口还是在浏览器的本身上面。

 

     转载请注明:SeanLin,cocos2d-html5和本文链接Javascript开发的HTML5游戏的知识产权保护

     

posted on 2012-04-16 17:08  SeanLin  阅读(2280)  评论(0编辑  收藏  举报

导航