我想出售 Go 应用程序。我将向我的客户提供序列号。有没有办法让破解app复杂一点?
我说破解C app很复杂,破解Java app很容易。有没有工具可以让 Go 应用破解工作和破解 C 应用一样难?或一些教程?至少我可以做一些事情来保护我的项目。我不问超重保护。
最佳答案
一旦你有了二进制文件本身,混淆是相当困难的。人们之前曾尝试从 Go 二进制文件中去除符号,但这通常会导致不稳定和不可预测的行为,因为某些反射操作需要符号。
虽然您不一定会混淆您静态链接的库,但您当然可以通过在编译之前将变量、类型和函数名称更改为无意义的名称来混淆您的/own/代码。如果您想更进一步,您可以尝试获取您正在使用的库的源代码(标准库的源代码可用并且包含在大多数 Go 安装中),并将此混淆应用于库源代码也是如此。
至于编译后的二进制修改,我之前说过,最好还是远离它。
关于go - 如何保护(混淆)Go 二进制文件不被破解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20927250/