论文标题
通过多播广播的正确性:图形和形式上
Correctness of Broadcast via Multicast: Graphically and Formally
论文作者
论文摘要
维持多个各方之间的数据一致性要求节点反复将数据发送给所有其他节点。例如,区块链网络的节点必须传播它们在整个网络中创建的块。科学文献通常具有理想的观点,即通过直接向所有节点广播来执行此类数据分布,而实际上数据是通过重复的多播分布的。由于通常仅针对理想设置建立了一致性维护协议的正确性和安全性,因此至关重要的是,这些属性将这些属性延续到现实世界中的实现。因此,希望证明理想和真实行为是等效的。 在本文中描述的工作中,我们通过证明此等价语句的更简单的变体迈出了重要的一步。简化是我们仅考虑一对网络拓扑,但它说明了使用任意拓扑遇到的重要现象。为了描述分布数据的系统,我们使用了特定于域的过程语言,该过程与一类Petri Nets相对应,并嵌入到通用过程中。这样,我们可以使用直观的图形符号概述我们的证明,并利用实际证明中的富处理计算理论,使用Isabelle证明助手对此进行了机器检查。
Maintaining data consistency among multiple parties requires nodes to repeatedly send data to all other nodes. For example, the nodes of a blockchain network have to disseminate the blocks they create across the whole network. The scientific literature typically takes the ideal perspective that such data distribution is performed by broadcasting to all nodes directly, while in practice data is distributed by repeated multicast. Since correctness and security of consistency maintenance protocols usually have been established for the ideal setting only, it is vital to show that these properties carry over to real-world implementations. Therefore, it is desirable to prove that the ideal and the real behavior are equivalent. In the work described in this paper, we take an important step towards such a proof by proving a simpler variant of this equivalence statement. The simplification is that we consider only a concrete pair of network topologies, which nevertheless illustrates important phenomena encountered with arbitrary topologies. For describing systems that distribute data, we use a domain-specific language of processes that corresponds to a class of Petri nets and is embedded in a general-purpose process calculus. This way, we can outline our proof using an intuitive graphical notation and leverage the rich theory of process calculi in the actual proof, which is machine-checked using the Isabelle proof assistant.