编译Lua或Python脚本文件

3
我将把我的业务代码分成脚本语言,可以是Lua或Python。但我担心我的脚本文件会被他人查看,因为脚本文件不需要编译,所以是开放的,任何人都可以看到它。 那么,我该如何隐藏我的代码呢?我认为如果我使用Python,它会被编译成.pyo文件,但是Lua更适合我。
3个回答

5
你可以使用 luac 编译 Lua 脚本:
luac -s -o yourscript.luc yourscript.lua

使用标志-s也会删除调试信息,因此使其更小一些。

3
当然有反编译器。例如,可以查看LuaDec51(http://luadec51.luaforge.net/)。 - lhf
1
请注意,更常见的扩展名是.luac,而不是.luc - Alexander Gladysh
@Alexander 谢谢,出于方便我一直在使用 '.luc' ... 哈哈。 - hiobs

1

你不会轻易地隐藏这个。你可以实时加密和解密。问题是人们可以查看你的进程内存,并清晰地看到代码。如果你想防止别人更改lua,你可以创建一个哈希值,每次运行时都对文本文件进行检查。


1
(针对Lua)
取决于需要多安全。为了防止愚蠢的编辑,您可以更改扩展名,并配置路径以在任何情况下识别它。
为了防止知道如何更改扩展名的人,您可以使用luac编译的文件。要解密它,您必须付出相当大的努力。
但要真正安全,我想唯一的方法是加密/签名代码,并可能修改核心,使其仅运行签名检查正确或可解密的文件。

如何加密和签名脚本代码? - suyuti
我不知道。你必须寻找现有的库,或者自己编写代码。 - jpjacobs

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接