ClassZZ胶囊交换协议设计思想

我们要解决的另一个问题是确认时间。以比特币为例,经过7个区块就可以完成交易。由于创建每个块需要10分钟,理论上确认时间可能需要一个多小时。如果用户想买一杯咖啡,可能需要长达一个小时的时间来确认。这就引出了我们的第二个想法,边缘计算。我们创建了一个协议,如果事务发生在两个轻节点之间,支付方和收款人可以相互验证,并得到交易的即时确认。这在以前的网络中是不可能的,因为在移动设备上运行具有任何验证功能的节点是非常困难的。在本节中,我们将描述什么是轻节点,以及它们如何通过一个称为“胶囊交换协议”的过程彼此验证。

随着5G移动网络带宽的提高,移动设备不断接收和更新数据块成为可能。假设每个块为8mb,并且每个移动端存储最新的20个块,这将只占用160mb的磁盘空间,这比大多数移动游戏的大小都要小。在此之前,它们只需要存储哈希根。

定义5:轻节点节点是它所在位置的数字设备

(1)接收和更新最新块

(2)存储最后20个块

(3)存储每个历史块的Merkle root

每个轻节点都可以使用它们的哈希根来验证区块链中的每个块,从而使每个用户都成为链完整性的保护者。我们可能会有数百万个轻节点,而比特币(bitcoin)和以太坊(ethereum)则有数千个,EOS和TRON则不到100个。仅这一点就使CZZ比几乎所有现有的区块链项目更安全,在这些项目中,终端客户通常只运行在一个轻量级钱包上(或在交易所中存储硬币),由一个完整的节点以集中的方式维护。

假设Alice和Bob是轻节点,Alice想要发送Bob 20czz,我们称这个事务为TX。Bob需要验证的两个重要部分是:

(1) EC Schnorr签名的真实性,这部分比较简单。

(2) TX投入之前没有使用过,这部分比较困难。

在传统的比特币设置中,如果Bob不是一个挖矿节点,他将没有足够的信息来验证TX是否有效。因此,他将不得不依靠其他矿商来验证TX,将其封装在一个区块中,等待区块最终确认。

奇迹发生在两个轻节点之间。除了TX, Alice还可以从最近的块(从完整节点获得)向Bob发送UTXO树事务输入的Merkle分支。然后,

(1)假设当前块高度为t, Bob可以验证Alice的事务输入在最近的块Bt - u之前实际上没有被使用。

(2)假设u很小,Bob将存储所有的块Bt - u+1,…,Bt。因此,他可以局部检查TX的输入是否已使用到块高t。

(3)检查mempool中任何具有相同引用输入的事务。mempool通常只有几mb大。

 

在检查了TX的有效性之后,Bob有权选择是否接受交易,发送到mempool,并在上面签名确认,这就是我们所说的“胶囊”。因此,Alice和Bob几乎可以即时确认彼此的TX,这对于频繁的小额交易非常有用。

使用胶囊的优点是,如果有两个事务引用mempool中的相同输入,则矿工将直接接受胶囊,这将减少Alice双花的可能性。我们承认仍然存在两个胶囊到达时间非常接近,导致交易无效的风险。因此,对于大额交易,建议支付方仍应在区块链上等待确认。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值