Kaspa DocumentationKaspa Documentation
Home
Introduction
Research
Team
Timeline
Topics
Crypto
About
  • 中文
  • English
Home
Introduction
Research
Team
Timeline
Topics
Crypto
About
  • 中文
  • English
    • 1. Future Miner Revenue Issues
    • 2. Historical Ledger Loss Issue
    • 3. How Many Transactions Can a Block Hold?
    • 4. XXIM Interviews Ori Newman

2. Historical Ledger Loss Issue

Problem Raised

  • In the early days of Kaspa, some historical transaction records were not preserved. The reasons were:

    • Kaspa's data pruning mechanism

    • In the early stages of the project, the team did not prioritize saving complete historical records (because it did not affect security).

  • Many people worry that the lack of a complete ledger history may imply issues with the chain's security or transparency.

(1). Quick Answer

  • Incomplete historical ledger does not affect Kaspa's security.

  • Kaspa inherently comes with data pruning functionality. The network's security and transparency are guaranteed by cryptography (hardcoded genesis block and genesis proof), rather than relying on storing all historical data.

  • For Kaspa network integrity verification, refer to the Checkpoint Block section, which includes integrity verification implemented by community members themselves.

(2). Kaspa is Secure

  • Shai answered this question in detail in the following post:
    • https://x.com/DesheShai/status/1687201025344540672

Translation

Hello everyone, $Kas. Obviously, some people are concerned that there are some data gaps in our ledger history. Some have asked whether this means there are problems with the chain's security or transparency (and as usual, some trolls we're familiar with even claim this "proves" the "fact" that we are "hiding" "speed mining"). Let me reassure everyone: as I'm about to explain, this is completely not a problem.

  1. Before starting, you must understand that data pruning is essential. If pruning is not performed, running at full load (10 BPS), the ledger data would grow by nearly 30TB per year. If we want Kaspa to remain decentralized, this is extremely unsustainable.

  2. The main concern seems to be that the lack of complete ledger data means being unable to verify the current state from the genesis block (especially, unable to prove no pre-mining). But this is not the case. The genesis block itself is hardcoded in the node's code, as you can see here: https://github.com/kaspanet/rusty-kaspa/blob/ce3e231d0ae103557dc4c44a4dcf31265961a2e4/consensus/core/src/config/genesis.rs#L163

    The line 163 I linked specifically shows that the hardcoded genesis block has an empty UTXO set, meaning no pre-mining (careful readers can clone the codebase and verify that EMPTY_MUHASH is indeed defined as a hash of an empty set).

    The data stored by nodes includes a genesis proof. This proof is a short string that cryptographically proves that the current state indeed evolved from the hardcoded genesis block, and has a magical property: forging such a proof requires consuming the same amount of work as creating the entire ledger. In other words, this string provides proof that the genesis block and current state are real, and the reliability of this proof is as strong as owning the entire ledger.

    The technology used to generate this proof is discussed here: https://eprint.iacr.org/2021/623.pdf

    You can also refer to the "Pruning Block Headers" section of the GHOSTDAG 101 seminar to roughly understand this technology: https://youtu.be/nhI2zo44dfc?t=6354

    Crucially, the data available to each node is sufficient to verify the current state from the genesis block.

    Not running an archival node from day one might be a bit lacking in foresight, but frankly, after the mainnet launch, we had too many things to handle, and this matter was put aside, mainly because we knew it wasn't critical for the network's security or integrity, so it wasn't a high priority.

  3. The ledger data is mostly meaningless, and I really don't understand what most users expect to find there. That said, there are indeed reasons to need the entire ledger data, mainly:

    a. Aesthetics. That is, if all data is available, I wouldn't need to explain all of this at all.

    b. Statistics and Research: This data can be used to investigate trends and global phenomena.

    c. User Needs: Some users may need this data, for example, for tax audit reasons (for instance, in Israel, the tax rates for mining revenue and transaction income are different, and long-term holding miners need to pay taxes on coins mined based on their value at the time of mining, so they should be able to prove when they were mined, etc.).

    Therefore, we are working to piece together complete historical records (so, in particular, if you happen to have old data directories, please contact us in the #datadir-exchange channel on our Discord server).

    ...

Summary:

  • Kaspa's data pruning mechanism is a well-considered design choice aimed at ensuring the network's long-term scalability and decentralization.

  • The network's security and transparency are guaranteed by cryptography (hardcoded genesis block and genesis proof), rather than relying on storing all historical data.


(2). How Much Historical Ledger Data Has Been Recovered

TimeHistorical Ledger Data Status
Before 2022-02-10Approximately 75% recovered
After 2022-02-10100% recovered

TIP

Currently, the team seems to have no motivation or energy to find all historical ledger data before 2022-02-10.

  • Information sources (May 2025):

    • https://x.com/supertypo_kas/status/1920013590335001010

    • https://x.com/supertypo_kas/status/1920182964220002750

    • https://x.com/kaspador_/status/1919800938325225925

    • https://discord.com/channels/599153230659846165/1066838182932525066/1369335668173439136

Last Update: 2/15/26, 7:38 PM
Prev
1. Future Miner Revenue Issues
Next
3. How Many Transactions Can a Block Hold?