自比特币开始以及认可其工作证明(PoW)共识模型作为区块链网络作为分布式分类账的合法性的机制以来,已经尝试和引入了许多其他共识机制。这些新的共识机制基于拜占庭容错,主要侧重于减少与工作采矿密集型过程相关的能源效率低下问题。
经过时间的证明
经验证明(PoET)是这些共识机制之一,旨在改进工作共识的证明,并为许可的区块链网络提供新的替代方案。
PoET是由芯片制造巨头英特尔于2016年开发的,作为主要用于许可区块链网络的有效共识机制。 PoET现在是Hyperledger Sawtooth模块化框架的首选共识模型,是实现和试验分布式分类帐系统的流行工具。
PoET共识的一个关键组成部分是与其一起工作的创新技术 – 英特尔大肆宣传的软件保护扩展(SGX)编程参考手册。 SGX于2015年推出,采用英特尔第六代核心处理器,可作为可信执行环境(TEE),允许选择的可信代码独立于其运行的应用程序运行。
在了解PoET的整体共识如何工作之前,了解一下SGX如何运作至关重要。
什么是SGX?
SGX是一项复杂的技术,但从本质上讲,它实际上是一组CPU指令,应用程序使用它来隔离代码和数据的特定可信区域。它为开发人员提供了一个安全的飞地,以保护敏感数据或代码免受外部干扰或检查。
使用SGX在TEE中运行的代码可以在源自处理器的平台或应用程序内生成签名证明,并提供代码已在受信任环境中正确初始化的身份验证。此功能对PoET共识的功能具有重要意义,但也为进入和限制其使用创造了固有障碍。
受保护代码存储在SGX中的内存对于控制对平台的物理访问并具有访问其内存的最高身份验证的恶意用户来说甚至是安全的。作为一项安全功能,由于此功能提供的潜在安全性,SGX获得了很高的期望。
在PoET共识的背景下,SGX作为参与者加入网络并验证他们正在运行PoET共识执行所必需的可信代码的机制。
PoET如何运作
PoET共识是一种有效的工作证明形式,它消除了对采矿密集型流程的需求,并将其替换为网络参与者的随机计时器系统。基本上,每个网络参与者被给予一个随机的计时器对象,并且第一个到期的计时器“唤醒”成为块头的参与者并产生新的块。
关于拜占庭容错,这为“随机领导者选择问题”提供了必要且有效的随机解决方案。基本上,这个问题是如何确定拜占庭容错系统中一轮共识的领导者。例如,Practical Byzantine Fault Tolerance使用循环风格格式,而比特币的工作证明使用中本聪的共识,其中领导者是由任何人解决每个块轮次的计算密集型加密拼图。
PoET共识可分为两个阶段,加入网络并使用SGX证明验证TEE以及实际的挖掘抽奖时间。
网络验证和SGX
这是共识的初始阶段,也是新交所发挥重要作用的地方。如前所述,在使用SGX时,您可以生成一个已签名的证明,即您正在运行在TEE中正确设置的受信任代码。
在PoET中,网络中的潜在参与者下载可信代码并使用来自SGX的签名证明将“加入”消息传播到网络,SGX已生成公钥/私钥对。然后,节点网络接受或拒绝证明。如果被接受,则参与者加入网络并且可以参与经过时间,随机抽签选择过程。
经过时间的随机选择
这是共识机制的第二个也是最后一个阶段。在每轮共识中,网络参与者从可信代码接收签名的计时器对象,该对象完全随机化。这个想法是减轻任何潜在的恶意行为者游戏系统并尝试一致地接收更短的计时器,以便他们可以产生更多的块。
每个参与者随后等待他们的随机计时器到期。第一个到期的网络参与者计时器将签名证书传播到网络,表明它们是该轮的随机区块领导者。消息已通过身份验证,并生成块。该轮然后重新开始。
签名认证的传播实际上发生在所有网络参与者身上,即使他们没有获胜。这是为了确保两件事:
实际上,每个节点都从可信代码中获得一个随机对象计时器。
节点等待对象给定的指定时间段。
如您所见,该过程完全是随机的,并且与SGX技术的集成可确保不会对协议运行的可信代码进行操作。还有其他一些安全功能,例如用于监视可疑节点一致地赢得彩票的算法,或者始终具有较短的定时器,其中出现模式。
PoET共识机制非常高效,能够扩展到数千个节点而不会拥堵。令人担忧的是,它在很大程度上依赖于SGX作为协议的基础,而且最近,这些担忧被放大了。
本月早些时候,伦敦帝国理工学院的大型数据与系统(LSDS)小组在SGX发现了一个被称为“Foreshadow”的关键漏洞,可用于攻击新交所的安全区域。
您可能已经熟悉了攻击的起源,因为主流媒体广泛关注今年早些时候在现代芯片处理器中发现的“幽灵”漏洞。本月早些时候LSDS团队已经阐明了Foreshadow的攻击,并且它是Spectre漏洞的改编版本。仍然是一个正在发展的故事,重要的是要关注多种原因,包括PoET共识的完整性。
使用PoET的优点和缺点
PoET是高效的,并不像工作系统的证据那样占用资源,但它也有一些担忧。那么它作为分布式总账网络的共识机制使用的一般优点和缺点是什么?
优点
PoET是工作系统证明效率的重大改进。同时,它还为“随机领导者选择问题”提供了一个很好的解决方案,而不需要资源密集型或需要复杂的铆接机制和激励结构,并证明了利益共识。
PoET也是许可网络的一个很好的共识机制,这就是为什么它是Hyperledger Sawtooth的首选共识机制。最重要的是,它可以有效扩展,可以用作使用Hyperledger Sawtooth测试环境的“即插即用”模型。
缺点
SGX是一项备受赞誉和创新的技术,但最近的发展显然引起了人们对其与PoET共识的使用的担忧。英特尔或许能够解决有关关键漏洞的问题,但这里的缺点是明显且必要地依赖于专用硬件的安全性。
不仅如此,SGX完全由英特尔制造,因此对共识模式的依赖延伸至英特尔公司,即第三方。这种依赖的概念违背了加密货币试图通过区块链网络实现的新范式,消除了对中间人的信任。
结论
PoET代表了为分布式分类帐系统提供拜占庭容错共识机制的另一个裂缝。 它非常高效,并与另一项新技术本身SGX合作。
展望未来,观察新加坡证券交易所的发展将对PoET产生重大影响,成为可持续的共识模式。 目前,它是Hyperledger Sawtooth的优秀工具,在模块化区块链框架的实验和开发中发挥着至关重要的作用。