深度问题

深度问题

内容提要:

  1. IOTA与区块链有什么不同?
  2. 什么是马尔科夫链蒙特卡罗无规行走算法?
  3. 什么是协调器,为什么需要协调器?
  4. 为什么需要手动共享节点?
  5. 什么是快照?
  6. 什么是本地快照?
  7. 什么是永久节点?
  8. 永久节点如何工作?
  9. 为什么IOTA使用基于三进制的逻辑?
  10. IOTA是否需要基于三进制的处理器才能运行?
  11. 什么是网络受限工作量证明?

IOTA与区块链有什么不同?

首先需要理解区块链的工作原理。点击查看3Blue1Brown的视频,开始了解区块链的工作原理。将IOTA(或更具体而言:缠结)与区块链进行比较会发现,两者存在许多差异与相似之处。

数据结构

区块链由一系列顺序相链的区块构成,其中每个区块都引用前一区块,类似于链表。区块中包含多个交易,并且或多或少按照规则的离散时间间隔加入其中。在缠结中,每笔交易(不是指交易块)引用两笔以前的交易,并没有形成链表,而是一个复杂的网络结构,在数学中称为有向无环图,简称DAG。 因为所有的引用指针都指向相同的方向,并且任何一个交易的引用路径不会返回到同一个交易(换句话说,没有循环),构成非循环结构,因此通过指针和交易形成的边缘和顶点构成了有向图。重要的是,这种DAG结构允许交易同步,异步和持续的发布,而不像区块链中区块是在离散的时间间隔上进行扩展。

深度问题

你提到了一个用于tip选择的马尔科夫链蒙特卡罗无规行走算法,那是什么

什么是马尔可夫链?

马尔可夫链是一个“随机模型,描述一系列可能发生的事件,其中每个事件的概率仅取决于前一事件的状态。”

在概率论和相关领域,以俄罗斯数学家安德烈-马尔可夫命名的马尔可夫过程是满足马尔可夫性质(有时称为“无记忆”)的随机过程。简单说就是,一个过程满足马尔可夫性质就是指如果一个人只根据其当前状态就可以预测该过程的未来,正如他能够知道该过程的全部历史一样,因此独立于这种历史;即,条件仅仅是该系统的当前状态,而其未来和过去的结果状态是完全独立的。参考:维基百科 

什么是蒙特卡洛算法? 根据维基百科:

在计算中,蒙特卡洛算法是一种随机算法,其输出在某些(通常很小)的概率下可能不正确。参考:维基百科

什么是无规游走? 根据维基百科:

无规行走是一个数学对象,被称为随机或随机过程,描述一个由一系列随机步骤组成的路径,例如整数(或图)等数学空间。参考:维基百科

什么是tip?

什么是tip? “缠结”中的tip仅仅是一笔尚未经过其他交易验证的交易。请记住,在网络中的另一个节点选择两笔交易进行验证与此信息通过网络广播(即等待时间)之间存在时间延迟。

将这三个概念放在一起看,你会发现这是一个“无记忆”的随机连续步骤,它描述了一个指向tip(一笔可能是由于延迟而未被批准的交易)的数学空间路径(在我们的例子中,DAG结构的缠结组成了交易和引用指针)。如果要详细了解IOTA的马尔可夫链蒙特卡洛无规行走tip选择算法的工作原理,请参阅此系列博客文章:英文版:图解介绍缠结, 中文版:

马尔可夫链蒙特卡洛无规行走的tip选择算法如何被强制执行?

它不能被强制执行。

该算法的结果本质上是随机的,所以不可能按照什么策略来选择要验证的交易,甚至根本不可能强制执行tip的选择,因为不可能知道在某个交易发出时其他节点知道什么(例如一笔交易是否是tip)。在没有其他tip选择算法可能使一个节点优于默认tip选择算法的情况下,默认算法所需要做的是避免懒惰,贪婪和欺骗。 这就是所谓的纳什均衡,但是因为纳什均衡中假定存在理性行为者,所以也有必要防止试图攻击该系统的非理性行为者(参见下一个问题)。 欲了解更多信息,请参阅:缠结中的均衡 

什么是协调器,为什么需要协调器?

IOTA的安全性依赖于完全去中心化,分布式和无需授权技术的本质特征:由于对攻击者的资源要求巨大,所以攻击者不可能对网络造成恶意影响。在区块链中,所有矿工的累积工作量证明可以确保网络免受攻击。 IOTA从本质上就与其不同,在IOTA中,因为每笔交易都需要少量的工作量证明和/或需要少量带宽,所以,交易的通信吞吐量是保证网络安全的因素。发生的交易越多,网络就越安全。更详细的解释可以在“缠结白皮书”(第19页)的第4节中找到:

从上述讨论中得出,认识到不等式λ>μ对于系统安全的结论为真是非常重要的。换句话说,与攻击者的计算能力相比,“诚实”交易的输入流量应该很大。否则,估算(12)将是无用的。这表明基于Tangle的系统早期需要采取额外的安全措施,例如检查点。

然而,目前,低交易吞吐量使得上述假设不成立,并且上述估算结果(12)实际上是无用的。白皮书中提到的确保缠结早期安全性所需的附加措施(如检查点),是以协调器发布的“里程碑”交易形式出现,协调器是在缠结中发布数字签署交易和它们位置的特殊节点。协调器采用了与其他节点相同的方法发布交易,唯一的区别是它也签署了位置,因此这之后它们不能被重新附加到不同的位置。建议其他节点不要在意交易确认的问题,直到被协调器的里程碑交易直接或间接引用。

IOTA基金会拥有一支由数学,经济学,博弈论,图论,概率论,物理学,计算机科学等背景知识的研究人员组成的团队,他们就缠结安全性和激励的假设提出一些复杂的问题。这些问题都围绕着如何确保IOTA成为最安全,可拓展,分布式,无需授权和去中心化的技术。这就需要去除协调器,除此之外,这也是IOTA基金会和参与该项目的每个人所能接受的唯一选择。虽然IOTA基金会希望能够在2018年底之前撤销协调器,但这些都是在不确定时间表下的复杂问题,这也取决于IOTA基金会所能控制范围之外的其他因素。

例如,移除协调器所需的最关键因素是IOTA技术的更大规模应用,网络上交易的吞吐量满足基本的安全设定,即诚实交易的累积吞吐量要大于攻击者可以实际发起的吞吐量。

为什么IOTA没有自动节点发现功能,而需要手动共享节点?

IOTA的另一个安全特征,除了作恶者无法在网络上发布大部分交易外,还有一方面是作恶者无法看到大部分网络(即所谓的“遍在性”)。IOTA专为大多数设备设计的,从而形成的无线自组织网络物联网环境。在这种环境中,不可能与无线网络范围之外的其他人对等连接。

通过要求全节点运营者手动找到邻居节点,从而在互联网上模拟这种网状的网络环境(诚然是不完美的)。此功能可以通过限制作恶者查看全网能力,并发布比全网已完成工作量更多的交易,以此来阻止作恶者对网络可能产生的严重影响。

什么是快照?

IOTA网络支持大量的交易。所有IOTA完整节点必须处理并存储所有这些交易,这导致存储需求不断增加。为了将所需的存储量保持合理的大小,有时就需要执行快照(大约每两个月执行一次)。这本质上是对账本的“修剪”,它删除了账本上没有正余额的所有交易和地址。在修剪结束时,我们会剩下一个基本分类、账本,其中有所有包含IOTA的地址列表及其各自的余额。

在快照之后,一个新的缠结将建立在这个基础的账本之上,直至它增长到需要进行另一个快照。

将来,快照将在本地进行,节点会自行决定何时执行本地快照(请参阅下一个问题)。但目前这仍然是一个协同性的操作:

  • 快照账本由IOTA基金会准备。
  • 由IOTA社区的全节点运营者验证账本,以确保IOTA基金会正确处理了所有交易历史记录,并且各个地址的IOTA余额保持一致。
  • 只有在快照数据达成共识后,才会放行通过快照,节点可以通过IOTA新版本的IRI切换到新的账本。

完整节点不会自动得到通知,没有“秘密”的API调用,因此完整节点也可以选择继续运行旧版本并仍然是网络的一部分。重申一下,完整节点可以选择保持原有数据库并保留历史记录(假设不存在数据存储问题),或者也可以删除旧数据。

什么是本地快照?

因为由IOTA基金会组织的协同快照不仅对网络的连续性产生干扰,而且也不是完全去中心化的(事实上是IOTA基金会管理),因此未来将需要全节点在存储空间压力过大时执行此操作。但是,全节点在执行本地快照时必须小心,不要过于频繁快照,因为如果快照频率过高,则会有较高风险在不符合共识的情况下构建一个子网络。这就像矿工只存储区块链中最后一个区块中包含的信息,有可能导致这个区块最终不会成为最长链的一部分,而且成为被遗弃的分叉。

本地快照正在由IOTA核心开发团队积极开发。

什么是永久节点?

永久节点是存储整个缠结历史的节点。由于流通在缠结上的数据量对于大多数节点来说将变成累赘,并且存储它也没有任何激励,因此需要永久节点来长时间存储缠结完整的历史记录。

IOTA的核心是安全,无需信任,无成本的协议,并以IOTA通证的形式快速传递数据和/或价值。像任何分布式账本技术一样,激励是其工作的动力。为其他人存储大量数据并不会得到很好的激励,因此在没有奖励的情况下,就没有人去这样做的。尽管设想未来使用IOTA的所有潜在商业模式纯属猜测,但基于经济学的基本规则,为其他人存储数据,就必须提供相应的经济激励。

永久节点如何工作?

通常,与比特币区块链进行对比是很有帮助的。比特币的经验法则是,一旦一个区块具有的深度大于或等于6个区块,它就可以被安全地视为共识的永久部分。想象一个新矿工出现在比特币区块链上。这个矿工是否需要知道所有区块中包含的所有信息超过6个或更多区块呢? 不,这个矿工只需要知道自己在6个区块之前的比特币(或者更准确地说,哪个地址有UTXOs)。新来的矿工不需要知道他们是如何到达那里的。矿工仅仅需要了解那6个区块之前哪些地址拥有哪些比特币,而删除区块链中更深层所存储的任何信息(清理内存中的空间), 然后仅仅基于当前最长的区块链,验证最后的6个区块,并开始建立新的区块。

现在,想象一下每一个比特币矿工的做法,假定只有一个“永久矿工”,它存储记录了到2009年第一个区块的整个比特币区块链。这个永久矿工之所以这样做,是因为有一些场景,人们希望审计很久以前的一笔特定的交易和/或数据。永久矿工可以设定一个价格来提供此服务(任何人都可能猜测精确的业务模型),从而示例所有的哈希指针,以表示分散的区块链,如果哈希指针与当前的分布式区块链一致,则客户可以知道数据没有被修改过。
这同样在缠结中也相似。因为缠结会比区块链在单位时间内处理更多的确认交易,所以存储缠结的整个历史记录在大多数设备上是不可行的,也是不合逻辑的。相反,全节点会偶尔使用本地快照来删除不再需要的数据。根据定义,永久节点将不会进行本地快照,而是存储整个缠结的历史记录,允许任何时间点进行交易的审核。

IOTA核心开发团队正在积极开发永久节点的原型。

为什么IOTA使用基于三进制的逻辑?

尽管二进制数字系统是实现基本计算机算术运算中最常用的数字表示方案,但是同时还存在大量的可选数字系统,都可以非常成功地用于计算机算法中。 “什么是最有效的数字系统基数?”这个问题已经提出了很多次,但也许最有说服力的赞成三进制数字系统的论点,是由Henry S. Warren在他的开创性著作“黑客的喜悦”(pp.233-234)中所提供的。他的分析非常重要,因为他将算术计数和功耗资源优化都视为所用数字系统基数的函数。他的结论 - 三进制计数比二进制计数效率高出5.6% - 这很有启发性。关于三进制算术更有趣的是可以考虑允许的数字集合{-1,0,1}。在这种情况下,每个整数的表示都是唯一的,更重要的是,对于负数的表示,不需要使用二进制所需的一些人工技巧,如2的补码表示法。多级逻辑领域的进步将使三元电路的设计越来越流行。

进一步阅读:

美国科学家, 89卷,第6期 - 计算科学:以三为基数(B. Hayes,2001):
“人们以十个十个地来数数,机器则是两个两个地数,这几乎总结了我们在这个星球上进行算术的方式,但是还有其他数不胜数的方法,在这里我想为以三为基数系统提供三种欢呼。这个序列中的数字 - 从0,1,2,10,11,12,20,21,22,100,101开始 - 并不像它们的小数和二进制表亲那样广为人知或被广泛使用,但它们有各自的魅力,它们是计数系统中的金发女孩选择:以二为基数太小,以十为基数则太大,基数三就恰到好处。“

计算机编程艺术(D. Knuth,2014)
“也许最漂亮的数字系统是平衡的三元符号。”

国际计算机科学和信息技术杂志,第5卷,第4期 - 用于改进的高级计算的平衡三元逻辑(S.Ahmad,M.Alam,2014):
“本文旨在将平衡的三元逻辑作为我们现代计算机器在性能,简单性,成本和未来前景方面最适合我们现代计算机的逻辑系统。”

Radix Economy Wikipedia | 平衡三进制  维基百科 | 用于资源利用高效的人工智能应用的三元神经网络

IOTA是否需要基于三进制的处理器才能运行?

不。目前IOTA全节点主要(如果不是唯一的话)基于二进制处理器运行IOTA的参考实现。但是,由于IOTA专为新兴的物联网行业打造,无信赖地识别设备,保护其数据并允许其购买和销售资源而不需要可信的中介,这一点非常重要,专用于专用微控制器将成为任何物联网设备的标准组件。随着消费者需要更多的交互式应用,软件程序的进步迫使每个显示设备都增加GPU,而且计算机和手机显示技术的发展使得能够产生越来越高的分辨率。物联网设备也需要类似的需求,因为它们需要能够安全地识别自己,交换加密的数据,以及在其附近使用不受信任的设备购买和出售稀缺资源 - 它们将生成和依赖数据的计算资源,电力,CPU,带宽和内存,以及设备本身特有的稀缺资源,如汽车停车位,无人机空间等。

此外,这些任务所需的专用微控制器组件 - 包括数字签名消息,加密和解密数据以及执行最低限度的工作量验证等任务 - 可以用少至几百个逻辑门完成。因此它比人眼可以看到的更小,并且从设备消耗可忽略的能量。鉴于摩尔定律已近黄昏,并且因为它不需要任何现有二进制组件的任何额外硬件升级,所以基于三态逻辑的微控制器将是可能的最强大且节能的集成电路,并且其中一些已经被积极开发。出于这个原因,IOTA决定设计一个基于三进制的交易结算和数据传输层协议,以便在专用的基于三态的微控制器组件上运行,这将不可避免地成为新兴物联网行业的标准。

什么是网络受限工作量证明?

让我们回到缠结的基本安全假设:“诚实交易”的流量必须大于攻击者可以产生的流量。工作证明的主要目的是强加任意成本,虽然很小,但对于发出交易为某个给定的难度级别寻找一个随机数,这样与nonce相结合的交易的散列就采取了某种形式,这使得恶意行为者在IOTA网络上发起大量交易的成本很高。这是因为计算能力是一种稀缺资源,攻击者无法比诚实交易者的累积计算能力积累更多的计算能力,因为诚实的人很多,而攻击者很少。这只是简单数量上的力量。

但是,计算能力并不是唯一的稀缺资源。带宽也是一种稀缺资源。随着世界从4G变为​​5G,以及在网络中立性的激烈辩论中,带宽的稀缺性已经越来越明显。这是一个基本的经济规律,当稀缺资源的需求比供应更快时,其价格会上涨。如果网络的总可用带宽饱和,带宽将变得昂贵。因此,在未来,由于我们所居住的世界的物理规律,带宽的自然稀缺将有效地完成同样的事情,而不是要求使用工作量证明的任意确定的计算成本 -相对于诚实交易的累积流量,带宽使得攻击者发出更多的交易是不可行且昂贵的。