在以太坊生态系统中,DAG(有向无环图)文件是一个至关重要的组成部分,它主要用于以太坊的工作量证明(PoW)机制中的挖矿过程,随着以太坊网络的不断发展,DAG文件的大小也在持续增长,这引起了矿工和许多关注以太坊发展的人士的高度关注,其中一个常被提及的问题是:以太坊DAG文件究竟什么时候会达到6GB?

要回答这个问题,我们首先需要了解DAG文件为何会增长以及其增长规律。

什么是DAG文件?为何它会增长?

DAG,全称是Directed Acyclic Graph,即有向无环图,在以太坊的PoW共识机制中,DAG是“以太坊虚拟机”(EVM)执行挖矿算法时所依赖的一组数据,它可以理解为一个巨大的、动态更新的“数据集”,矿工需要从这个数据集中随机选取数据来进行哈希运算,以争夺记账权。

DAG文件的大小与以太坊的“ epoch”( epoch,纪元或时期)直接相关,每个epoch包含一定数量的区块(目前是30000个区块),大约每12秒产生一个新区块,因此一个epoch的持续时间约为100小时(约4.17天),每当进入一个新的epoch,DAG文件就会增加一部分数据,这种增长的设计是为了保证挖矿过程的“ASIC抵抗性”,使得矿机不能仅仅依靠纯粹的算力优势,还需要处理不断增长的数据集,从而在一定程度上平衡了专业矿机和普通用户的挖矿能力。

DAG文件大小与时间/epoch的对应关系

DAG文件的大小是可预测的,其增长公式大致为: DAG文件大小 (GB) ≈ 3.68 + (epoch编号 * 0.008)

或者更精确地,每个epoch会增加约8MB的数据。

截至2023年初),以太坊已经完成了多个epoch,DAG文件大小大约在50-60GB左右,从当前水平增长到6GB,显然是一个已经过去的节点,但如果我们追溯早期,DAG文件从几MB增长到6GB,确实是一个重要的里程碑。

随机配图