HTT:?一文了解以太坊上的新交易类型

本文来自?Mycrypto,原文作者:MaartenZuidhoorn,由Odaily星球日报译者Katie辜编译。

以太坊上存在着不同的交易类型,比如,将ETH发送到某个地址,部署合约等等。在柏林网络升级之前,以太坊上就有四种不同的交易类型:

?带接收地址的常规交易,数据域等;

?没有目的地址的合约部署交易,数据域用于合约代码;

?带v值签名方式的交易,但不包括链ID;

?带v值签名方式的交易,但包括链ID。

不同的以太坊客户端、库和其它工具会分析每次交易,理解每个交易类型。虽然只有四种交易类型,但也有很多复杂性和情况需要处理。技术人员应该检查交易中所有的域,弄清楚是属于什么交易类型。这对于新型交易来说是关键,比如元交易、多重签名交易等pre-EIP-2718交易类型。

以太坊现在有了一个新的交易标准,这是由开发人员迈卡·佐尔图在EIP-2718中定义和创建的。类型化交易信封形成了以太坊上一些和其它尚未开发的功能的基础。

加拿大监管部门关于是否放弃调查Binance的听证会将于6月2日举行:金色财经报道,根据提交给法庭的一份文件,加拿大安大略省证券委员会上个月向Binance发出调查令,看它是否试图规避证券法监管。?Binance几天后宣布,由于与稳定币和投资者限制有关的新指南,它将离开加拿大。Binance随后要求证监会撤销调查,声称其范围极其广泛且在没有任何实际事实依据的情况下发布。?在5月18日的文件中,Binance 补充说,调查令没有合法目的,并且该交易所已经退出安大略省和加拿大。?

根据法庭的文件,关于是否放弃调查的听证会将于6月2日举行。[2023/6/2 11:53:55]

本文我们将详细介绍柏林升级中包含的一些标准,以及其它可能未来可能包括的内容。

标准交易信封

以太坊有一个交易格式。每个交易包括一个随机数(nonce)、gas价格、gas极限、目的地址、value、数据、v、r、和s。这些字段是RLP编码的,如下所示:

美官员:拜登没有向普京做出过关于乌克兰能否加入北约的保证或承诺:当地时间2月21日,美国政府高级官员称,美国总统拜登没有私下向俄罗斯总统普京做出过关于乌克兰能否加入北约的保证或承诺。美国有线电视新闻网(CNN)报道称,美国对北约成员资格的看法没有任何变化,即仍然致力于为防务联盟采取门户开放政策。 (金十)[2022/2/22 10:06:51]

RLP()

EIP-2718为类型化交易定义了一个新的广泛的信封。在新标准中,交易如下所示:

TransactionType||TransactionPayload

其中,这些字段被定义为:

?交易类型:介于0和0x7f之间的数字,总共有128个可能的交易类型。

?交易有效负载:由交易类型定义的任意字节数组。

这些字段连接组合形成类型化交易。该标准没有描述交易有效负载的格式;它可以是任何任意的字节系列,由新的交易类型定义的编码器进行编码。选择简单的字节连接是因为读取一个字节数组的第一个字节,而不需要任何库或工具:你不需要一个RLP或SSZ解析器来检查交易类型。

Yearn.finance社区发起关于增发1000枚YFI用于奖励开发人员的提案:据Yearn.finance官方治理网站,Yearn.finance社区发起提案,计划增发1000枚YFI用于奖励开发人员。目前,在225名投票参与者中,有66%的人反对此提案。据悉,YFI的发行总量恒定为3万枚。此前也有几次增发YFI的提案,均未通过。[2021/1/15 16:12:53]

这种新方法使新的EIPs可以引入交易类型,而不在现有交易格式中引入不必要的复杂性,而且使用不同的以太坊工具来区分不同的交易变得更容易。

增加的复杂性的一个很好的例子是EIP-155,它通过在交易中使用链ID来引入了回复保护。向交易参数中添加一个新字段将会破坏向后兼容性,所以链ID被编码到交易签名(v)的恢复参数(v)中。使用EIP-2718,我们可以简单地创建一个新的交易类型,以维护向后兼容性。

向后兼容性和原始交易

GavinWood:平行链1.0代码或将在两周后上线:10月26日,在Web3基金会、万向区块链、新链空间联合主办的Web3.0训练营项DemoDay上,波卡创始人GavinWood透露团队正在加紧平行链的开发,并希望平行链1.0代码能够在两周后上线。同时他也表示,希望使用基于这个代码的Rococo测试网可以很快发布。[2020/10/26]

EIP-2718的一个大主题是向后兼容性。EIP-2718采用完全向后兼容模式,这意味着任何现有的工具、库、钱包和交易都可以使用它,但他们将无法使用EIP-2718提供的新“功能”以及使用它的标准。旧的交易格式对于以太坊网络上的新交易仍然有效。

新交易类型的最大数目为0x7f,被选为维持这些旧交易的向后兼容性。RLP编码的交易总是以一个为l的字节开头,参数大于或等于0xc0,因此类型化交易永远不会与旧交易发生冲突,并且只需检查第一个字节,就可以区分类型化交易和旧交易。

EIP-2718本身不定义任何交易类型,但有一些建议使用新标准:

?EIP-1559:ETH1.0链市场手续费变化;

?EIP-2711:赞助、到期和批处理交易,也由开发人员迈卡·佐尔图创建,这也是EIP-2718被创建的原因;

?EIP-2930:可选的访问列表。

其中一些标准将在下面进一步详细说明。

为什么需要新的交易类型?

新的交易类型可以支持功能的集成,否则将通过Solidity合约或第三方解决方案进行处理。以即将到期的交易为例。在现有的解决方案中,你可以将资金发送到一个Solidity合约,签署一项交易,并将该交易发送到一个专门的节点,以便该交易具有额外的参数,如到期日。然后节点处理发送交易,并确保它在设置的到期日期之前执行,否则交易不会被广播。一些dApps和合约(例如Uniswap)内置了这个功能,但对于大多数交易来说,这是不容易实现的。

EIP-2711将此功能本地化添加到以太坊网络中,同时保持与原始类型交易的向后兼容性(如上一节所述)。它不需要智能合约或专门的节点来运行。然而,目前EIP-2711仍是一个草案,不清楚该EIP是否会很快加入以太坊网络。也可能被分割成多个更小的EIPs(如EIP-3074)。

EIP-1559的新交易格式

在EIP-1559中,gas的工作方式发生了显著的变化。不再向矿工支付全部gas,而是燃烧一部分gas。我们不详细介绍EIP-1559的所有变化,但它确实指定了一种新的交易格式:

0x02||RLP()

最显著的变化是:

?Gas价格已被“每个gas最高优先费用”和“每个gas最高费用”所替代。

?链ID是单独编码,而不是包含在签名v值中。这本质上用一个更简单的执行取代了EIP-155。

?签名v值现在是一个简单的奇偶校验位(“签名Y奇偶校验”),它是0或1,这取决于应该使用椭圆曲线上的哪个点。

EIP-1559还提供了一种基于EIP-2930来指定访问列表的方法。这可以降低交易的gas成本。

由于EIP-1559对gas费用的工作方式发生了重大变化,因此它与原始交易并不直接兼容。为了保持向后兼容性,EIP-1559描述了一种将原始交易升级到EIP-1559兼容的交易的方法。它通过使用原始gas价格作为每个gas的最高优先费用和最高gas费用来实现这一点。

原始元交易和分批交易

元交易已经出现了几年,但到目前为止仍一直需要智能合约。与即将到期的交易一样,这需要将ETH发送到智能合约,而该合约必须专门支持元交易。

EIP-2711使得原生元交易(称为赞助交易)和批交易成为可能,而不需要智能合约。一种新的交易格式被定义,交易类型为0x02(尽管这可能会发生变化,因为EIP-1559使用相同的交易类型)。交易如下:

0x02||RLP()

基本上,EIP-2711包括一个(可选的)有效载荷和gas支付人的签名。该账户将用于支付交易中的gas费用。例如,可以从一个地址发送ERC-20代币,而不需要该地址持有任何ETH。发送方有效载荷、签名等是基于交易子类型定义的。例如,对于交易类型为1的交易,发送方有效载荷被定义为:

,nonce,ChainId,ValidUntil,gasLimit,gasPrice]

子交易被定义为:发送地址、值、数据。这使得可以在单个交易中指定多个地址、值和数据。例如,这可以用于在单个交易中调用ERC-20的批准和转移。

有关EIP-2711中可用的所有交易子类型的详细说明,建议读者阅读官方文件。

总结

类型化交易为以太坊网络带来了很多可能性。它们可以在不给以太坊客户端、库和其它可用工具增加大量复杂性的情况下创建。

目前,新的交易类型还没有被广泛使用,因为EIP最近才被包含在网络中,但有一些激动人心的EIP正在开发中,比如EIP-2711,它增加了过期交易、批处理交易和赞助交易(又称元交易)等特性。现在可以在以太坊上定义新的交易类型,因此可以轻松创建其它EIP。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

LTCNAME:ETH突破2700美元

据欧易OKEx数据显示,ETH上涨突破2700美元,现报2702美元,今日跌幅1.33%。价格振幅较大,请控制好风险.

[0:0ms0-4:184ms