From 9e6309aa00bc67bbc62be37976a724092a048937 Mon Sep 17 00:00:00 2001 From: "xilibi2003@163.com" Date: Wed, 28 Aug 2024 18:27:59 +0800 Subject: [PATCH] modify --- eth/DA.md | 14 ++-- eth/Fuel.md | 6 +- eth/modular.md | 64 +++++++++++++++++ ...07\347\272\247\345\216\206\347\250\213.md" | 72 ++++++++++++++++++- other/Avail/README.md | 32 +++++++++ 5 files changed, 176 insertions(+), 12 deletions(-) diff --git a/eth/DA.md b/eth/DA.md index 098739d..5b94d5f 100644 --- a/eth/DA.md +++ b/eth/DA.md @@ -1,10 +1,14 @@ -## DA 数据可用性 +## DA - 数据可用性 -[DA](https://learnblockchain.cn/tags/DA?map=EVM)(Data Availability 数据可用性)在 [Layer2](https://learnblockchain.cn/tags/Layer2?map=EVM) 扩展方案中扮演重要角色,确保交易数据在网络中是可以访问和验证的,这对于保持网络的去中心化和抗审查性至关重要。 +[DA](https://learnblockchain.cn/tags/DA?map=EVM)(Data Availability 数据可用性)在 [Layer2](https://learnblockchain.cn/tags/Layer2?map=EVM) 扩展方案中扮演重要角色,确保交易数据在网络中是可以访问和验证的,以确保数据的有效性和一致性。 +DA 在扩容解决方案(如 [Layer 2](https://learnblockchain.cn/tags/Layer2?map=EVM) 方案)中扮演着至关重要的角色,因为 Layer2 数据并不完全存储在链上,而是部分存储在链下。如何确保所有节点能够访问到Layer2 的交易数据并验证其真实性,这便是 DA 要解决的问题。 +简单来说 DA 是描述扩容方案中,如何保存原始交易数据的问题。 -### 数据可用性方案 +### 数据可用性方案 + +为了确保数据的可用性,区块链技术引入了多种解决方案和技术手段: 1. **链上数据可用性**:所有交易数据都存储在主链上。这是最简单的方案,确保所有节点都可以访问数据,但会导致主链的存储压力增加。 @@ -16,10 +20,6 @@ - - -4. - ### 数据可用性的应用 - **[Rollup](https://learnblockchain.cn/tags/Rollup?map=EVM)**:在 Optimistic Rollup 和 ZK Rollup 中,数据可用性问题尤为重要。交易数据通常存储在链下,但其可用性对于 Rollup 的安全性至关重要。 diff --git a/eth/Fuel.md b/eth/Fuel.md index 8c8ec9e..59fc2e9 100644 --- a/eth/Fuel.md +++ b/eth/Fuel.md @@ -1,8 +1,6 @@ -# Fuel +## Fuel -## 什么是Fuel? - -Fuel 被称为“**模块化执行层**”,它指的是 Fuel 作为执行层运行,能够进行多种不同的配置,例如作为以太坊的 Op Rollup,或利用 Celestia 进行 DA 和以太坊达成共识和结算。 +Fuel 被称为“**[模块化](https://learnblockchain.cn/tags/模块化)执行层**”,它指的是 Fuel 作为执行层运行,能够进行多种不同的配置,例如作为以太坊的 Op Rollup,或利用 Celestia 进行 DA 和以太坊达成共识和结算。 Fuel 专注于**通过模块化执行层来实现长期可扩展性**,目标是最小化状态。为了实现这一目标,Fuel 创建了自己的虚拟机(FuelVM),选择重新开始并避免仅在 EVM 内构建的限制。尽管通过这种设计选择退出了 EVM 的强大网络效应,但从长远来看,它可能会为开发人员和用户提供更好的体验。通过最小化状态,Fuel 正在寻求创建一个执行层,为验证者提供足够负担得起的硬件要求,以实现充分的去中心化。 diff --git a/eth/modular.md b/eth/modular.md index e69de29..606af4f 100644 --- a/eth/modular.md +++ b/eth/modular.md @@ -0,0 +1,64 @@ +## 模块化区块链 + +模块化区块链(Modular Blockchain)是区块链架构的一种设计理念,它将区块链的不同功能模块化,使每个模块可以独立地执行特定的功能。这种架构设计旨在提高区块链的可扩展性、灵活性和效率,同时允许不同模块之间进行组合,以适应不同的应用场景和需求。 + +### 模块化区块链的基本概念 + +传统的区块链(如 [以太坊](https://learnblockchain.cn/tags/以太坊?map=EVM))通常采用单体架构(Monolithic Architecture),即所有功能都由同一层区块链处理,包括共识、数据可用性、执行和结算等。这种设计虽然简单,但在面对高负载或复杂应用时,容易遇到性能瓶颈。 + +模块化区块链将这些功能分离成不同的模块,各模块可以独立运行,并通过标准化接口进行通信。 + +主要的模块化区块链设计包括以下几个部分: + +1. **执行层(Execution Layer)**:负责执行智能合约和交易,并生成区块链状态的变更记录。 + +2. **结算层(Settlement Layer)**:处理交易的最终性和结算,确保交易在链上得到确认。 + +3. **共识层(Consensus Layer)**:负责区块的生产和共识机制的执行,确保网络中的节点对区块链的状态达成一致。 + +4. **数据可用性层(Data Availability Layer)**:确保区块链中所有交易数据的可用性,即使部分节点无法访问数据,仍然可以验证区块的有效性。 + + + +### 模块化区块链的工作原理 + +模块化区块链通过将上述不同功能分离成独立模块,使每个模块可以在不同的区块链上独立实现。例如: + +- 共识层可以由一个高度去中心化且安全的区块链(如以太坊主网)实现。 +- 数据可用性层可以由专门的解决方案(如 EIP4844 Blob、Celestia、EigenDA)提供,确保所有交易数据的可用性。 +- 执行层可以在 Layer 2 上运行,以提高执行速度和扩展性。 +- 结算层则处理最终的交易确认和结算,确保整个系统的一致性。 + +这些模块之间通过标准化的接口和协议进行通信,从而允许不同的模块化区块链系统无缝集成和协作。 + + + +模块化区块链的一个典型应用,是 Layer 2 扩容,例如 Rollup 通过在 Layer 1 上处理数据可用性和结算,而将执行放在链下, 执行还可以选着不同的虚拟机。 + + + +### 模块化区块链的优势 + +1. **可扩展性**:通过将不同功能模块化,模块化区块链可以更容易地进行扩展。例如,执行层可以在不同的 Layer 2 解决方案中并行运行,提高交易处理速度。 + +2. **灵活性**:开发者可以根据具体的应用需求选择合适的模块进行组合,从而构建具有特定功能的区块链网络。 + +3. **效率**:各个模块可以专注于优化其特定功能,如数据可用性层专注于提高数据传输和存储效率,而执行层则可以优化智能合约的执行速度。 + +4. **安全性**:通过将共识和数据可用性等关键功能分离,模块化区块链可以提高整个系统的安全性,因为攻击者必须同时攻破多个模块才能破坏整个系统。 + +5. **互操作性**:模块化设计使得不同区块链系统之间的互操作性大大增强,允许跨链交易和跨链智能合约的执行。 + + + +### 模块化区块链的挑战 + +1. **协调性**:不同模块之间的协调和通信可能带来复杂性,如何确保模块间的无缝集成和高效通信是一个挑战。 + +2. **标准化**:模块化区块链依赖于标准化接口和协议,目前这些标准化协议尚在发展中,如何推动标准化进程也是一个重要课题。 + +3. **安全性**:尽管模块化提高了系统的安全性,但各模块间的交互可能引入新的攻击面,因此需要仔细设计和防范。 + + + + \ No newline at end of file diff --git "a/eth/\345\215\207\347\272\247\345\216\206\347\250\213.md" "b/eth/\345\215\207\347\272\247\345\216\206\347\250\213.md" index 75d0a5a..e08c0e4 100644 --- "a/eth/\345\215\207\347\272\247\345\216\206\347\250\213.md" +++ "b/eth/\345\215\207\347\272\247\345\216\206\347\250\213.md" @@ -1,3 +1,73 @@ +## 以太坊升级历程 +以太坊同意一次次硬分叉来执行升级。 -升级历程可参考:https://ethroadmap.com/ \ No newline at end of file +### 执行层硬分叉 + +![以太坊执行层硬分叉](https://img.learnblockchain.cn/pics/20240828181743.png) + + + +**创世** 2015 年 7 月 30 日 + +以太坊的第一个区块,也被称为 Frontier,在其构思近两年后发生。 + +**黑客攻击和分叉** 2016 年 6 月 - 7 月 + +由以太坊社区众筹的大型风险投资基金(The DAO)被黑客攻击。为了恢复丢失的资金,实施了一个有争议的硬分叉。 + +**EVM 升级** 2016 - 2021 + +五年内进行了六次硬分叉,升级了 EVM,并且独立于信标链,尽管最后几次变化是为准备工作。 + +**上海升级** 2023 年 4 月 12 日 + +启用了从信标链中提取验证者的功能,完成了向 PoS 的过渡。 + +**坎昆升级** 2024 年 3 月 13 日 + +通过 EIP-4844 和 Blobs 以及其他辅助改进扩展了 Layer2。 + +**布拉格(Prague)升级** 2024 年底 + +社区仍在讨论具体包含哪些内容。可能在 2024 年底上线。 + +**大阪** 2025 年底 + +待定, Verkle Trees 正在受到关注。 + +### 共识层硬分叉 + +![以太坊共识层硬分叉](https://img.learnblockchain.cn/pics/20240828181757.png) + +**共识层启动** 2020 年 12 月 1 日 + +这标志着以太坊向权益证明共识机制过渡的开始,也是现在的共识层的创世。 + +**Altair** 2021 年 10 月 27 日 + +对信标链的首次升级。引入了包括同步委员会在内的若干改进。 + +**Bellatrix** 2022 年 9 月 6 日 + +为信标链进行的准备性升级,为合并奠定了基础。 + +**Merge** 2022 年 9 月 15 日 + +从工作量证明向权益证明的过渡,由达到终端总难度触发,并不是一次硬分叉。 + +**Capella** 2023 年 4 月 12 日 + +启用了从信标链中提取验证者的功能,完成了向 PoS 的过渡。 + +**Deneb** 2024 年 3 月 13 日 + +通过 EIP-4844 和 Blobs 以及其他辅助改进扩展了 Layer2。 + +**Electra** 预计 2024 年底 + +社区仍在讨论具体包含哪些内容。可能在 2024 年底上线。 + +**Fulu** 预计 2025 年底 + +待定 Verkle Trees 正在受到关注。 diff --git a/other/Avail/README.md b/other/Avail/README.md index e69de29..ebc17c5 100644 --- a/other/Avail/README.md +++ b/other/Avail/README.md @@ -0,0 +1,32 @@ +## Avail + +[Avail](https://learnblockchain.cn/tags/Avail?map=EVM) 是一种专注于提供数据可用性(Data Availability, DA)的模块化区块链解决方案。由 Polygon 开发,Avail 旨在成为去中心化应用程序(DApps)和 Layer 2 解决方案的数据可用性层。 + + + +Avail 作为一个独立的区块链,专注于数据可用性服务。它通过存储和验证区块链网络中的交易数据,确保所有节点都可以访问并验证这些数据,从而防止数据丢失和恶意攻击。Avail 是[模块化区块链](https://learnblockchain.cn/tags/模块化区块链)架构的一部分,它与执行层、共识层等其他模块化区块链组件协同工作,提供高效的扩展性和安全性。 + +Avail 旨在与现有的区块链网络和 Layer 2 解决方案(如 [Rollup](https://learnblockchain.cn/tags/Rollup?map=EVM))兼容,成为这些系统的数据可用性层。 + +### Avail 的工作原理 + +Avail 通过以下方式确保数据可用性: + +1. **数据分片和冗余**:Avail 将数据分片并存储在多个节点上,通过纠删码等技术实现数据的冗余存储。这意味着即使部分节点出现故障或被恶意攻击,网络仍然可以恢复和验证数据。 + +2. **数据可用性采样**:通过数据可用性采样(Data Availability Sampling, DAS),网络节点可以对数据的可用性进行抽样验证,而无需下载和存储所有数据。这种方法提高了验证的效率,同时保证了数据的完整性和可用性。 + +3. **独立验证**:任何节点都可以独立验证数据的可用性,无需依赖其他节点的计算结果。这提高了网络的去中心化程度,并防止了潜在的中心化风险。 + +4. **与 Layer 2 的集成**:Avail 通过与 Layer 2 解决方案(如 Optimistic Rollup 和 ZK-Rollup)的集成,提供数据可用性支持,使得这些扩展方案能够在提高交易速度和降低成本的同时,确保数据的安全性和可用性。 + + + +### Avail 的挑战 + +1. **网络效应**:Avail 作为一个独立的数据可用性层,需要建立足够的网络效应,吸引更多的节点参与,以确保其安全性和去中心化程度。 + +2. **与现有区块链的集成**:虽然 Avail 设计上是模块化和兼容的,但在实际应用中,与现有区块链和 Layer 2 方案的无缝集成仍然需要克服一些技术挑战。 + +3. **市场接受度**:作为一个新兴的区块链基础设施,Avail 需要得到开发者和区块链项目的广泛接受,才能充分发挥其潜力。 +