NIP-13 为 Nostr 事件定义了一个工作量证明系统,要求创建事件时付出计算努力,作为防止垃圾信息的机制。

工作原理

工作量证明通过找到具有指定数量前导零位的事件 ID(SHA256 哈希)来证明:

  1. 难度:以前导零位数衡量(例如,20 位 = 平均 2^20 次尝试)
  2. Nonce 标签:事件包含带有 nonce 值和目标难度的 nonce 标签
  3. 验证:中继和客户端可以快速验证工作已完成
{
  "tags": [["nonce", "12345", "20"]],
  ...
}

难度级别

位数平均尝试次数典型用途
8256最小垃圾信息威慑
1665,536轻度过滤
201,048,576中度保护
2416,777,216强垃圾信息抵抗

用例

  • 中继准入:中继可以要求事件接受的最低工作量证明
  • 速率限制:账户注册等操作要求更高难度
  • 垃圾过滤:客户端可以在信息流中优先显示高工作量证明的事件
  • 信誉引导:新账户可以通过工作量证明展示承诺

限制

  • 有利于拥有强大硬件的用户
  • 能源消耗问题
  • 不能防止所有垃圾信息,只是提高了成本

相关