Merge pull request #236 from songzhibin97/patch-45

Update ch8.md
This commit is contained in:
YIN, Gang 2022-05-15 17:09:58 +08:00 committed by GitHub
commit 6e7f509aac
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

2
ch8.md
View File

@ -523,7 +523,7 @@ while (true) {
当一个系统在部分节点发生故障、不遵守协议、甚至恶意攻击、扰乱网络时仍然能继续正确工作,称之为 **拜占庭容错Byzantine fault-tolerant** 的,这种担忧在某些特定情况下是有意义的:
* 在航空航天环境中,计算机内存或 CPU 寄存器中的数据可能被辐射破坏导致其以任意不可预知的方式响应其他节点。由于系统故障非常昂贵例如飞机撞毁和炸死船上所有人员或火箭与国际空间站相撞飞行控制系统必须容忍拜占庭故障【81,82】。
* 在多个参与组织的系统中,一些参与者可能会试图欺骗或骗他人。在这种情况下节点仅仅信任另一个节点的消息是不安全的因为它们可能是出于恶意的目的而被发送的。例如像比特币和其他区块链一样的对等网络可以被认为是让互不信任的各方同意交易是否发生的一种方式而不依赖于中心机构central authority【83】。
* 在多个参与组织的系统中,一些参与者可能会试图欺骗或骗他人。在这种情况下节点仅仅信任另一个节点的消息是不安全的因为它们可能是出于恶意的目的而被发送的。例如像比特币和其他区块链一样的对等网络可以被认为是让互不信任的各方同意交易是否发生的一种方式而不依赖于中心机构central authority【83】。
然而在本书讨论的那些系统中我们通常可以安全地假设没有拜占庭式的错误。在你的数据中心里所有的节点都是由你的组织控制的所以他们可以信任辐射水平足够低内存损坏不是一个大问题。制作拜占庭容错系统的协议相当复杂【84】而容错嵌入式系统依赖于硬件层面的支持【81】。在大多数服务器端数据系统中部署拜占庭容错解决方案的成本使其变得不切实际。