加密gem中的Ruby代码

时间:2016-11-30 14:58:22

标签: ruby-on-rails ruby ruby-on-rails-4 rubygems

我想为客户提供一颗宝石。我不希望他们知道我的代码,因此我想加密或混淆.gem文件中的代码并将其发送给他们以集成到他们的ruby项目中。

任何参考?

1 个答案:

答案 0 :(得分:0)

Ruby没有真正的混淆解决方案,因为它被解释。您可以使应用程序更加困难进行逆向工程的最佳工作是AllInOneRuby,但它不会提供真正的混淆。你可以打开它并相对容易地获得你想要的东西。

如果混淆是超级关键,我会加密所有脚本,然后创建一个包装Ruby C运行时的应用程序,将脚本解密到内存缓冲区,然后调用它。然后,使用Themida之类的内容打包所有内容,以阻止人们尝试附加调试程序(或者,即使他们这样做,也要了解程序集,它们大部分都是db [byte]包含他们的VM的字节码而不是实际的控制流指令,例如jmp mov等。在这一点上,你应该阻止大多数缺乏经验的逆向工程师的努力,但在一天结束时,它仍然是默默无闻的安全。