2011-03-21 82 views
1

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

我有两个想法:

  • 写他们C和负载使用FFI在(我不知道是否有可能这样)
  • 元帅Ruby代码,编码,然后在文件存储

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

+0

不要分发源代码?或者那是疯狂的? – zxt 2011-03-21 12:19:55

+1

你的意思是保护它免受你的虚拟主机公司的侵害吗? – Swanand 2011-03-21 12:39:35

+2

绝密密码?凉。我看过那部电影。如果您不信任您的客户,并且无法在您的合同中加入合法的法律法规,那么请勿将软件出售给他们。 – 2011-03-21 13:28:08

回答

6

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

编辑

一些google搜索后,我发现这些文章涉及到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/
+0

没有冒犯,但这种回应是如此普遍。它提供了什么价值? – Geo 2011-03-21 12:10:46

+1

@Geo,我已经回答了我所知道的...这可能对他有帮助.. – RameshVel 2011-03-21 12:12:21

+2

是的,这很有帮助。感谢这个回应,我找到了我的解决方案(现在)。 http://ruby2cext.rubyforge.org/ – dreake 2011-03-24 23:12:41

0

您可以尝试一些代码混淆技术。例如RubyEncoder将Ruby源代码编译成加密的字节码格式。这里是如果你愿意手艺自己的解决方案,而不是购买,并已经取得一个像RubyEncoder,关系到你的问题Ruby obfuscator

0

在这里其他的答案,说另一个线程,有一个article试图描述的方法保护您的源代码,并且还可以实现所有类型的保护你认为是可行的,因为你要全部由手工来做:

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

+0

404现在,旧的存档:http://web.archive.org/web/20130520100956/http://mountcastle.posterous.com/protecting-your-ruby-source-code-for-end-user – Kokizzu 2013-09-18 02:03:37