DEV Community

Cover image for XDAG :A Reference-Driven DAG with Time-Sliced PoW Ordering(中文版)
XDAG for XDAG Community

Posted on Edited on

XDAG :A Reference-Driven DAG with Time-Sliced PoW Ordering(中文版)

XDAG:以引用关系驱动的 DAG 与时间切片 PoW 排序

XDAG:A Reference-Driven DAG with Time-Sliced PoW Ordering

  • 核心定位

XDAG 的核心技术架构建立在两个相互配合的机制之上:

以引用关系组织区块,形成 DAG;以时间切片 PoW 主块机制建立账本的排序框架。

引用关系定义区块之间的连接方式,构成账本的有向无环图结构;时间切片与 PoW 主块机制则为账本提供时间组织和排序依据。

两者相互配合,构成 XDAG 独特的账本组织方式。

因此,XDAG 不应仅仅被理解为一种采用 DAG 数据结构的 PoW 项目。它的核心技术特征,在于引用关系构建的 DAG 结构与时间切片 PoW 排序机制之间的结合。

Reference-Driven DAG 与 Time-Sliced PoW Ordering,是 XDAG 技术 DNA 的两个核心组成部分。

  • Reference-Driven DAG:以引用关系组织区块

在 XDAG 中,区块通过引用关系建立联系,并由此形成有向无环图(Directed Acyclic Graph,DAG)。

与单纯依靠前后顺序连接的线性账本不同,DAG 允许区块通过引用关系建立更丰富的关联。区块之间的关系不再局限于单一的线性连接,而是按照协议规则形成网络化的结构。

在当前设计中,交易块(TX Block)和链接块(Link Block)共同参与 DAG 的构成,但承担不同职责:

交易块(TX Block): 承载交易,一个交易块可以包含多笔交易。

链接块(Link Block): 参与 DAG 的区块关系结构,不作为交易承载容器。

引用关系(Reference): 建立区块之间的连接,构成 DAG 的关系基础。

因此,XDAG 并不是简单的“一笔交易对应一个区块”,也不是传统意义上由区块逐个串联形成的线性账本。

理解 XDAG,首先需要理解区块之间的引用关系,以及这些关系如何共同构成账本的 DAG 结构。

  • Time-Sliced PoW Ordering:以时间切片 PoW 建立排序

DAG 解决的是区块之间如何建立关系的问题,但区块之间存在关联,并不意味着交易顺序已经自动确定。

XDAG 通过时间切片与 PoW 主块机制,为账本建立排序框架。

按照当前协议设计,主块以约 64 秒为基本时间节奏产生,并通过 PoW 机制参与主块链的形成与选择。主块链构成账本时间组织和排序的基础,主块与其他区块之间的引用关系,则将 DAG 结构与这一排序框架联系起来。

这一机制包含三个相互配合的部分:

时间切片: 为主块产生和账本组织提供时间框架。

PoW: 为主块的产生与选择提供工作量证明基础。

主块链及其引用关系: 将 DAG 中的区块关系纳入账本排序框架。

三者共同构成 XDAG 的时间组织与排序机制。

需要明确的是,排序不等同于确认。时间切片不意味着同一时间片中的所有交易同时完成确认;DAG 中的区块也不意味着都必须被主块直接引用。

区块的纳入、交易的有效性、先后顺序、冲突处理及确认状态,最终都应遵循协议定义的具体规则。

  • 交易承载与账本组织

XDAG 通过交易块组织交易,一个交易块可以承载多笔交易。

交易块通过引用关系参与 DAG 结构,并按照协议规定的规则与主块链建立排序关系。由此,交易承载、区块关联与账本排序形成相互配合的整体。

理解 XDAG 的交易组织方式,需要区分三个层次:

交易层: 交易如何被组织并承载在交易块中。

关系层: 区块如何通过引用关系连接,形成 DAG。

排序层: 时间切片 PoW 主块机制如何为账本建立排序框架。

三个层次各有职责,但并非彼此独立。它们共同构成 XDAG 从交易组织、区块关联到账本排序的技术结构。

交易的有效性、先后顺序、双花冲突裁决及确认状态,应由协议规则共同确定,不能仅凭 DAG 中存在某条引用路径就作出判断。

  • 保持 XDAG 的技术内核

XDAG 的演进,不是为了成为另一个 Kaspa,也不是为了追随某一种流行的技术架构。

不同的 DAG 项目可以采用不同的区块组织方式、排序机制和共识设计。比较不同技术路线的意义,在于理解各自的原理、优势与取舍,而不是让所有项目走向同一种技术方向。

XDAG 应当坚持自己的核心设计:

以引用关系驱动 DAG,以时间切片 PoW 建立排序。

这一技术内核应当成为未来架构设计和工程演进的基本依据。

P2P 网络、数据同步、存储、恢复和节点运行效率,都可以随着技术发展持续改进。但这些改进应当服务于核心账本机制,而不是为了追求技术复杂度而引入不必要的架构。

尤其是涉及账本确定性、交易排序和共识规则的改动,必须建立在明确的问题分析、充分的技术论证和严格的测试审查之上。

技术可以不断进步,但不能在演进过程中失去自己的核心身份。

  • 极简设计与可理解性

XDAG 应当坚持极简设计原则。

极简并不意味着缺少必要的功能,而是要求每一项机制都有明确的作用、清晰的边界和充分的存在理由。

能够通过简单、可靠的规则解决的问题,不应被不必要的复杂架构取代。

这一原则同样适用于 AI 辅助开发。

AI 可以参与代码分析、编写和测试,但不能代替开发者对协议、架构和系统行为的理解。进入核心系统的每一项代码改动,都应当能够被人类开发者解释、审查、测试和维护。

代码能够运行,不代表设计一定正确;测试通过,也不意味着实现必然符合协议要求。

系统复杂度不能超过人类理解、验证和控制它的能力。

这不仅是工程质量要求,也是 XDAG 长期保持安全性、可靠性和可持续演进能力的基础。

  • 结语:保持内核,持续演进

XDAG 的技术 DNA,可以归纳为:

以引用关系驱动 DAG,以时间切片 PoW 建立排序,在保持架构简洁与账本规则确定性的基础上,持续提升系统的安全性、效率和可维护性。

这是 XDAG 对自身技术结构的定义,也是未来发展的基本原则。

XDAG 不需要成为另一个项目,也不应在追逐技术潮流的过程中失去自己的方向。

真正有价值的演进,是在深入理解自身技术内核的基础上,不断完善系统,使其变得更加可靠、高效、开放和易于维护。

保持内核,持续演进。
让 XDAG 始终是 XDAG。

Top comments (0)