郭馥毓 19030100315

1.前置知识

简单介绍比特币和分布式系统的有关概念,方便大家理解

共识

分布式系统中,为了保证一致性,所以节点对最终状态达成一致认可叫做共识

分布式系统概述

区块链可以看成是一个设计巧妙的数据库,在这里我们不得不提到分布式系统的一些基本概念

异步网络

你发给一个节点一个消息之后几秒钟都没有收到他的应答, 有可能这个节点计算非常慢, 但是也可能是节点crash或者网络延迟造成的, 你很难判断到底是发生了什么样的故障.

故障模型

byzantine failures(拜占庭事故)

节点的故障可能导致节点返回随意或者混乱的结果,要解决拜占庭式故障需要有同步网络, 并且故障节点必须小于1/3或者消息传递过程中不可篡改

crash-recovery failures ( 崩溃恢复事故)

节点的结果总是正确的,但消息回复的时间不保证,crash的节点可能是健忘的也可能是非健忘的,健忘即节点不一定保证crash前的状态信息

omission failures(省略错误)

节点的结果总是正确的,但消息回复的时间不保证,crash的节点一定是非健忘的

crash-stop failures(崩溃停止)