IOTA 采用的并非传统区块链结构,而是一种名为有向无环图(DAG) 的分布式账本技术,其数据结构被称为 Tangle。与按时间顺序串联区块的链式结构不同,Tangle 中的每一笔交易都可以直接验证其他交易,并支持并行发生。本文将深入解析 IOTA 交易的加入、验证与共识机制。
Tangle 的基本结构
在 Tangle 中,交易通过验证关系相互连接,形成一个不断生长的网络。我们可以通过几个关键概念理解其状态:
- 绿色交易:已被网络以高确定性确认的交易;
- 蓝色交易:获得部分确认,但确定性较低;
- 灰色/黄色交易:尚未被验证的 Tip(即 Tangle 中最新的未确认交易);
- 红色交易:存在冲突或无效的交易。
值得注意的是,交易不仅可以引用 Tip,也可以引用已被部分确认的交易,只要其符合协议规则,网络便允许此类行为。
新交易如何加入 Tangle
当用户希望发起一笔新交易时,需完成以下步骤:
- 随机选择两个 Tip:从当前 Tangle 中随机选取两个未被确认的交易;
- 验证所选 Tip:检查其签名是否正确、工作量证明(PoW)是否有效,并确认其与所有历史交易无冲突;
- 引用并加入交易:若验证通过,新交易将引用这两个 Tip,并加入到 Tangle 中。
在这个过程中,若某些交易未被直接或间接引用,它们将成为“不相关交易”,并等待后续交易进行验证。
交易的并行验证与确认
多个用户可同时在不同位置添加新交易。例如:
- 用户A 验证 Tip 1 和 Tip 2,确认路径包含交易 a 到 k;
- 用户B 验证 Tip z 和 y,其路径覆盖了 a 到 n,并额外包含 l、o、r 等交易。
两条验证路径存在重合,部分交易被多次确认,部分仅被确认一次。被所有当前 Tip 直接或间接引用的交易,即被视为完全确认。
Tangle 的共识形成机制
IOTA 的共识无需全网节点验证所有交易,而是通过分布式协作实现:
- 局部验证:每个用户仅验证两笔交易及其父交易;
- 协同确认:随着更多用户选择不同 Tip 和路径,全网逐渐形成对交易的协同验证;
- 高确定性确认:当交易在 Tangle 中达到足够深度,并从所有 Tip 均可达时,即获得高确定性确认。
接收方无需重新验证交易,仅需统计其被 Tip 引用的比例即可评估确认等级。例如,若某交易被80%的 Tip 引用,便可视为已确认。
确认等级与商业应用
商家可根据实际需求设定个性化确认等级:
- 低价值场景(如微支付):可接受75%确认等级;
- 高信任场景(如朋友间转账):也可适度降低确认要求。
这种灵活性使 IOTA 适用于多样化支付场景,平衡了安全性与效率。
网络延迟与确认稳定性
网络传播延迟或慢速 PoW 可能导致后续交易引用较早的 Tip,轻微改变某些交易的确认比例(如从100%降至99%)。然而:
- 确认等级的变化通常是临时的;
- 后续交易会迅速再次确认已有交易;
- 绝对100%的确认难以实现,因总存在无效 Tip 或协议外行为。
双花攻击与解决方案
若用户尝试发起两笔冲突交易(w 和 y),可能暂时被部分节点确认。但随着 Tangle 增长,冲突终将被发现:
- 冲突发现:当某笔交易(如交易5)的验证路径同时包含两笔冲突交易时,将拒绝确认并重新选择 Tip;
- 分支竞争:冲突交易形成不同分支,最终累积权重更高(被更多交易引用)的分支获胜;
- 无效交易丢弃:失败分支中的交易将被丢弃,但可重新附加到 Tangle 中再次尝试确认。
需注意,重新附加需重新进行 PoW,但无需发送新签名。
离线环境下的 Tangle 操作
IOTA 支持在离线环境中构建子 Tangle,例如局域网或断电场景:
- 离线交易构建:用户依据协议创建交易并相互连接;
- 与主网合并:通过一笔桥接交易(如交易8)将离线 Tangle 与在线 Tangle 的 Tip 连接;
- 最终确认:离线交易需被主网引用方可完全确认。若存在冲突,整个离线分支可能不被接受。
常见问题
什么是 Tangle 中的 Tip?
Tip 是尚未被任何交易验证的最新交易,类似于区块链中的未确认交易。用户发起新交易时需选择并验证两个 Tip。
IOTA 如何防止双花攻击?
通过后续交易验证过程中的冲突检测机制。一旦发现双花,节点将拒绝确认冲突交易,并最终通过累积权重机制决定哪笔交易有效。
离线交易是否安全?
离线交易仅在合并到主 Tangle 且无冲突时才被确认。期间若产生冲突,离线分支可能被丢弃,但交易可重新附加。
确认等级如何计算?
计算某交易被当前所有 Tip 直接或间接引用的比例。例如,若90%的 Tip 可达该交易,则其确认等级为90%。
IOTA 的共识是否需全节点验证?
否。每个节点仅验证局部交易,全网共识通过众多节点对不同路径的验证协同形成。
交易确认是否是最终性的?
是,但基于概率模型。随着交易深度增加,确认确定性趋近100%,但理论上绝对最终性难以实现。