我可以使用 RDS 格式来保护我的脚本代码吗

Posted

技术标签:

【中文标题】我可以使用 RDS 格式来保护我的脚本代码吗【英文标题】:Can I use RDS format to protect my script's code 【发布时间】:2017-01-22 12:16:06 【问题描述】:

我想保护我的脚本代码不被读取或反向工程。如果我使用 source 函数从另一个 R 文件调用我的脚本,以 RDS 格式存储的代码是否会保持受保护或有什么办法像通常的 r 代码一样阅读它?

【问题讨论】:

你不觉得这与开源的整体精神相矛盾吗? Imo,就像您从这个社区中的所有人那里获利一样,如果其他人可以从您的代码中学习,那可能会很好。 @lok​​i 开源的精神是你可以做任何事情,包括如果你想尝试隐藏你的代码(只要你不通过分发任何违反 GPL 的东西来破坏许可证)或其他许可)。 【参考方案1】:

它可以简单地阅读。只需使用以下内容阅读它:

code = readRDS("mysecretcode.rds")

一切都在code

如果您希望有人运行您的 R 代码,那么在某些时候必须对其进行去混淆或解密,以便 R 解释器能够理解它。攻击者可以在此时获取代码。

如果您真的不希望任何人看到您的代码,请将其保存在服务器上,并且只允许人们通过网络 API 调用它。

【讨论】:

谢谢@Spaceman,你有什么推荐的资源来学习R的网络API吗?

以上是关于我可以使用 RDS 格式来保护我的脚本代码吗的主要内容,如果未能解决你的问题,请参考以下文章

我们可以使用代码优先迁移运行 SQL 脚本吗?

网站可以知道我是不是正在运行用户脚本吗?

如何保护 Google 电子表格中的 Apps 脚本代码?

使用 shell 脚本格式化 Java 代码

AWS RDS 连接字符串

AWS 安全组难题