跳到主要内容

⚒️ 读懂 PoW: 无处不在

English Version: Mirror.

0. PoW 简介

工作量证明 (PoW, "一个 CPU 一票") 是一种性感的机制.

它实现了许多功能, 解决了许多问题, 包括

  • 去中心化和无需许可的系统 (比特币)
  • 总计算能力大时, 安全性高
  • 真正干净的私人货币 (干净的 ETH)
  • 相对公平的代币发布 (又是比特币)

唯一的缺点可能是 "潜在垄断" 和 "能源消耗".

但在我看来 (我去年大二上了一门关于废物和能源的课, 并做了关于比特币和废物的研究), 用一些能源来支持一个去中心化的全球金融系统是可以接受的.

总的来说, PoW 是一个很好的机制. 尽管以太坊多年来一直在努力将 PoW 转换为 PoS, 但在以太坊的整体系统和网络或应用层中, PoW 仍占主导地位.

PoW 无处不在, 它们都是 PoW.

1. PoW 地址

EOA & 合约

地址字符串 (EOA 地址或合约地址) 是完全随机生成的, 因此要生成好看的地址 (如 0xdef1...) 或更有效的地址 (如带有更多 0 的地址), 需要进行大量随机计算, 就像 PoW 一样.

一些挖掘地址的工具:

Function Selector

另一种 "地址" 是 EVM 函数选择器. 通常, 开发人员 (尤其是 MEV 开发者) 会寻找一个有效的、包含更多 0 的地址, 以节省气体. 还有一个函数选择器数据库 (4byte.directorysamczsun's eth sig).

一些用于挖掘函数选择器的工具:

Uniswap v4 Hooks

一个较新的需要 PoW 的 "地址" 是 Uniswap v4 钩子. "钩子的权限由钩子地址决定, 因此你必须磨一个具有所需权限的地址". 这非常 "肮脏而聪明".

2. PoW 防 DDoS

在理想世界中, 最高的交易质量意味着: 任何人都可以发送交易 (无审查); 无垃圾邮件; 低费用.

然而, 我们无法实现完美的网络. PoW 是一种简单而优雅的方法, 通过增加额外的计算层来防止垃圾邮件.

测试网水龙头

我在日常开发和测试中经常使用 Goerli PoW Faucet.

通常的测试网龙头是注册一个账户, 然后接收固定数量的测试网 ETH, 而 PoW 测试网龙头则允许你根据消耗的工作量来接收更多的测试网 ETH. 更灵活.

PoW NFT 合约

在流行的 NFT 项目 mint 的初期, gas 通常会飙升到一个非常高的水平, 因为很多人都在进行相同的 mint 操作, 使得网络的整体使用率非常高.

该 NFT 合约 在合约中加入了类似于 "PoW" 的功能, 从而增加了节点方面的 gas 使用量和 mint 成本. 这可以防止 DDoS, 让更多合适的人获得 NFT.

Arbitrum Sequencer PoW Connection

Rollup 的单一排序器模式总是面临可靠性和垃圾邮件问题. 有多种 Rollup 排序器宕机的情况: Arbitrum Token LaunchOptimism Delay.

Arbitrum 曾提议通过 PoW 对连接进行评分, 以阻止 MEV 搜索者对 Arbitrum 排序器进行大规模的 spam attack.

3. 结语

在金融领域, 要想获胜, 你必须成为第一、更聪明或作弊.

而 PoW 只要求你成为第一. 也许这样更公平.