【幾維安全】lua腳本加密,lua代碼加密使用說明


概述

xLua加密工具主要是一款Lua安全編譯器,配置好xLua環境后,用幾維提供的libluajit.a替換對應的默認文件,來實現對Lua文件的加密,加密后的Lua文件只能由幾維提供的lua bytecode解釋器解析,從而避免Lua文件被逆向分析,達到保護Lua核心代碼的目的。

集成

1、獲取xLua

從官方下載對應的xLua版本, 默認是master分支

1)這個步驟是屬於開發環節,請自行下載並部署好【xLua是開源項目,請自行檢測環境變量、Lua和Luajit的版本,以便順利編譯通過】

2)Luajit-2.1.0-beta2以上版本支持64位,幾維編譯器版本的luajit加密方案基於Luajit-2.1.0-beta2

2、Android快速集成加密版靜態庫

1)執行build目錄下的make_android_luajit.sh(根據自己的平台選擇編譯腳本),確保原始的編譯成功

2)編譯成功之后查看luajit源碼目錄下src/libluajit.a文件

3)用幾維提供的libluajit.a進行替換,x86對應x86,armeabi-v7a對應armeabi-v7a

4)修改make_android_luajit.sh文件,編譯armeabi-v7a版本的libxlua.so,如下圖

5)同理修改編譯出x86版本的libxlua.so

6)復制編譯好的libxlua.so替換項目中原來的libxlua.so(替換之前最好先做好備份),推薦先使用源碼測試,然后換成幾維提供的luajit編譯器編譯出二進制bytecode文件進行測試

3、iOS快速集成加密版靜態庫

1)執行make_ios_luajit.sh將原始版本的libxlua.a編譯出來

注意:xlua默認是armv7、armv7s、arm64三種架構,如果使用xcode版本過高,比如9.3.x以后的不再支持armv7 armv7s,那么生成的只會有arm64這種架構

2)同android一樣注釋掉生成libluajit.a的過程如圖

注意:這里區別在於如果需要arm64架構那么需要使用lipo -create arm64/libluajit.a -output libluajit.a,需要armv7和arm64使用lipo -create arm64/libluajit.a armv7/libluajit.a -output libluajit.a

3)再次執行make_ios_luajit.sh生成libxlua.a

4)替換項目中原來的libxlua.a編譯對應平台的bytecode文件,32位對應32位,64位對應64位的,生成項目,使用xcode編譯測試(幾維luajit安全解釋器支持armv7,armv7s,arm64所以支持真機)

友情告知地址,lua腳本加密:https://www.kiwisec.com/product/compiler-lua.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM