许多安全专家表示,失去对互联网上代码的控制就像将CCB的设计图纸交给强奸犯一样。
Lua是一种广泛应用于游戏开发的计算机语言,方便开发者定制自己需要的功能。 其中风靡全球的《愤怒的小鸟》就是用Lua语言用Wax开发的。 据悉,《梦幻西游》、《奇迹暖暖》、《欢乐消消乐》、《放置无双》、《最强蜗牛》等手游也采用Lua语言编写。
近年来,Lua脚本在游戏行业常年流行,但Lua脚本泄露事件频发,其安全性也引发关注。 不法分子通过开放私服、开放金手指等方式实现游戏代码的商业变现,给游戏开发商造成巨大的经济损失,同时也影响游戏玩家包括账户、物品等虚拟资产的安全。
本文将围绕Lua脚本加密,讨论Lua中三种常见的加密方法,并探讨如何进一步保护Lua代码。
一、背景
“Lua”在法语中是“月亮”的意思,由法国天主教大学于1993年开发。
Lua作为一种精致的解释性语言,简单、轻量、易于维护手游辅助高级源码,并且可以根据自身特点模拟面向对象手游辅助高级源码,因此被嵌入到越来越多的应用中,尤其是游戏中。 发展带来极大便利。 比如Cocos引擎的主流游戏以及U3D游戏中的热更新框架xlua都会使用Lua语言。
同时,由于Lua语言本身的特点,Lua代码本身并不安全。 很多时候攻击者可以获取Lua源代码进行阅读、分析、窃取、篡改等,然后进一步重新打包,从而带来游戏本身。 存在很大的安全隐患。
2.Lua现有的保护
对于这种脚本解释性语言,从代码保护的角度来说,与其自身的表达方式密不可分。 对于Lua来说,目前市面上的手游包中能看到的主要是lua源码