Skip to content

调研:Fractal Bitcoin

Fractal 使用比特币核心代码递归扩展,区块确认 30 秒,每层容量增加 20 倍。由 UniSat 团队推出。


调研动机

  • 技术创新:基于 Bitcoin Core 递归扩展,区块确认仅 30 秒
  • 团队背景:由比特币顶级开发商 UniSat 推出
  • 业务需求:业务侧计划接入,需提前技术储备

产品背景

Fractal 旨在通过提高交易吞吐量来扩展比特币,支持 Ordinals、Runes、BRC-20 等新兴标准。采用合并挖矿与无需许可挖矿结合的混合机制。

技术架构

graph TB
    BTC["🟠 Bitcoin 主链<br/>600s 出块"]

    BTC -->|"联合挖矿<br/>共享算力"| F1["Fractal Layer 1<br/>30s 出块<br/>20x 容量"]

    F1 -->|"递归扩展"| F2["Fractal Layer 2<br/>30s 出块<br/>400x 容量"]

    F2 -->|"理论上可继续"| F3["Fractal Layer N<br/>..."]

    BTC <-->|"Elevator<br/>资产转移接口"| F1
    F1 <-->|"Elevator"| F2

核心参数修改(基于 Bitcoin Core v24.0.1)

参数BitcoinFractal
区块时间600 秒30 秒
减半周期210,000 区块2,100,000 区块
挖矿总量2,100 万 BTC~1.05 亿 FB
难度调整每 2016 区块ASERT 算法,半衰期 6 小时
新增特性OP_CAT 操作码、Ordinals/BRC-20 支持

Cadence Mining(节奏挖矿)

graph LR
    subgraph "每 3 个区块的周期"
        B1["区块 1<br/>传统 PoW"] --> B2["区块 2<br/>传统 PoW"]
        B2 --> B3["区块 3<br/>联合挖矿"]
    end

    B3 -.->|"BTC 矿工<br/>顺带挖矿"| BTC["Bitcoin 主链矿工"]
  • 传统 PoW(约 2/3):独立的 Fractal 矿工
  • 联合挖矿(约 1/3):BTC 矿工在挖 BTC 时顺带挖 Fractal

联合挖矿原理

矿工在比特币 Coinbase 交易的解锁脚本中嵌入 Fractal 区块头信息。如果找到的 nonce 不满足 BTC 难度但满足 Fractal 难度,就完成了一次联合挖矿。

安全性评估:假设千分之一的 BTC 矿工参与,可带来约 703 PH/s 的算力保障。

BCSP 愿景

Fractal 提出了 BCSP(Bitcoin Core Software Package) — 将 Bitcoin Core 封装为可独立部署的区块链软件包,支持水平和垂直方向的递归实例化。

graph TB
    BCSP["BCSP<br/>Bitcoin Core 软件包"]

    BCSP --> H["水平扩展<br/>多个平行实例"]
    BCSP --> V["垂直扩展<br/>递归嵌套实例"]

    H --> H1["实例 A"]
    H --> H2["实例 B"]
    V --> V1["Layer 1 → Layer 2 → Layer 3"]

    BCSP --> ELEV["Elevator<br/>通用资产转移接口<br/>跨层无缝转移"]

与链上分片的区别:BCSP 实例可独立运行,共识源自比特币,无需重构。

注:BCSP 愿景目前尚未披露具体技术实现细节。

安全考虑

交易重放风险:低

由于 UTXO 计算涉及祖先交易,在两条链上构造完全相同的交易几乎不可能。

钓鱼签名风险:存在

经测试,在 Fractal 上构造的签名请求可能被恶意用于 BTC 主网。PSBT 离线签名对此完全无效。

graph LR
    A["攻击者在 Fractal<br/>构造签名请求"] -->|"诱导用户签名"| B["用户签名"]
    B -->|"签名数据可在<br/>BTC 主网使用"| C["💀 BTC 被盗"]

    style C fill:#ffcdd2

结论:需要在钱包侧做好链识别与签名请求拦截。