首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >哪些最佳实践可以防止您的ethereum智能合同代码被复制和重用?

哪些最佳实践可以防止您的ethereum智能合同代码被复制和重用?
EN

Ethereum用户
提问于 2017-08-14 21:18:22
回答 2查看 2.6K关注 0票数 8

我刚开始聪明的合同开发。我构建了几个示例项目,并将它们部署到我的专用网络中。因此,现在我正在研究智能合同安全方面的最佳做法,以及保护我的知识产权不受那些想窃取它并将其用于自己目的的人的影响。

据我所读,智能契约字节码在区块链中是可见的,但据推测,不可能将这些字节码转换为坚实的代码。即使是这样,是否仍然需要从块链中提取字节码,复制它们并将其用于您自己的目的?

请给我一些最佳做法,在处理智能合同在安全和保护我的知识产权。

EN

回答 2

Ethereum用户

回答已采纳

发布于 2017-08-15 02:09:45

抱歉让你失望了..。

无法从字节码中恢复原始代码,因为信息在编译过程中丢失。但是,如果字节码是可检索的,则始终可以进行反汇编。由于契约的代码必须由所有完整节点和矿工执行,所以字节代码必须随时可供这些方使用。实际上,由于任何人都可以是节点,这意味着每个人都可以获得字节码。作为一名前程序集程序员,我将断言在这种情况下不可能完全保护您的IP。如果它在经济上是有益的,或者只是简单有趣的,那么它很可能会被反向设计。

不幸的是,我无法提供最佳实践;法律途径可能是您的最佳选择(但不是专利或版权;在这里并不特别有用)。充其量,我认为您可以使用一些反反汇编器技术,但这将增加执行您的合同的成本。作为一个个人从我所拥有的软件中删除反盗版代码以加速它的人,我会要求你尝试一些其他的方法来使你的业务(我想)更好地适应逆向工程。

考虑到即使使用时钟倾斜检测、指令定时检查、基于硬件的保护、加密指令,以及测试物理硬件只会减慢最佳破解速度的检查,在构建更好的产品/业务方面,几乎可以肯定的是更好地利用您的时间/精力,而不是试图在EVM上抵御这种情况(EVM是一个比真正的计算机简单得多的系统,因此由于可以在字节码中使用的东西减少了,所以更容易失败)。如果您必须问这个关于最佳实践的问题,那么几乎可以肯定的是,有一些人(更不用说作为一个团队)能够打破您的混淆工作,而不是您能够实现混淆。

票数 12
EN

Ethereum用户

发布于 2017-08-15 05:02:00

我有时会就智能合同的开发、部署、安全等问题向人们咨询。我告诉我的所有客户,如果智能合同不是完全开放的,他们就不应该与它交互。

我们不想训练人们与代码交互,如果代码不是开源的话,它可以用你的钱做任何它想做的事情。

您的业务模型应该包括完全开放、可靠的源代码。如果没有,我想(我也希望)你的收信人很少。

票数 5
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/24361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档