本文是 介绍IOTA 系列文章的 第一篇,主要是针对那些 想进一步了解IOTA 背后工作原理的初学者。这里,为了让它更通俗易懂,我们并不会完全按照的白皮书的内容进行讲解,而是以配图的方式去粗略地 阐述 IOTA相关的基础概念。作为开场篇,我们主要介绍 什么是tangle ,并且如何在数学层面上学习IOTA。
在了解什么是tangle前,我们必须掌握计算科学中常用的数据结构directed graph(有向图) 。一个 directed graph是 由一些列通过 边线 连接起来的 定点集合 构造而成,如图1-1:
图1-1Tangle,作为 IOTA 背后 的基础数据结构,是一种持有交易集的特殊有向图。每一笔交易在对应于Tangle 中的一个顶点。当一笔新的交易想要加入Tangle时,它必须选择Tangle 中已有的两笔交易进行approve(认证) ,并为所选交易 建立连接。在图1-1的例子中,[交易5] 选择了 [交易2] 以及[交易3]进行认证。而一笔交易 大致意味者一笔转账,如a 转账 10 IOTAs 给b。这里,读者先不必深入什么是认证一笔交易,会在后面由详细介绍。
另外,我们称没有被认证的交易为 tip。在图1-1的例子中,[交易6] 为tip。按照规定,每一笔即将到来的交易都需要 选择两笔 tip 交易进行认证(该例子中至少为一笔)。而如何选择 两笔tip是IOTA 的关键技术。然而,为让文章更通俗易懂,我们先从一个简单的选择策略开始:每一笔即将加入的交易会在所有有效的tips 中,随机选择当中两笔交易进行认证。
当使用 随机选择策略(该技术称为 “均匀随机tip选择”) 时,为了让读者有一个更直观的选择效果,我们对此制作了一个虚拟模拟。该模拟是用于生成随机的tangles,tangle 中的 第一个交易我们称为创世交易。图1-2所展示的则是在指定 参数下 由虚拟模拟所生成的一个用例。该用例中,被[交易5] 直接或间接证明的交易设为红色,而直接或间接证明[交易5] 的交易设置为蓝色。
到这里,本文结束,在接下来的章节中,我们会解析参数 交易速率( transaction rate ) λ的作用,并详细介绍更多高级的概念。例如,indirect approvers (间接交易证明)、hidden tips 以及更先进的tip选择策略:the unweighted random walk(无权重随机遍历)。
网友评论