💾 Intuition
Last updated
Last updated
In the Directed Acyclic Graph (DAG) mining protocol, accurately identifying blocks mined by cooperative nodes (referred to as honest blocks) versus those not adhering to the established guidelines (dishonest blocks) is crucial. According to the protocol, miners are expected to reference the most recent, unlinked blocks—termed the "tips" of the DAG—in each new block they introduce.
This requirement ensures that if an honest miner mines a block (let's call it Block B) at time t, it will include references to all blocks published up to a certain period before t. Moreover, if Block B's miner is adhering to protocol, Block B is released immediately, implying that it should also reference any honest block generated shortly after time t.
The protocol design aims to limit the number of honest blocks that do not directly reference each other, a group referred to as the anticone of a block, ensuring it remains small. This limitation is quantified by the probability Pr (|anticone_h(B)| > k) ∈ O(e^(-C·k)), where C is a constant greater than zero, indicating it's unlikely for an honest block to have a large anticone consisting of other honest blocks.
Nevertheless, it is possible for a malicious actor to artificially inflate the size of an honest block's anticone by producing and concealing many blocks that fail to follow the referencing rules of the protocol.
To mitigate this risk, the PHANTOM protocol incorporates a parameter, denoted as "k", designed to ensure that, barring a small fraction δ of exceptions, the set of honest blocks forms a closely interconnected cluster. This parameter k is predetermined and is crucial for maintaining the protocol's integrity. It essentially sets a cap on the number of blocks that can be simultaneously produced, based on the expectation that block creation follows a Poisson process.
Specifically, for any block B generated at time t, there is a high probability (at least 1 - δ) that no more than k(D_max, δ) additional blocks were created within the time interval [t - D_max, t + D_max]. Blocks mined by honest nodes outside this interval fall neatly into B's historical or future dataset, thus theoretically ensuring that |anticone(B)| ≤ k with a probability of at least 1 - δ. However, an attacker can challenge this by generating blocks that do not reference the latest tips, thereby attempting to inflate B's anticone size through these underhanded tactics.