Light Full Node Technical Workflow

The light full node operates by checking all the full blocks or a specified suffix of the full blockchain, depending on the settings. It starts from a trusted pre-genesis digest or a digest within the blockchain.

Overview

The light full node operates by checking all the full blocks or a specified suffix of the full blockchain, depending on the settings. It starts from a trusted pre-genesis digest or a digest within the blockchain.

To obtain a new digest from an old one, the light full node utilizes AD-transformations (authenticated dictionary transformations) block sections that contain batch-proof for UTXO transformations. However, it only stores a single digest and does not retain any transaction data.

For more detailed information, refer to this paper.

Additional Settings

The light full node supports the following additional settings:

depth

From which block in the past to check transactions (if 0, then go from genesis).

additional-checks

Light-full node trusts the previous digest and checks current digest validity by using the previous one as well as AD-transformations.

additional-depth

Depth to start additional checks from.

Workflow Steps

Step 1: Send ErgoSyncInfo

Send ErgoSyncInfo message to connected peers.

Step 2: Receive INV Response

Get a response with an INV message containing the IDs of blocks that are better than the current best block.

Step 3: Request Headers

Request headers for all the IDs received in step 2.

Step 4: Header Validation

Upon receiving a header, perform the following checks:

Java Code
if (History.apply(header).isSuccess) {
    if (localScore != networkScore) {
        GOTO 1
    } else {
        GOTO 5
    }
} else {
    blacklist peer
}

Step 5: Request Block Data

Request block data for all the headers received in step 4.

Step 6: Block Validation

Upon receiving a block, perform the following checks:

Java Code
if (History.apply(block).isSuccess) {
    if (localScore != networkScore) {
        GOTO 1
    } else {
        GOTO 7
    }
} else {
    blacklist peer
}

Step 7: Sync Complete

The light full node is now synchronized with the network.

Additional Resources

Research Paper

For detailed technical information about AD-transformations and light node implementation.

View Research Paper