
- 账户抽象模块允许用户使用由比特币私钥、以太坊私钥或电子邮件控制的合约账户。用户可以使用合约账户为不同的设备或 DApp 生成子账户,并根据设置执行默认操作或进行检查,如账户初始化、电子邮件账户 DKIM 验证、交易验证、账户恢复、权限管理和资产锁定。账户抽象模块还提供交易打包器服务,实现帮助用户支付 Gas 功能。
- RPC 服务允许用户通过钱包或 DApp 发起交易或发送签名消息。B² RPC 服务进行初步验证后,将交易或签名细节发送到内存池服务或进行账户抽象处理。交易打包器服务验证消息签名,并根据消息内容生成相应的交易信息,实现使用其它数字货币支付 Gas 或代付 Gas 功能。
- 内存池用于存储待处理的交易。序列器负责对用户提交的交易进行排序和打包,然后将其传递给 zkEVM 进行特定的交易执行。B² Network 通过 B²节点实现分散式序列服务,通过类似 DPoS 的机制更新序列器集合。
- zkEVM 兼容以太坊虚拟机(EVM),帮助开发人员构建安全的 DeFi、NFT 和其他 DApp。它还支持将 DApp 从其他 EVM 兼容链迁移到 B² Network。zkEVM 与 B² Network 的比特币索引模块结合,存储比特币的状态数据,使开发人员能够将比特币网络集成到 DApp 开发中。
- 聚合器从 zkEVM 获取序列器排序后的交易信息和状态信息。它们可以生成零知识证明,或聚合交易并整理证明细节,形成交易批处理哈希树。该树发送到数据可用性层进行备份,确保 Rollup 交易数据的可用性。
- 证明者的角色是为序列器提交的一批交易生成有效性证明。通过从聚合器获取的交易批处理和状态信息,证明者创建多个 ZK-STARK 证明,并通过 STARK 递归将它们绑定在一起生成单个广泛的 ZK-STARK。这个 ZK-STARK 通过 CIRCOM 组件传输到 SNARK 构建器,生成 ZK-SNARK 有效性证明,降低了 Gas 成本。生成的证明返回到聚合器。
- 同步器确保来自 B² Network 的信息同步到 Rollup 层,包括序列器信息和比特币交易数据等。
- Rollup 模块的 ZK 证明验证器:从分散式存储获取 Rollup 交易数据,并从 Rollup 层的聚合器获取 Rollup 交易的 merkle 树根哈希和 zk 证明数据。内部对存储的 Rollup 交易使用 merkle 树根哈希进行完整性检查,并使用 zk 证明数据验证交易的正确性和有效性。
- 存储模块的 ZK 证明验证器:验证分散式存储的存储节点提交的存储 zk 证明。验证通过后,B²节点将奖励分发给存储节点,激励它们持久存储 Rollup 数据的副本。
- 序列器选择器模块:实现了类似 DPoS 的机制,选择一组序列器为特定时期提供交易排序和打包服务。竞争成为序列器的个人或组织必须抵押一定数量的代币 BSQ,并准备必要的硬件资源。用户可以将其代币 BSQ 委托给竞争序列器位置的候选者。运营序列器服务的候选者可以获得一定比例的交易费和额外的代币 BSQ 奖励。

- 比特币索引模块:监视比特币网络上的区块和交易。获取最新的区块和交易后,生成零知识证明以确保交易信息的准确性,并将交易和相应的 zk 证明发送到 Rollup 层。zkEVM 收到比特币交易和 zk 证明后,对其进行验证并生成比特币状态。

- 比特币提交者模块:比特币提交者向比特币发送两种类型的交易:一种是将 Rollup 数据写入比特币,另一种是将 zk 证明验证承诺写入比特币。
- 验证器集合模块:验证器集合模块维护比特币 Layer 1 上的 Schnorr 签名成员。
- 零知识证明的验证程序转化为比特币脚本:将零知识证明的验证程序转化为基于与非门的逻辑门电路,并通过比特币脚本实现与非门、加法门和乘法门,最终构造出零知识证明的验证程序。
- Circuit Taproot 作为 B² Rollup 承诺:将 Bit Value Commitment 组装成逻辑门,构成电路二叉树,并将 Circuit Taproot 作为二叉树的根节点。Circuit Taproot 作为 B² Rollup 在比特币上提交的承诺,减小了发布尺寸。
- 验证和响应协议:B² Network 使用发布锁定奖励的 UTXO 交易作为解锁脚本,并利用 Taproot 脚本进行解锁。Prover 提前生成 Circuit Taproot Tree 的每个分支,并给定输入的哈希。Challenger 利用 preimage 执行脚本,验证输出是否与 Prover 的提交一致。如果不一致,可以利用 MAST 解锁整个 Taproot,并获得锁定的奖金。
- 挑战机制:B² Network 采用挑战机制,类似于 Arbitrum Rollup 的“交互式验证游戏”。观察者可以发起挑战,通过二分查找的方式执行门电路比特币脚本,寻找错误分支。最快找到错误分支的挑战者可以解锁锁定奖励的 UTXO,并获得奖励。如果没有成功挑战,Prover 将在挑战期结束后,通过时间锁脚本解锁 UTXO,取回奖励。





