综述:
https://research.paradigm.xyz/optimism#the-importance-of-software-reuse-in-optimism
以太坊开发者栈由以下部分组成:
1/ Solidity / Vyper。2种主要的智能合约编程语言,有大型的工具链(如Ethers、Hardhat、dapp、slither)围绕它们而建。 2/ 以太坊虚拟机。迄今为止最流行的区块链虚拟机,其内部结构比任何其他区块链虚拟机都要好理解。 3/ Go-ethereum。占主导地位的以太坊协议实现,占网络节点的75%以上。它经过了广泛的测试和摸索(甚至发现了golang本身的bug!)
Solidity编译器的工作原理是将Solidity转化为Yul,然后转化为EVM指令,最后转化为字节码。
OPR 工作流程及原理:
Fast Withdrawals in Optimistic Rollups- Part 1
Optimistic Virtual Machine 作为其运行时间/状态转换功能--OVM提供了一个沙盒环境,保证了L1和L2之间确定性的智能合约执行。
Optimistic Geth 作为L2客户端,有一个排序器--排序器负责排序并将交易批次附加到主链合约上(接下来讨论)。
Chain Contracts - 一个 ORP 是由一组运行在以太坊主网上的合约组成的。这些合约有助于存储应用于L2状态的所有交易列表,存储相应的建议状态根,以及有助于挑战交易的合约。
OVM_CanonicalTransactionChain(CTC)--它是一个应用于OVM状态的仅有附加的事务日志。排序器将L2事务批处理附加到CTC上。另外,它允许一个账户排队等候一个二级交易,排序器最终必须将其追加到滚动状态中(这个概念对于理解存款流程很重要)。
OVM_StateCommitmentChain(SCC)--它包含一个提议的状态根的列表,提议者断言这是CTC中每个交易的结果。这里的元素与CTC中的交易有1:1的对应关系。
Messenger Contracts — L1 和 L2 之间的通信是由两个特殊的智能合约实现的,称为 "信使"。这些信使合约,OVM_L1CrossDomainMessenger和OVM_L2CrossDomainMessenger预先部署在网络上。
代币桥--可能有这样的情况:用户想把他们的资产从第一层转移到第二层,反之亦然。令牌桥使用户可以跨层移动令牌,这些令牌桥利用信使合同进行L1/L2通信。(L1标准桥,L2标准桥)
生态项目一览: