Why Open-source Matters | Cardano Explorer (cexplorer.io)
区块链项目的源代码必须是开源的。 这意味着它是开放的并向所有人公开。 人们可以看到协议是如何工作的,并确保没有严重的错误,甚至没有后门。 Cardano 社区曾经(并且仍然)存在关于 DeFi 项目是否也应该开源的争论。 我们想一想。
透明度是权力下放的原则之一
去中心化基于这样的假设:没有第三方保留对用户资产的控制权。 方法是人们应该信任代码,而不是人。 信任别人被认为是一种风险。
这就是 Cardano 开源的原因,IOG 团队的所有学术工作都是公开的,并且没有任何专利。 任何人都可以使用 IOG 生产的任何东西。 可以获取协议的源代码并运行一个与卡尔达诺几乎相同的项目。
在 Polkadot 协议中,您会发现修改后的 Ouroboros PoS。 以太坊团队对一次性签名系统感到兴奋。 IOG 团队使用 Parity 的 Substrate 创建了合作伙伴链框架。
开源加速了加密行业的发展,因为团队可以使用其他项目的工作成果。
去中心化和项目的开源性质非常接近。 区块链是开放的(每个人都可以使用它而无需第三方许可)、透明的(所有交易都可以在账本中追踪)、用户主要信任源代码。 没有必要相信中间人。
该团队对区块链网络的控制(应该)有限,因为大多数运行完整节点的人必须同意源代码的更改。
构建应用程序的团队是否应该像构建区块链的团队一样进行开发? 这是一个合乎逻辑的期望。
如果团队保留对源代码的控制权并且不向公众开放,那么它就成为用户必须信任的中介。 这可以被视为违反权力下放原则。
如果应用程序的源代码(智能合约、脚本等)不公开,则该项目是不透明的。 用户没有机会信任代码,因此他们必须信任团队。
批评者可能会说这类似于信任金融机构或银行。 尽管可以信任卡尔达诺协议,但不可能对闭源应用程序的操作进行相同的控制。
开源应用程序的优点
区块链是一个信任机器。 应用程序也是如此。 或者更确切地说,用户期望它。
去中心化的目标是点对点(P2P)交互。 有必要确保彼此不认识和/或互不信任的参与者之间的信任。
卡尔达诺协议通过交易确保 P2P 交互。 这些交易是无条件的。
一旦需要更复杂的条件交互,就必须使用智能合约。 DEX、借贷平台、NFT 市场和其他服务代表了用户之间更复杂的交互。
每个 DeFi 应用的核心都是一个或多个确保用户之间交互的智能合约。
智能合约可以被视为参与者之间关于将发生什么以及在什么条件下发生的协议。 在现实世界中,参与者将阅读并签署合同。 如果参与者之间存在分歧,法律体系将确保一切按照合同中的规定进行。
因此,智能合约是双方都必须同意的协议。 但你要如何同意一份无法阅读的合同呢?
他们必须相信团队应用程序将按照承诺运行,而不是让参与者阅读合同。
参与者之间的互动是通过承诺来保证的,即对团队的信任。
Plutus 脚本通常会锁定资产并仅在满足定义的条件时才释放它们。 例如,只有将 500 个 Y 代币发送到 X 地址,才能释放 1000 个 ADA。
用户有权知道只有他们才能取消操作,并且只有在满足明确定义的条件后才会发生交互。 不得存在其他可能允许对资产执行意外操作的隐藏条件。
如果脚本的源代码不公开且无法检查,则可能存在这种隐藏情况。
透明度是开源项目的一大优势。 用户可以预览他们想要承诺的协议。 如果自己技术不够,其他人也可以做,他们可以指出问题。
即使任何源代码经过审计,其中也总是可能隐藏着错误和漏洞。 如果代码是开源的,世界各地的专家都可以查看它并发现审计遗漏的内容。
开源项目可以被认为更安全。
为什么团队不愿意公开智能合约的源代码?
原因可能有很多团队不公开智能合约和脚本的源代码。 有时只发布申请的某些部分。
最大的原因之一是竞争环境。 团队在应用程序开发上投入金钱、时间和精力,他们不希望自己的工作被其他人轻松、免费地使用。 这是完全合乎逻辑且可以理解的。
在卡尔达诺上开发应用程序可能需要十几个人的团队花费一年多的时间。 他们构建应用程序的期望是应用程序会成功并且人们会支付使用费。 初期投资将得到偿还,项目将实现盈利。
如果竞争团队获取源代码并制作仅在名称和营销方面不同的相同应用程序,则这种期望可能无法实现。 竞争团队可以在营销方面投入更多,但矛盾的是,它比构建应用程序的团队更成功。
去中心化原则与实际业务发生冲突。 球队陷入了尴尬的境地,必须决定走哪条路。
一些用户坚持开源,并要求将其作为使用应用程序的必要条件。 然而,一些用户对应用程序的其他方面(用户体验、费用等)感兴趣,并且愿意信任该团队。
很难估计哪一个用户群体更大。 在特定情况下,团队可能很难估计开放源代码或保持不透明是否更有利。
当开发获得回报并且满意的用户数量足够多时,一些团队可能会决定稍后开源。
无论源代码是否开源,团队沟通始终很重要。 然而,如果源代码被关闭并且团队的行为可疑,那就是一个危险信号。
结论
应用的成功与否始终取决于用户。 他们应该充分了解自己使用的内容和信任的内容。 我可以想象,即使源代码是封闭的,一个制作精良的应用程序和一个透明的团队也可以在商业上取得成功。
我相信,如果社区坚持去中心化原则,加密行业就有更好的成功机会。 在我看来,开源项目应该受到社区的青睐。 另一方面,每个团队都有权决定在什么条件下在卡尔达诺上构建。 让用户选择信任级别。