【问题标题】:Protect Ruby code保护 Ruby 代码
【发布时间】:2011-03-21 12:00:27
【问题描述】:

我正在编写 Ruby 应用程序,我想使用一些绝密算法。那么如何最好地保护它们免受未经授权的访问。

我有两个想法:

  • 用 C 语言编写它们并使用 FFI 加载(我想知道这是否可能)
  • 编组 ruby​​ 代码,对其进行编码,然后存储在文件中

也许有人知道更好的想法,或者可以告诉我这些想法是愚蠢或错误的。感谢您的建议。

【问题讨论】:

  • 不分发源代码?还是疯了?
  • 您的意思是保护它免受您的网络托管公司的侵害吗?
  • 绝密代码?凉爽的。我看过那部电影。如果您不信任您的客户,并且无法在合同中加入使他们保持一致的法律条款,那么请不要将软件出售给他们。
  • 它将是托管解决方案,但我想保护它以防有人闯入。服务器将在我们公司。

标签: ruby marshalling ffi source-code-protection


【解决方案1】:

您无法通过将您正在编写的算法更改为 C 来保护它。也许您可以加密源文件。试试truecrypt

编辑

经过一番谷歌搜索,我发现了这些与 ruby​​ 代码混淆相关的文章

  1. protecting-your-ruby-source-code-for-end-user-applications/
  2. Ruby Encoder Protects Source Code for US Department of Defense Project
  3. http://rubyencoder.com/

【讨论】:

【解决方案2】:

您可以尝试一些代码混淆技术。例如RubyEncoder 将 Ruby 源代码编译为加密的字节码格式。这是与您的问题相关的另一个线程Ruby obfuscator

【讨论】:

    【解决方案3】:

    如果您愿意制作自己的解决方案而不是购买并且已经制作了类似RubyEncoder 的解决方案,如此处其他答案所述,有一个article 试图描述一种保护您的源代码的方法,并且您还可以实施所有您认为可行的保护措施,因为您将全部手动完成:

    http://mountcastle.posterous.com/protecting-your-ruby-source-code-for-end-user

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-31
    相关资源
    最近更新 更多