主页 > imtoken-冷钱包 > 多个智能合约平台的比较

多个智能合约平台的比较

imtoken-冷钱包 2023-11-23 05:09:23

什么是以太坊智能合约_以太坊智能合约最广泛的应用_以太坊智能合约取款

点击上方“统一时代”订阅!

unitimes.io

以太坊智能合约最广泛的应用_以太坊智能合约取款_什么是以太坊智能合约

全球视野,独到见解

Ivy-lang、Plutus、Solidity、Scrypto、Michelson、Hoon、Rust……还有什么?

这么多语言以太坊智能合约最广泛的应用,我什么时候有时间去探索它们呢? 它们中的大多数很少使用,这使得采用它们非常困难。 Solidity 处于领先地位,尽管它不是一种容易上手的语言。 本文将回顾并提供对以下平台的新见解:Ethereum、Hyperledger Fabric、NEM、Stellar、iOlite、Neblio 和 Lisk。

首先,这里是所有现有智能合约平台的概述:

以太坊智能合约取款_什么是以太坊智能合约_以太坊智能合约最广泛的应用

寻找合适的智能合约平台

接下来,我将介绍一些现有的智能合约平台和一些即将推出的平台。 我根据成熟度、灵活性以及它们为我们的生态系统带来的创新程度等维度来选择它们。

以太坊——古老而珍贵

以太坊一直是一个不错的选择。 以太坊是智能合约领域的黄金标准,在其他平台中拥有最多的追随者。 大多数代币使用 ERC-20 代币标准,并在以太坊平台上出售。

但是,该标准存在一些严重缺陷,给行业造成了重大损失。 让我解释。

ERC-20 标准采用两种执行代币交易的方式:

1. transfer():将代币发送到某人的地址。

2. approve() + transferFrom():将代币存入智能合约。

但是,如果您不小心使用 transfer() 将代币发送到智能合约会怎样? 答案是交易会成功,但是接收合约不会承认交易。

例如,如果您将代币发送到去中心化交易合约,交易合约将收到您的代币,但不会将这些代币计入您的交易代币余额。 此外,如果去中心化交易合约没有实现紧急大额提现功能,无论如何也无法取回代币,导致代币永久丢失。 由于这个漏洞,以太坊生态系统损失了数百万美元。

此信息由 ERC223 标准的创建者 Reddit 用户 u/Dexaran(来源文章)提供。 Dexaran 是第一个将上述错误通知以太坊社区的开发人员。 为此,他创建了 ERC223 标准。

大多数开发人员并不知道这个 ERC223 和 ERC77 标准。 现在我对这两个标准做一个简短的比较:

ERC223:这个改进的标准通过让 transfer() 函数在无效转账时抛出错误并取消交易来解决 ERC20 的严重错误,这样就不会丢失资金。 → 关注安全。

ERC777:解决ERC20缺乏交易处理机制等问题。 → 聚焦主流应用。

如您所见,在采用更好、更安全的代币标准方面,社区仍有工作要做。

新经币

可扩展性是 NEM 去中心化应用程序中最关键的一点。 ETH 每秒最多处理 15 笔交易,而 NEM 每秒处理数百笔交易。 NEM 基金会优先考虑安全性和可用性,因此企业家处理其他问题,而不是技术难题。

虽然 NEM 被认为是更快、更安全和更容易的技术,但以太坊为创建自定义 DApps 提供了更广泛的基础,这里的主要区别是 ETH 在区块链上应用其智能合约,而 NEM 使用的是区块链之外的代码。 尽管它可能使 NEM 的去中心化程度降低,但这种方法确实有其优点,例如更安全、更易于更新、执行速度更快以及代码更轻。

Reddit 用户 Nemario 告诉我,合约代码可以随时更新,完全不需要与链进行任何交互,也不会进行反向交易。 这使得 NEM 的去中心化程度有所降低,但多重签名和智能资产等链上安全功能缓解了这一“问题”。

NEM 拥有称为智能资产的自定义数据管理应用程序,您只需点击几下即可通过它创建代币、数据记录、投票系统等。 Ethereum 适用于希望在未来 5-10 年内重建其内部网络的公司,NEM 适用于寻求快速、安全、随时可用的当前解决方案的公司。 看看哪些公司建立在以太坊上并采用 NEM 将会很有趣,这部分的一些来源:

NEM 提供了几个 sdk,你可以在它们下面找到一个传输交易的 NodeJS 片段。

超级账本结构 (HLF)

恒星智能合约(SSC)与以太坊智能合约有很大不同。 它们不是图灵完备的,而是作为多方之间的协议来实现的,通过交易来执行。 下面你可以看到 Stellar 和以太坊之间的比较。 请注意成本和确认时间的巨大差异:在 Stellar 网络上,单笔交易成本仅为 0.0000002 美元!

SSC 可以用 Stellar 社区提供的任何语言(JavaScript、Python、Golang、PHP……)编写。 可以在 PHP 中找到一个示例智能合约。

SSC 表示为使用各种约束连接和执行的事务的组合。 以下是创建 SSC 时可以考虑和实施的约束示例(来自 Stellar 文档):

多重签名 - 授权某个操作需要哪些密钥? 哪些各方需要就特定情况达成一致才能执行这些步骤?

多重签名(Multisignature)是一个需要多个签名来签署源自一个账户的交易的概念。 通过签名权重和阈值,创建签名中的权力表示。

批处理或原子性——哪些操作必须同时发生或失败? 为了迫使它失败或通过,必须发生什么?

批处理是在一个事务中包含多个操作的概念。 原子性意味着给定一系列操作,如果一个操作失败,则事务中的所有操作在提交到网络时都将失败。

顺序——一系列交易应该以什么顺序处理? 约束和依赖性是什么?

序列的概念在 Stellar 网络上由序列号表示。 在事务操作中使用序列号,可以保证在提交替代事务时特定事务不会成功。

时间限制 - 什么时候可以处理交易?

时间范围是对交易有效的时间段的限制。 时间段可以使用时间范围在 SSC 中表示。

什么是以太坊智能合约_以太坊智能合约取款_以太坊智能合约最广泛的应用

平台建设中

我们不能忘记正在开发有前途的智能合约产品的平台。 让我们看看我们未来的选择。

iOlite — 用自然语言开发智能合约

iOlite 是一款专注于大规模采用智能合约技术的产品,它提供了一个易于使用的引擎,可以理解自然语言并编译成智能合约代码。 如果你不想花时间学习,只想开发智能合约,iOlite 是理想的解决方案。

iOlite 基于斯坦福大学的研究。 他们发明了 FAE(Fast Adaptation Engine),能够将自然语言或任何其他需要的编程语言转换成智能合约代码。 FAE 不仅仅是将输入直接转换为代码。 FAE 依赖于能够定义包含语言表达式的结构的贡献者(智能合约)。 此外,这些结构与他们编写的智能合约代码相关联。 这允许引擎浏览上述结构以找到正确的表达式,以便编译所需的智能合约。 每当使用该结构时,贡献者都会获得 iOlite 代币奖励。

如您所见,iOlite 依靠他们的社区使 FAE 取得成功。 FAE 通过机器学习技术帮助社区成员更轻松地学习和采用新结构。

iOlite Labs 目前专注于 Solidity 语言的以太坊智能合约,这种语言需求量很大。

来自 iOlite 团队的 Travis Byrne 解释了哪些语言可以用来创建智能合约。 这意味着不仅程序员(使用 Python、C、JavaScript 等形式化语言)可以立即使用现有技能编写智能合约,即使是没有任何编程知识的普通人也可以轻松开始使用自然语言,例如英语 Conduct智能合约开发。 iOlite 正在消除创建智能合约的现有技术学习界限。

Neblio——商业区块链

Neblio 的目标是通过使用 8 种最常用编程语言的易于使用的 API 将区块链集成到现有业务中,从而为现有业务提供易于使用的区块链。 开发人员,而不是区块链专家,应该能够使用 Neblio 区块链技术。 Neblio 提供了一个 Raspberry Pi 钱包来存放你的硬币。 下载源代码后,只需一个命令即可设置钱包本身。 通过放置代币和运行节点,您可以通过 POW 方式帮助维护钱包。 作为回报,您可以获得所放置代币数量的 10%。

您没有义务日夜玩 Raspberry Pi。 Neblio 总共为您提供 7 天的停机时间。 在此期间,当你的 Raspberry Pi 关闭时,你的硬币仍会赚取利息,但你将无法发现区块(因此无法获得奖励)。 钱包本身消耗的能量很少,这使得持有 Neblio 币成为获得更稳定币价的巨大动力。 本节的来源:Reddit。

您可能会问自己:如何让您的树莓派始终保持更新? 如果您使用以太坊节点执行此操作以太坊智能合约最广泛的应用,则必须连续数小时同步下载新数据。

这要归功于 Neblio 提出的一项名为 quicksync 的很酷的功能,它可以在不到一分钟的时间内同步您的节点。 现在,每天晚上午夜,新版本的 Neblio 区块链都会上传到 Github。 树莓派在首次安装时默认会从Github下载区块链数据,或者在关闭节点几天后解压到Neblio数据目录,然后同步剩余的几个小时。 这将导致近乎即时的同步。 这部分的来源:Reddit。

那么快速同步有多安全? 钱包仍将验证所有交易。 如果有任何错误的交易,它将无法同步到最新的区块。 因此,快速同步下载区块链同样安全。

Lisk——自定义区块链

Lisk 不从事智能合约业务。 Lisk 打算通过虚拟机集成与以太坊等智能合约系统对接。 解释得更清楚一点:Lisk 不是一个智能合约系统,它是一个定制的区块链系统。 Lisk 围绕如何创建简化的用户体验和平台来构建其业务模型,以便为从个人、小型企业到大型银行的任何人轻松实施自定义区块链。

Lisk 在完全独立的侧链上运行每个应用程序,侧链对自己负责。 如果侧链出现故障,责任和责任就完全落在运行侧链的开发人员的肩上。

Lisk 的另一个好处是它的共识算法。 他们使用 DPOS,它比 POS 更快、更安全并且消耗更少的能源。 您可以在此处了解更多信息。

最后一点目前是一个有争议的问题,并且可能是个人偏好的问题:Lisk 正试图利用由数十万 JavaScript 开发人员组成的强大社区,使用 JavaScript 构建整个生态系统。 这使得传统的 Web 应用程序开发人员可以轻松构建与 Lisk 自定义区块链的接口。 他们不需要学习一门新语言,JavaScript 已经过全面测试,但它的问题已得到充分记录(JavaScript 远非完美)。

总结

很难比较所有平台,因为这取决于您的需求。 最好从多个角度来看每个平台的成熟度,包括SDK、构建工具、是否有合适的文档等等,因为这是一个很好的指标。 当你想快速制作智能合约原型时,iOlite 也是一个不错的选择。 在我看来,就低成本和快速的区块链确认时间而言,Stellar 是一个即将到来的强大竞争对手。