一种 Tendermint 轻客户端
分布式、并行与集群计算
2020-10-16 v2 计算机科学中的逻辑
摘要
在 Tendermint 区块链中,权益证明机制与底层共识算法带来一种动态故障模型,意味着活跃验证者(签署区块的节点)可能随时间变化,且这些验证者的法定多数仅在一个有限时间段(称为信任期)内被假定为正确。验证者集合的变更由区块链应用控制,并提交于每个区块中。为检查区块链应用在某一高度 h 的状态,需知晓该高度的验证者集合,以便验证相应数字签名与哈希。确定高度 h 验证者集合的朴素方法要求:(i) 下载 h 之前的所有区块,(ii) 通过检查数字签名与哈希验证区块,以及 (iii) 执行相应交易以重现验证者集合的变更。这可能极其缓慢且计算与数据密集。本文形式化了 Tendermint 所施加的动态故障模型,并描述了一种轻客户端协议,可在实际设定中显著减少需下载的数据量及所需计算昂贵的签名验证操作次数。除数学证明外,我们以 TLA+ 形式化该轻客户端协议,并用 APALACHE 模型检查器核查了安全性与活性。
引用
@article{arxiv.2010.07031,
title = {A Tendermint Light Client},
author = {Sean Braithwaite and Ethan Buchman and Ismail Khoffi and Igor Konnov and Zarko Milosevic and Romain Ruetschi and Josef Widder},
journal= {arXiv preprint arXiv:2010.07031},
year = {2020}
}