- 自我介绍 四年前端目前在马来西亚读机科硕
- 你认为你会完成本次残酷学习吗? 可以的
第一周:学习 Optimism 的基本概念,包括 Layer2 扩容方案,Opimism Rollups, Tokenomics, Stage 阶段
Layer2 扩容方案: https://docs.optimism.io/stack/rollup/overview
Optimism 与其他 Layer 2 的比较:https://learnblockchain.cn/article/3703
Stage 的介绍:https://medium.com/l2beat/introducing-stages-a-framework-to-evaluate-rollups-maturity-d290bb22befe
Maximal Extractable Value MEV 是利用区块链中交易排序的灵活性,来获取额外经济收益的行为。
MEV 的主要来源是 区块链中交易的非确定性排序 ,即矿工或验证者可以决定:
- 哪些交易进入区块 。
- 交易的排序顺序 。
- 是否包含某些交易 。
这种控制能力使得矿工/验证者可以通过交易排序获得经济收益。
以下是一些典型的 MEV 操作场景:
- **描述:**在不同去中心化交易所(如 Uniswap 和 SushiSwap)之间,价格可能存在差异,矿工可以通过调整交易顺序执行套利交易。
- **例子:**如果在 Uniswap 上 ETH 的价格是 $1000,而在 SushiSwap 上是 $1050,矿工可以优先执行套利交易,赚取差价。
- **描述:**在借贷协议(如 Aave、Compound)中,当借款人的抵押品价值不足时,清算者可以赚取清算奖励。矿工可以优先执行这些清算交易。
- **例子:**用户 A 的贷款被触发清算,矿工插入清算交易以获得清算奖励。
- **描述:**这是 DeFi 中一种常见的 MEV 攻击方式,矿工通过在目标交易前后插入交易来获利。
- 步骤:
- 在目标交易之前发送一个买单,抬高价格。
- 等目标交易执行后,再发送一个卖单,获利。
- 步骤:
- **结果:**目标交易者将以更高的价格完成交易,而矿工获得利润。
- 负面:
- 用户可能因为 MEV 行为(如三明治攻击)而遭受经济损失。
- 网络拥堵时,Gas 费用可能因 MEV 的竞争而大幅上升。
- 正面:
- 某些 MEV 行为(如套利和清算)可以提升市场效率。
- 安全性: 高额的 MEV 收益可能导致矿工/验证者之间的不公平竞争,甚至诱发攻击(如自私挖矿)。
- 去中心化: MEV 的集中化可能会削弱区块链的去中心化特性。
为减少 MEV 对生态的负面影响,社区提出了多种解决方案:
- **描述:**Flashbots 是一个专门用于缓解 MEV 的项目,允许用户和矿工通过专用通道提交交易,避免公开的 Gas 战争。
- **作用:**提供一个透明且高效的 MEV 提交系统,减少用户损失。
- **描述:**在以太坊的 PoS 机制下,将区块的提议者(Proposer)与构建者(Builder)分离,降低单一验证者的 MEV 控制力。
- **描述:**使用去中心化的排序协议,确保交易顺序的公平性,例如 CowSwap 提出的公平排序机制。
Bedrock 是一种与区块链相关的术语,尤其在 Optimism 生态系统中,它特指 Optimism Bedrock ,即 Optimism 网络的下一代升级框架。它是一个技术更新,旨在提高网络的性能、兼容性和可扩展性,同时降低复杂性和成本。
- Rollup 是什么
- Rollup 是区块链扩展技术中的一种解决方案,主要用于提高区块链的吞吐量(交易速度)并降低交易费用,同时保持较高的安全性。Rollup 是以太坊 Layer 2 扩展方案的核心之一,它将大部分交易计算和数据处理从主链(Layer 1)转移到次级链(Layer 2),以减少主链的负担。
- Rollup 的原理
- 交易执行在 Layer 2 Rollup 在 Layer 2 网络中执行交易,将计算和状态存储移至链下。
- 数据存储在 Layer 1 Rollup 会将交易数据或状态变更结果压缩后发布到 Layer 1(如以太坊主链)。这些数据的存在确保了 Layer 2 的安全性和透明性。
- 主链保证安全性 因为 Rollup 将数据发布到 Layer 1,任何人都可以验证 Layer 2 的交易是否有效,这使得 Layer 2 网络可以继承 Layer 1 的安全性。
- Rollup 的关键组件
- Sequencer(排序器)
- Rollup 网络中的核心节点,负责交易的接收、排序和打包。
- 排序器通常是去中心化的,但在某些实现中可能由特定的运营者运行。
- Fraud Proof(欺诈证明)或 Validity Proof(有效性证明)
- 用于验证交易是否有效。
- Optimistic Rollup 使用 Fraud Proof
- Data Availability(数据可用性)
- Rollup 将交易数据存储在 Layer 1,确保所有用户可以访问和验证这些数据。
- Sequencer(排序器)
- Rollup 的优缺点
- 优点
- 降低交易成本
- 大量交易计算和存储在 Layer 2 上进行,减少主链的 Gas 消耗。
- 提高吞吐量
- Rollup 每秒可以处理更多的交易,使得区块链可以支持更大的用户规模。
- 继承 Layer 1 的安全性
- 因为数据存储在 Layer 1,Layer 2 的操作受到 Layer 1 的保护。
- 降低交易成本
- 缺点
- 提款延迟(Optimistic Rollup)
- 提款需要等待争议期,影响用户体验。
- 复杂性增加
- Rollup 的实现需要处理交易排序、数据压缩、证明生成等复杂逻辑。
- 提款延迟(Optimistic Rollup)
- 优点
- Rollup 的作用
- 扩展区块链网络
- Rollup 是目前以太坊扩展的核心方案,可以帮助以太坊支持更多用户和应用。
- 降低 DeFi 和 dApp 的成本
- Rollup 减少了交易成本,使 DeFi、NFT 等应用更可负担。
- 推动区块链大规模应用
- Rollup 提供了更高效、更安全的交易方式,有助于推动区块链技术的主流采用。
- 扩展区块链网络
- Optimistic Rollups 利用其母链的共识机制(如 PoW 或 PoS),而不是用自己的。
- 在“交易”包含在具有足够证明的块中之后,无法修改或审查它们。这就是OP主网继承以太坊可用性和完整性保证的方式。
- 区块的生产(OP 通过 "sequencer" )
- 提供交易确认和状态更新。
- 构建并执行 L2 块。
- 向L1提交用户交易
- 区块的执行
- op-geth 组件实现
rollup 之所以快是因为 它把交易带到的链下不消耗链上资源 然后计算完了再放到链上,而Optimistic Rollup 认为交易都是好的,只要没有纠错,就会认为数据是准确的
- 减少链上资源消耗
- Rollup 的核心机制是把交易的计算和存储放在链下(Layer 2)完成,而不是在主链(Layer 1)上进行。
- 这样,主链只需要负责记录经过压缩的交易数据(数据可用性)和最终状态变更,而不需要执行每一笔交易。
- 由于链上的操作减少了,整体交易速度(吞吐量)提升,同时 Gas 费用大幅降低。
- 压缩和批量处理
- Rollup 会将多笔交易打包压缩成一个批次,批量提交到主链。
- 这大大降低了链上的数据存储和处理成本。
-
假设交易都是正确的
- “Optimistic” 的意思是默认所有提交的交易都是有效的,只有在有人提出争议时才进行验证。
- 这种“乐观”假设避免了每笔交易都需要实时验证,从而减少计算开销,进一步提高效率。
-
欺诈证明(Fraud Proof)机制
- 为了防止无效交易或恶意操作,Optimistic Rollup 设置了一个“争议期”(通常是 7 天)。
- 在争议期内,任何人都可以检查提交的交易数据,如果发现问题,可以提出欺诈证明。
- 验证通过后,链会撤销无效交易并惩罚作恶者。
-
争议期的作用
- 因为有争议期的存在,Optimistic Rollup 的提款操作需要等待这段时间,确保没有无效交易混入其中。
Layer 2 扩容技术是为了解决区块链(尤其是以太坊)在 Layer 1(主链)上面临的性能瓶颈和高交易成本问题而提出的解决方案。Layer 2 的核心目标是提高交易吞吐量、降低手续费,同时保持主链的去中心化和安全性。
Layer 2 是构建在主链之上的二级网络或协议,它将大部分交易或计算移到主链之外进行处理,最后再将结果提交到主链上。这种方式减少了主链的负担,同时提高了整个系统的效率。
扩容方案 | 适用场景 | 优点 | 缺点 | 代表项目 |
---|---|---|---|---|
状态通道 | 高频小额交易 | 低手续费,高吞吐量 | 仅适合双方交互,在线要求高 | Raiden, Lightning |
Plasma | 大量简单交易 | 高扩展性,适合简单支付 | 退出机制复杂,安全依赖运营方 | OMG, Matic (早期) |
Optimistic Rollup | 一般智能合约 | 简单高效,适合通用场景 | 挑战期长,提现较慢 | Optimism, Arbitrum |
ZK Rollup | 高频复杂交易 | 高安全性,几乎即时提现 | 开发难度高,计算复杂 | zkSync, StarkNet |
Validium | 大规模数据处理 | 超高扩展性 | 去中心化程度低 | StarkWare |
- 工作原理:
- 在主链上提交打包后的交易数据,但默认假设这些交易是有效的(“乐观”假设)。
- 如果有人认为交易无效,可以提交“欺诈证明”(Fraud Proof),要求 Rollup 链验证交易的正确性。
- 如果证明成功,违规的交易会被回滚,提交者将受到惩罚。
- 优点:
- 简单高效,吞吐量高,适合一般的智能合约。
- 缺点:
- 验证欺诈的挑战期较长,通常需要 1 周左右的时间。
- 适合短期高频交易,但不适合需要快速提现的场景。
- 工作原理:
- 在主链上提交打包后的交易数据,并通过零知识证明(ZK-SNARK 或 ZK-STARK)来证明所有交易的正确性。
- 零知识证明可以快速验证大批量交易,无需验证具体交易内容,只需验证证明是否有效。
- 优点:
- 验证速度快,提现时间几乎是即时的。
- 安全性强,因为所有交易都经过数学证明,不依赖于“欺诈挑战”机制。
- 缺点:
- 零知识证明的生成过程计算复杂,开发难度高。
- ZK Rollup 和 Validium 被认为是未来 Layer 2 扩容的主要方向,尤其是随着零知识证明技术的不断进步,ZK Rollup 的性能和适用范围将进一步提升。
- Optimistic Rollup 已经在许多项目中大规模应用,短期内仍然是最主流的方案。
特性 | Validium | ZK Rollup |
---|---|---|
数据存储 | 链下存储,由数据可用性委员会维护 | 链上存储,所有数据都提交到主链 |
扩容能力 | 扩容能力更高,适合大规模应用 | 扩容能力有限,受限于主链存储 |
数据可用性保障 | 依赖数据可用性委员会 | 主链保证数据可用性 |
安全性 | 受数据可用性委员会诚实行为的影响 | 完全继承主链的安全性 |
交易成本 | 更低(由于链下数据存储减少了主链成本) | 较高(链上数据存储增加了主链成本) |
适用场景 | 适合对数据可用性要求较低的大规模应用 | 适合对数据可用性要求高的应用 |
- 去中心化数据可用性
- 当前 Validium 的主要瓶颈是数据可用性委员会的去中心化程度较低,未来可能会通过引入更多节点或新的分布式存储技术来提高去中心化程度。
- 混合模式(Volition)
- 一些 Validium 项目正在开发混合模式(Volition),允许用户选择将数据存储在链上或链下,从而在扩展性和安全性之间灵活平衡。
零知识证明是一种密码学技术,它允许一方(证明者)向另一方(验证者)证明某个陈述是正确的,而无需透露证明的具体内容。换句话说,验证者可以确认证明者确实知道某个秘密信息,但不会获得这个信息的任何细节。
这个经典例子经常被用来解释零知识证明的概念:
- 想象有一个圆形的洞穴,洞穴中有一扇魔法门,只有知道某个秘密咒语的人才能打开这扇门。
- 一个人(证明者)想向验证者证明他知道咒语,但又不想直接告诉验证者咒语是什么。
- 洞穴有两个入口,分别是左侧和右侧。验证者站在洞外,看不到洞内情况。
- 证明者随机选择一个入口(左或右)进入洞穴,然后验证者在洞外随机要求证明者从指定的入口走出来。
- 如果证明者真的知道咒语,他可以打开门,从验证者指定的入口走出来;如果不知道咒语,他只能随机猜测验证者会选择哪个入口,这样他被抓到作弊的概率是 50%。
通过多次重复这个过程,验证者会逐渐确信证明者确实知道咒语,而无需直接获得咒语本
- 在交互式零知识证明中,证明者和验证者需要多次交互,验证者通过多轮挑战来验证证明者是否知道正确信息。
- 洞穴问题是一个典型的交互式零知识证明示例。
- 缺点:需要多次交互,不适用于自动化验证和区块链场景。
- 在非交互式零知识证明中,证明者只需要一次性提供一个证明,验证者可以通过数学方法自动验证。
- 非交互式零知识证明使用的是高级密码学技术,如 ZK-SNARKs 和 ZK-STARKs。
- 这种方式非常适合区块链中的智能合约和 Layer 2 扩容技术。
- 涉及复杂的数学原理,需要开发者理解高级密码学和代数知识。
- 电路设计复杂,需要手动将逻辑转化为加法门和乘法门形式,且电路的调试不直观。
- 性能优化困难,不同场景需要不同的零知识证明算法,并且库的默认实现未必是最优的。
- 信任设置和兼容性问题,对于 zk-SNARK,需要处理可信设置问题,对于 zk-STARK,则需要优化证明大小和生成速度。
- 库的使用门槛高,虽然现有库降低了入门难度,但如何正确、高效地使用这些库仍然是一个挑战。
现状:正在变得简单
随着零知识证明技术的普及,生态系统正在不断完善,新工具和框架也在降低开发难度。例如:
- Circom 和 snarkjs 提供了较为成熟的 zk-SNARK 电路编写工具。
- zkSync 和 StarkNet 等项目提供了高度集成的 Layer 2 解决方案,开发者可以直接使用,而不需要手动构建 zk 电路。
- Halo2 和 Plonky2 等新型证明系统降低了零知识证明的开发和验证成本。
Fault Proofs(错误证明)是一种机制,用于 Optimistic Rollup 中来验证交易的有效性。与 ZK Rollup 使用零知识证明直接验证交易不同,Optimistic Rollup 采用的是“乐观假设”的方式,即所有提交的交易默认被视为有效,除非有人提出异议。在这种机制下,Fault Proofs(错误证明)用于在争议发生时验证哪些交易是无效的。
- 默认假设交易有效
- 在 Optimistic Rollup 中,每次提交交易时,不需要立刻验证交易的有效性,系统默认所有交易都是正确的,并将交易结果提交到主链。
- 争议期(Challenge Period)
- 当某个验证者怀疑某批交易或区块存在问题时,可以在争议期内提出异议。
- 提出异议的一方需要提交错误证明(Fault Proof),来证明交易或区块存在错误。
- 验证错误证明
- 主链会验证提交的错误证明是否有效。
- 如果错误证明有效,表示确实存在无效交易,那么提交无效交易的验证者会被惩罚,押金可能会被没收,同时错误交易会被回滚。
- 如果错误证明无效,提出异议的一方将受到惩罚。
- 最终确认
- 如果在争议期内没有人提出异议,或者所有提出的异议都被证明为无效,那么交易会被视为最终有效,并在主链上永久确认。
- 安全保障:Fault Proofs 通过“异议 + 验证”的机制确保只有正确的交易才能被最终确认,从而保持系统的安全性。
- 降低主链负载:与 ZK Rollup 的每笔交易都需要在主链验证不同,Optimistic Rollup 只有在有争议时才进行验证,这大大降低了主链的负担,提高了扩展性。
- 更简单的开发流程
- Fault Proofs 不依赖于复杂的密码学(如 ZK-SNARK 或 ZK-STARK),实现起来相对简单,因此 Optimistic Rollup 的开发难度较低。
- 通用性更强
- Fault Proofs 适用于几乎所有类型的智能合约,而 ZK Rollup 目前主要适用于简单的支付和转账。
- 挑战期较长
- 通常,Optimistic Rollup 的挑战期需要 1 周左右,用户在挑战期内不能立即提现资金。这种较长的等待时间对用户体验有一定影响。
- 依赖于经济激励机制
- Fault Proofs 的有效性依赖于验证者的诚实行为,而验证者的诚实与经济激励直接相关。如果激励不足或攻击成本较低,可能会影响系统的安全性。
- 进一步增强去中心化
- Fault Proof 系统将持续优化权限限制模式与完全去中心化模式的切换,提高系统的灵活性与安全性。
- 多重证明机制支持
- 未来将支持更多类型的证明机制,进一步提高系统的可靠性。
- 用户指南与工具支持
- 将发布更多文档和工具指南,帮助用户更好地参与提案和挑战,推动生态系统的发展。
Rollup 的 Stage 评级通常与 Optimism 和 Ethereum Layer 2 生态系统有关。它表示不同 Rollup 项目在开发、功能和安全性方面的成熟程度。这个评级由 Ethereum Foundation 或社区提供,以帮助开发者和用户了解各 Rollup 项目的发展进度和可靠性。
- 特点:项目仍处于早期开发阶段,功能不完善,可能存在重大漏洞。
- 安全性:无保证,用户资金存在高风险。
- 示例:刚刚发布或正在测试中的 Rollup 项目。
- 适合人群:开发人员和愿意参与测试的早期用户。
- 特点:项目已经具有基本功能,但在安全性和去中心化方面尚未完全完善。
- 安全性:有限的安全保证,仍然依赖于开发团队的运营。
- 要求:
- 支持资金的存入和取出。
- 提供完整的欺诈证明(fraud-proof)或有效性证明(validity-proof)机制,但尚未完全去中心化。
- 示例:一些已经上线主网但仍受限于单一运营者的 Optimistic Rollup 或 ZK Rollup 项目。
- 特点:Rollup 已经达到完全去中心化,具备成熟的功能和高度的安全性。
- 安全性:高度保证,等同于 Layer 1 的安全性。
- 要求:
- 完整的去中心化运营。
- 验证机制已经在链上实现(例如,欺诈证明或有效性证明)。
- 用户资金完全由智能合约控制,无需依赖中心化团队。
- 有完善的退出机制,允许用户在运营者离线的情况下依然能提取资金。
- 示例:像 Arbitrum 和 Optimism 等主流 Rollup 项目逐步迈向 Stage 2。
- 对于开发者:Stage 评级帮助开发者选择合适的 Rollup 平台。如果项目仍处于 Stage 0 或 Stage 1,开发者需要意识到可能存在的风险和不稳定性。
- 对于用户:用户可以通过 Stage 评级来评估在这些 Rollup 项目中存放资金的风险。例如,Stage 2 的项目更加成熟,用户资金更安全。
- 对于生态系统:评级的引入推动 Rollup 项目不断改进,迈向完全去中心化和安全性。
社区对 Rollup Stage 评级 的评估主要基于项目的技术成熟度、安全性、去中心化程度和可用性。评级通常由社区成员、开发人员和生态系统中的关键角色共同参与
- 功能完整性:Rollup 是否已经实现核心功能(如转账、合约执行)并且能够正常运行。
- 验证机制:Rollup 是否已部署并测试了完整的欺诈证明(Fraud Proof)或有效性证明(Validity Proof)机制。
- 兼容性:Rollup 是否与以太坊主网和现有工具(如钱包、dApp)兼容。
- 智能合约审核:Rollup 智能合约是否经过了第三方的全面安全审计,并且审计报告是否公开。
- Bug Bounty(漏洞赏金计划):项目是否推出漏洞赏金计划,以激励安全专家发现潜在漏洞。
- 退出机制:当 Rollup 运营方出现问题时,用户是否可以通过链上机制安全提取资金。
- 运营去中心化:Rollup 的验证和运行是否由多个独立节点参与,而不是由单一团队控制。
- 治理机制:项目是否有明确的去中心化治理方案,如 DAO 或社区投票机制。
- 数据可用性:Rollup 的数据是否在链上公开发布,还是依赖于链下的运营者。
- 主网部署情况:项目是否已在以太坊主网上线,而不仅仅是测试网。
- 用户体验:Rollup 是否易于使用,是否提供了完善的文档、SDK 和开发工具。
- 生态系统支持:是否有大量的 dApp 和用户已经在 Rollup 上进行交互。
社区成员可以提出某个 Rollup 项目的评级提议,在论坛或 GitHub 上发起讨论。例如,Optimism 和 Arbitrum 都曾通过 Ethereum Research 论坛与社区沟通其发展状态。
开发者、审计公司和资深用户会审查提议中提到的内容,并提出改进建议。如果有争议,社区会进一步讨论,直到达成共识。
某些去中心化治理项目可能会引入投票机制(例如通过 DAO 投票),由持有治理代币的用户对 Rollup 项目的 Stage 评级进行表决。
最终评级结果会被发布在社区认可的平台上,比如以太坊官网、GitHub 或特定的 Rollup 追踪器中。
Optimism 的治理理念围绕着“公共利益与长期主义”展开,核心目标是构建一个可持续发展的公共物品生态系统,推动去中心化社区的共同繁荣。
Optimism 推崇一种新的经济模式,即 “影响等于利润” 的理念。它认为,经济体系应当奖励那些为公共利益创造积极影响的人与项目。这种模式被称为 “Ether’s Phoenix”,即构建一个属于所有人、服务所有人的互联网。
Optimism 的治理采用了一个独特的 双层治理模型:
- Token House 由 OP 代币持有者组成,负责对治理提案进行讨论与投票,主要涉及协议升级和资金分配等事务。OP 持有者可以选择直接投票或委托他人代为投票。
- Citizens' House是一个基于声誉的治理机构,采用 “一人一票” 的模式,主要负责 回溯性公共物品资助(Retro Funding)。这种资助机制基于“回顾过去”的理念,即奖励那些已被证明对生态有积极影响的项目
Token House 和 Citizens' House 共同协作,确保 Collective 的愿景得以实现。Token House 负责协议与代币经济的管理,Citizens' House 专注于公共物品资助与声誉体系建设,从而形成一个完整的治理闭环。
- 提案提交:所有非资助类提案需要在 Optimism Forum 上提交并标注为
[Draft]
,供社区成员审议和反馈。 - 提案审核:
- Token House 中的提案需要获得前 100 名中至少 4 名有足够投票权的代表明确批准。
- Citizens' House 的提案需要获得至少 4 名 Citizens 的批准。
- 提案作者职责:在第 2 周结束前,将获得批准的提案从
[Draft]
更新为[Final]
,并在 Voting Cycle Roundup 主题中添加链接。
- Token House 投票:OP 持有者和委托人对提案进行投票,提案需满足以下条件才能通过:
- 法定人数(Quorum):最少投票数量(占总可投票 OP 数量的一定比例)。
- 批准阈值(Approval Threshold):赞成票数量需达到总投票数量的一定比例(不包括弃权票)。
- Citizens' House 投票:Citizens 对提案进行投票,需满足类似的法定人数和批准阈值。
Retro Funding(回溯资助)是通过奖励已经产生显著影响的公共项目来促进公共利益。在每一轮“Retro 资助”中,由 Citizens' House(公民之家)对这些项目进行投票并拨款。
- 范围确定(Scoping):定义本轮拨款的总金额和资助范围。
- 申请创建(Application Creation):邀请项目在 Retro Funding Application Manager 平台上提交申请。
- 申请审核(Application Review):审核提交的申请是否符合相关规则。
- 投票(Voting):由符合条件的公民进行投票,统计投票结果。
- 拨款(Disbursement):根据公民投票的加权平均结果,将总资助金额分配给获胜项目。
- 合规(Compliance):基金会收集项目信息(包括 KYC 认证)以确保资助的合法合规性。
KYC 是“Know Your Customer”的缩写,意思是“了解你的客户”。它是一种身份验证流程,主要用于金融机构、加密货币交易所和其他需要遵守合规要求的行业。
KYC 的主要目的是防止以下非法活动:
-
反洗钱(AML,Anti-Money Laundering)
防止不法分子通过金融系统进行洗钱操作。
-
打击资助恐怖主义(CFT,Countering the Financing of Terrorism)
确保资金不会被用于支持恐怖主义活动。
-
识别和管理风险
金融机构通过了解客户的身份、交易历史和资金来源来管理潜在的合规风险。
KYC 流程通常包括以下几个步骤:
-
身份验证(ID Verification)
客户需要提供官方颁发的身份证件(如护照、身份证、驾照等)来证明自己的身份。
-
地址验证(Address Verification)
客户需提供居住地址的证明文件(如水电账单、银行对账单等)。
-
背景调查(Background Check)
机构可能会对客户的背景进行检查,以了解其是否涉及犯罪活动或受到制裁。
-
持续监控(Ongoing Monitoring)
即使客户完成了初次 KYC,机构仍需定期进行监控,确保客户的交易行为符合合规标准。
在加密货币领域,KYC 是交易所和 DeFi 平台合规的重要部分。许多平台在用户注册和进行大额交易时会要求完成 KYC,以满足反洗钱和监管要求。
常见用途:
- 加密货币交易所(如 Binance、Coinbase)在用户提现或交易前会要求完成 KYC。
- ICO、IDO 或 IEO 项目要求投资者完成 KYC,确保合规。
-
用户隐私问题
客户可能担心提交敏感信息会泄露隐私或导致数据泄露风险。
-
合规成本
对于金融机构来说,实施 KYC 需要投入大量资源来验证用户身份并管理风险。
-
地域性合规差异
各国对 KYC 的要求不同,机构需要在多个司法管辖区内满足不同的法规。
- AML(Anti-Money Laundering):反洗钱,KYC 是 AML 的一部分。
- CFT(Countering the Financing of Terrorism):打击恐怖融资。
- KYT(Know Your Transaction):了解你的交易,用于监控交易行为的异常情况
+----------------------------+ | Layer 1 (Ethereum) | +----------------------------+ | |
| +----------------+ | | L1 Contracts | <-- 包括 CTC, SCC, Bridge 等 | +----------------+ | | +----------------------------+ | Layer 2 (Optimism) | +----------------------------+ | Sequencer | | Canonical Tx Chain | | State Commitment Chain | | Fraud Proof Mechanism | +----------------------------+
- 负责接收用户交易,按顺序处理并立即返回临时确认(Instant Confirmation)。
- 定期将处理好的交易打包成批次(Batch)并提交到以太坊主网。
- 用户通过钱包或 DApp 提交交易到 Layer 2。
- Sequencer 对交易进行排序并执行,产生一个新的状态根(State Root)。
- 交易结果立即反馈给用户,提供即时确认。
- Sequencer 将一组交易打包并压缩后,定期提交到 Layer 1(以太坊)的智能合约中。
- 记录所有在 Optimism 网络上发生的交易顺序。
- 作为 Layer 2 交易的权威来源,确保交易顺序的不可篡改性。
- Sequencer 会将打包的交易批次作为 calldata 提交到以太坊上的 CTC 合约中。
- 这些 calldata 包含交易的最小必要信息,便于以太坊验证批次的有效性,同时降低费用。
- 记录每个交易批次执行后的状态根(State Root)。
- 这些状态根代表 Layer 2 网络的当前状态,一旦状态根被提交且通过挑战期,就视为最终状态。
- Sequencer 在提交交易批次的同时,会提交一个对应的状态根到 SCC 合约中。
- 挑战期内,如果没有人提出欺诈证明,该状态根将被确认为最终状态。
- 确保 Layer 2 的交易是正确的,即使 Sequencer 提交了错误的状态根,网络依然可以通过欺诈证明机制纠正错误。
- 基于挑战期(Challenge Period)的设计,允许任何人对错误的交易批次提出挑战。
- 在挑战期内,任何人都可以提出欺诈证明。
- 如果欺诈证明被验证为有效,错误的交易批次将被回滚,提交欺诈证明的用户会获得奖励。
- 如果挑战期内没有有效挑战,则交易批次被确认,状态根成为最终状态。
- 维护 Layer 2 与 Layer 1 之间的数据同步。
- 主要包括以下几个合约:
- CTC 合约:存储交易批次的 calldata。
- SCC 合约:存储状态根并负责处理欺诈证明。
- Bridge 合约:实现资产从 Layer 1 到 Layer 2 的跨链转账。
- 所有批次数据和状态根都通过这些智能合约提交并存储在以太坊上,确保 Layer 2 的安全性依赖于以太坊主网。
- 允许用户在 Layer 1 和 Layer 2 之间转移资产。
- 通过将资产锁定在以太坊主网的合约中,并在 Layer 2 上生成对应的代币来实现资产映射。
- 用户将资产存入以太坊上的 Bridge 合约,Bridge 合约会锁定这些资产。
- 在 Layer 2 上,用户获得等量的资产副本,可以在 Optimism 网络中使用。
- 当用户希望将资产转回以太坊时,提交提取请求并等待挑战期结束。
- 挑战期结束后,Bridge 合约会释放等量的资产到用户的以太坊地址中。
- 数据压缩Optimism 采用 Calldata 压缩 技术,只将最必要的交易信息提交到以太坊上,这显著降低了费用。
- 批次提交多个交易被打包成一个批次,进一步减少每笔交易的单位成本。
- Sequencer 提供即时确认和交易排序,并定期将打包的交易提交到 Layer 1。
- CTC 和 SCC 合约 在以太坊上记录交易批次和状态根,确保 Layer 2 的安全性。
- 欺诈证明机制 允许社区在挑战期内验证交易有效性,从而保证 Rollup 的正确性。
- Bridge 合约 提供 Layer 1 和 Layer 2 之间的资产跨链功能。
- 整个架构设计的目标是提供高吞吐量、低费用的扩展能力,同时依赖以太坊主网的安全性。
Retro Funding(回溯资助)是一种资助模式,在这种模式下,资助者会在某个项目完成或部分完成之后,再根据成果对项目提供资金支持。与传统的“预先资助”不同,回溯资助强调先完成工作,再获得资助。
-
完成项目或取得成果
项目方或个人首先完成某项有价值的工作,比如开发开源软件、创建公共资源或推动公益项目。
-
展示成果
项目方将已完成的成果展示给潜在的资助者或社区,让他们评估这项工作对社区或行业的贡献。
-
申请 Retro Funding
根据成果的影响力,项目方向资助机构或平台申请 Retro Funding,通常需要提供详细的报告和证明材料。
-
资助决策
资助者会评估申请的价值,决定是否提供资金支持。如果申请成功,项目方会获得一笔资金作为对其过去工作的回报。
- 减少风险:资助者只对已完成的工作提供资金支持,因此可以确保资金用在有价值的项目上。
- 激励高质量成果:项目方需要先完成工作,才能获得资助,这鼓励他们创造更高质量的成果。
- 灵活性:项目方可以自由地选择自己感兴趣的工作,而不必拘泥于资助者的初期要求。
OP Stack 是 Optimism 提供的一个模块化、可组合的开发框架,旨在帮助开发者构建自己的 Layer 2 区块链或扩展现有的 Layer 2 解决方案。它包含了一系列构建区块链的核心组件(模块),这些组件彼此独立,可以按需组合使用,类似于“搭积木”来创建一个定制化的区块链。
-
模块化设计(Modularity)
OP Stack 将区块链的功能分解为多个独立的模块,每个模块负责一个特定的功能,例如共识、执行、数据可用性等。开发者可以替换、扩展或优化这些模块,以满足不同的需求。
-
以太坊等效性(Ethereum Equivalence)
OP Stack 的设计目标之一是与以太坊的 EVM 完全兼容,使其能够运行现有的以太坊智能合约和工具(如 Solidity、Hardhat、Truffle 等)而无需修改。
-
可扩展性(Scalability)
OP Stack 支持多种扩展方式,例如 Rollup 和 Layer 3(未来的扩展层),帮助开发者构建更加高效和灵活的扩展解决方案。
OP Stack 的模块化架构允许开发者自由组合以下主要模块:
-
Execution Layer(执行层)
执行层负责处理交易和运行智能合约,类似于以太坊的 EVM。在 OP Stack 中,执行层与以太坊兼容,因此开发者可以直接使用 Solidity 编写智能合约。
-
Consensus Layer(共识层)
共识层负责区块的生成和验证。在 Rollup 模式下,OP Stack 依赖于以太坊的共识层,即通过以太坊主链来确保 Layer 2 的安全性和去中心化。
-
Settlement Layer(结算层)
结算层负责将 Layer 2 的状态提交到 Layer 1(以太坊主链),并处理任何可能的欺诈证明或争议。
-
Data Availability Layer(数据可用性层)
数据可用性层确保所有交易数据在 Layer 1 上是可用的,以便在需要时进行验证。Optimism 使用以太坊主链来存储 Rollup 的压缩数据,从而确保数据的可用性和完整性。
-
创建自定义 Rollup
开发者可以使用 OP Stack 创建一个自定义的 Rollup 解决方案,针对特定的应用场景进行优化,例如更高的吞吐量或更低的交易费用。
-
构建 Layer 3 解决方案
Layer 3 是在 Layer 2 之上进一步扩展的一层,可以用于特定的用例,例如游戏、DeFi 和隐私应用。OP Stack 提供了构建 Layer 3 的工具和模块。
-
参与多链生态
通过 OP Stack,开发者可以构建与 Optimism 生态兼容的区块链,实现跨链互操作性,加入去中心化的多链生态系统。
-
完全兼容以太坊生态
开发者无需学习新的编程语言或工具,直接使用现有的以太坊开发工具即可进行开发。
-
灵活的模块化架构
开发者可以根据需求替换或扩展模块,构建最适合自己应用的区块链。
-
高效的扩展性
OP Stack 支持 Rollup 模式,可以显著降低交易费用,提高吞吐量,同时保持与以太坊主链的安全性。
在 Web3 和加密货币领域,**DA(Decentralized Application,去中心化应用)**具有独特的风险。这些风险可以分为技术风险、经济风险和用户风险等方面。以下是 DA 的主要风险:
- 去中心化应用依赖于智能合约,智能合约一旦部署在区块链上就无法轻易更改。如果存在漏洞,攻击者可能会利用这些漏洞窃取资金或操纵应用。
- 经典案例:The DAO 攻击事件,黑客利用智能合约漏洞窃取了大量以太坊。
- DA 通常运行在某个特定的区块链平台(如以太坊、BSC、Optimism)上。如果底层平台出现问题(如拥堵、分叉或漏洞),DA 的运行会受到严重影响。
- DA 经常与其他智能合约或预言机交互。如果这些外部依赖存在问题,可能会影响 DA 的安全性和稳定性。例如,预言机提供错误数据可能导致资产损失。
- 所有操作和数据记录在区块链上是不可更改的。一旦发生错误或失误,很难进行补救。
- DA 通常使用代币来激励用户,但如果代币设计不合理,可能会导致通货膨胀、价值崩溃或用户流失。
- 很多 DA(尤其是 DeFi 应用)依赖流动性池来运行。如果流动性不足,用户的交易和资产兑换可能会受到影响,甚至可能发生流动性枯竭的情况。
- 加密市场波动剧烈,DA 的使用和代币价格可能因市场情绪变化而剧烈波动,进而影响应用的稳定性。
- 不良用户可能通过攻击性行为(如刷单、套利)滥用 DA 的激励机制,从而导致系统损失。
- 用户操作需要较高的技术门槛,错误的私钥管理、地址输入或交易操作都可能导致资产永久丢失。
- 尽管区块链上信息是匿名的,但所有交易记录都是公开透明的。如果通过链上分析技术关联用户身份,可能会暴露隐私。
- 在以太坊等主流区块链上运行的 DA,可能因为网络拥堵导致高昂的交易费用,阻碍普通用户使用。
在区块链中,数据可用性是指用户和验证者能够访问到所有必要的交易数据,以验证区块链的状态是否正确。数据可用性是保障区块链安全性的重要因素,特别是对于 **Layer 2 扩容方案(如 Rollup)**来说,确保数据的可用性至关重要。
在区块链中,验证者(或用户)需要所有的交易数据,才能独立验证区块的有效性。如果数据不可用,验证者将无法确认链的状态是否正确,从而可能导致欺诈或攻击,甚至导致用户资金被锁定或丢失。
例如,在 Optimistic Rollup 中,验证者需要访问 Rollup 提交的所有交易数据,才能在争议期间验证是否存在欺诈行为。如果这些数据无法访问,验证者就无法提出欺诈证明,导致无效交易可能被确认,从而损害整个网络的安全性。
在 Rollup 中,数据可用性是通过将交易数据发布到 **Layer 1 主链(如以太坊)**来实现的。根据不同的 Rollup 技术,数据可用性的实现方式略有不同:
- 在 Optimistic Rollup 中,所有交易数据都会以 calldata 的形式压缩后提交到以太坊主链。
- 这些数据虽然不能直接执行,但任何人都可以在链上获取这些数据,并通过重新执行交易来验证状态是否正确。
- 优点:完全继承以太坊的安全性,只要以太坊保持去中心化,Rollup 的数据就始终可用。
- 缺点:提交数据到 Layer 1 会消耗较多 Gas,导致成本较高。
- ZK-Rollup 同样将所有交易数据以压缩形式发布到以太坊主链,同时生成零知识证明来证明交易的有效性。
- 验证者只需检查零知识证明的有效性,而不需要重新执行交易。
- 优点:零知识证明保证了交易的有效性,且数据可用性由以太坊主链保障。
- 缺点:零知识证明生成成本较高,开发复杂。
随着 Layer 2 的发展,社区提出了多种提高数据可用性和降低成本的方案:
以太坊 2.0 的 分片(Sharding) 是一种通过将链上的数据分割成多个分片链来提高数据可用性的方案。每个分片链负责存储部分数据,所有分片共同保证数据的完整性和可用性。
- 作用:通过分片链存储 Rollup 数据,可以降低单个区块链的负载,提升整体扩展性。
- 优势:提高吞吐量,同时确保数据可用性。
Proto-Danksharding(又称 EIP-4844)是以太坊的一项重要升级提案,它引入了一种新的交易类型,称为 Blob Carrying Transaction,用于更高效地存储 Rollup 提交的数据。
- 工作原理:Rollup 提交的数据不会直接存储在以太坊的执行层,而是以“Blob”的形式存储在新的数据可用性层。这些 Blob 数据只需要在短期内可用即可,长期存储可以交由其他分布式存储方案完成。
- 优势:显著降低 Rollup 提交数据的成本,提高 Layer 2 的效率。
Validium 是一种类似于 ZK-Rollup 的扩展方案,但它将数据存储在链下,而不是在链上发布。这种方案依赖于 数据可用性委员会,即一组可信节点来维护数据的可用性。
- 优点:由于数据不在链上存储,Validium 的交易成本更低,扩展性更高。
- 缺点:数据可用性依赖于委员会的诚实行为,去中心化程度较低。