微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在MS-Windows下加密R脚本

我有一堆R脚本,我在一台 Windows机器上运行,并希望确保代码未被读取的人不被阅读.在 Linux的盒子上,我可以把R代码包裹在一个bash脚本#!并加密(甚至是有限的生命)可执行的shell脚本.在Windows下,我有什么选择在类似的行中做某事?
我的回答有点迟了,但我相信这是一个很好的问题.不幸的是,我不相信现在有一个解决方案,至少是一个容易的解决方案.

困难是常见的,因为对于大多数解释型语言(包括R),通常可以打开正在运行的所有命令的日志记录和检查.这可以否定许多技巧来混淆代码.

对于那些喜欢认为代码开放的人来说,好的,应该知道,混淆代码的常见原因是,如果正在咨询雇佣多个供应商的客户端.客户端从供应商A采集脚本并不常见,并要求供应商B为什么它不能与其系统一起使用. (这可能是由一个低级别的IT人员完成,而不是负责NDA合同的人员.)如果A& B是竞争对手,A的代码刚被交给B.当脚本==严重的程序时,严重的代码已被放弃.

我所看到的方式是:

>调用编译语言,并使用标准的保护措施.
>在不同的服务器上托管可执行文件,并使用对服务器的调用执行计算. (在R中,有多个服务器端选项.)
>在语言中使用编译(预处理/字节码)代码.

代码可能广泛分发时,选项2实际上更容易和更好,而不仅仅是出于IP原因.一个主要优点是它可以让您升级代码,而无需经历站点范围的发布过程.如果需要新的库,没有问题 – 更新服务器.

选项3在Matlab中用.p文件完成,可以在Windows上使用py2exe进行Python.在R中,新的字节码编译可能是类似的,但是我不足以解决R语境中的.Rc文件和Matlab上下文中的.p文件间的差异.有关编译器的更多信息,请参阅:http://www.inside-r.org/r-doc/compiler/compile

在服务器上托管计算是非常适合使用不熟练的用户,因为响应错误功能请求更容易迭代.知识产权保护只是一个好处.

原文地址:https://www.jb51.cc/windows/371205.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐