推荐平台 链接 平台介绍
币安网 注册链接 币安是全球领先的区块链生态系统,推出了一系列产品,其中包括最大的加密货币交易平台。我们的使命是在未来成为全球性加密货币基础架构供应商。
欧易OKX 注册链接 欧易是全球著名的数字资产交易平台之一,主要面向全球用户提供比特币、莱特币、以太币等数字资产的币币和衍生品交易服务。
HTX火币 注册链接 火币全球专业站,是火币集团旗下服务于全球专业交易用户的创新数字资产国际站,致力于发现优质的创新数字资产投资机会。

文/OP Stack;译/金色财经xiaozou

2023年2月23日,Coinbase宣布推出基于OP Stack的Base测试网。同时,Optimism Collective(管理Optimism的DAO)宣布将升级为Optimism超级链。

但不管是Base测试网,还是Optimism超级链,都是基于OP Stack。那么OP Stack和以太坊主网有哪些差别呢?

目前的OP Stack版本为Bedrock,OP Stack官网文档详述了Bedrock和以太坊主网之间的差异。金色财经xiaozou翻译了本文档:

值得注意的是,Optimism和以太坊的行为间存在各种微小的差异。当你在Optimism或OP Stack代码库上建设应用程序时,你应该对这些差异有所了解。

Opcode (操作码)差异

fIIcmPIBtQW7ISAspTieKEPR5oBLyuoystKBwX0a.png

`tx.origin == msg.sender`

在以太坊L1上,只有当智能合约直接从外部帐户(EOA)调用时,tx.origin才等于msg.sender。然而,在Optimism上,tx.origin是Optimism上的origin,也可能是一个EOA。然而,对于来自L1的消息,来自L1上的智能合约的消息有可能出现在L2上,这时tx.origin == msg.origin。这不太可能产生明显的差异,因为L1智能合约不能直接操纵L2状态。但是,也可能存在我们没有考虑到的边缘情况。

获取 L1 信息

如果你需要最新L1块的等效信息,你可以从L1Block合约中获得。该预部署合约是地址0x42000000000000000000000000000000000000000015。你可以使用getter函数获取这些参数:

  • number:L2已知的最新L1块号。

  • timestamp:最新L1块的时间戳。

  • basefee:最新L1块的基本费用。

  • hash:最新L1块的哈希值。

  • sequenceNumber:epoch内L2块的数量(当有新的L1块时,epoch随之变化)。

Address Aliasing (地址别名)

凭借CREATE操作码的behavior,用户可以在L1和L2上创建一个共享相同地址但具有不同字节码的合约。这可能会破坏信任假设,因为一个合约可能是可信的,而另一个合约可能是不可信的(见下文)。为了避免这个问题,L1和L2之间ORIGIN和CALLER操作码(tx.origin和msg.sender)的behavior略有不同。

tx.origin的值确定如下:

a2nUP2BDa7ZvlI9xmrRSDWMnSPeYHFX4biVBfw8j.png

顶级(被调用的第一个合约)msg.sender值总是等于tx.origin。因此,如果tx.origin值受到上面定义的规则的影响,则msg.sender的顶级值也将受到影响。

注意,一般情况下,tx.origin不应该用于身份认证。但是,这与地址别名是不同的问题,因为地址别名也会影响msg.sender。

为什么地址别名是个问题?

两个相同的源地址(L1合约和L2合约)的问题是,我们是基于地址扩展信任。有可能我们想要信任其中一个合约,而不是另一个。

(1)Helena Hacker分叉Uniswap创建了她自己的交易所(在L2上),称为Hackswap。

注意:在Uniswap上实际上有多个合约,所以这个说明是个简化处理。

(2)Helena Hacker为Hackswap提供流动性,看起来可提供有利可图的套利机会。比如你可以花1 DAI买入1.1 USDT。这两种币的价值都是1美元。

(3)Nimrod Naive知道,如果一件事看起来好得令人难以置信,那么它很可能就是假的。但是,他检查了Hackswap合约的字节码,验证后确定其与Uniswap完全相同。他认为这意味着可以信任该合约的行为与Uniswap完全一致。

(4)Nimrod批准了Hackswap合约的1000 DAI交易。Nimrod希望在Hackswap上调用swap函数,并收到近1100 USDT。

(5)在Nimrod的swap交易被发送到区块链之前,Helena Hacker从与Hackswap地址相同的L1合约发送了一笔交易。这笔交易将1000 DAI从Nimrod的地址转移到Helena Hacker的地址。如果这个交易来自L2上的Hackswap相同的地址,它将能够转移该1000 DAI,因为Nimrod在上一步已经批准了Hackswap的代币交换。

尽管Nimrod很天真,但他受到了保护,因为Optimism修改了交易的tx.origin(也是初始的msg.sender)。这笔交易来自一个不同的地址,一个没有被批准的地址。

注意: 在不同的链上,创建两个相同地址的不同合约很容易。但几乎不可能创建两个相同指定数额的不同合约,所以Helena Hacker不能这么做。

区块

L1以太坊和Optimism Bedrock之间产生区块的方式有几点不同之处。

F2eX7BgTXwxFwF3gFCOzU1upDPEBNwVuhqtKmNe5.png

(1) 这是理想状态。如果遗漏了任何块,则可能是整数倍数,如24秒、36秒等。

注意: L1以太坊参数值取自ethereum.org。Optimism Bedrock值取自Optimism参数。

网络规范

JSON-RPC 差异

OP Stack代码库使用与以太坊相同的JSON-RPC API。引入了一些额外的OP Stack特定的方法。

是否支持 Pre-EIP-155

Pre-EIP-155交易没有链ID,这意味着一个以太坊区块链上的交易可以在其他以太坊区块链上重播。这是一个安全风险,因此OP Stack默认不支持Pre-EIP-155交易。

交易成本

默认情况下,OP Stack链上的交易成本包括L2执行费用和L1数据费用。

推荐平台 链接 平台介绍
Gate芝麻开门 平台介绍 Gate.io芝麻开门创立于2013年,是全球真实交易量TOP10的加密货币交易平台,向全球数千万用户提供安全可靠、真实透明的数字资产交易服务。
Bitget 注册链接 Bitget的背后是一群区块链技术的早期接受者,也是区块链未来发展的信仰者,一直致力于提供安全、一站式的交易解决方案,帮助用户更聪明地交易。
Bybit 注册链接 Bybit通过数字资产与传统金融的结合,引领数字资产的生态发展。提供一流的流动性,致力于打造业内最安全、公平、高效及人性化的交易服务平台。
派网 注册链接 派网提供多样化的量化交易机器人,用户可依照自身交易需求和策略选择最适合的机器人。 同时派网也提供合约交易与合约网格机器人,给予更方便的合约交易体验。