⛓️ Node Verification Deep Dive

How SMPT nodes reach consensus, anchor metadata, and secure the registry
12 active nodes
Monad Mainnet: 4 238 122 blocks
Last finalisation: 2.3s ago
1 syncing node

1. Node Role & Architecture

An SMPT verification node is a daemon that continuously:

PRO 1
Ingest
Normalise
Conflict?

If conflict → trigger consensus round

2. The Verification Lifecycle of a Single ISRC

  1. Ingestion – Node fetches latest data for ISRC US‑RC1‑23‑00001 from ASCAP, BMI, SOCAN.
  2. Conflict detection – ASCAP shows 50/50 split (publisher/artist), BMI shows 60/40.
  3. Consensus round – All 12 nodes compute weighted votes (source reliability + external anchors).
  4. Finalisation – Median split 55/45 is accepted; mapping gap 5% flagged.
  5. Anchoring – Hash of final mapping stored on Monad (block 4 238 211).

3. Weighted Consensus Algorithm

Each node calculates a confidence score for each conflicting data point using:

Wᵢ = α·R(src) + β·A(external) + γ·N(rep)
α = 0.5, β = 0.3, γ = 0.2 (can be adjusted by governance)

Where:

ASCAP vote: 50% (weight 0.8)
BMI vote: 60% (weight 0.7)
SOCAN vote: 55% (weight 0.5)

→ weighted median = 55%

4. Cryptographic Anchoring

After finalisation, the node constructs a leaf containing:

{ "isrc": "US-RC1-23-00001", "iswc": "T‑071‑234‑567‑8", "splits": [ {"party": "Sony/ATV", "share": 55.0, "role": "Publisher"}, {"party": "A. Writer", "share": 45.0, "role": "Composer"} ], "prev_hash": "0x7e3a...f2c1", "block_height": 4238211, "timestamp": "2026‑03‑12T10:23:14Z" }

The SHA‑384 hash of this object is submitted to Monad via a smart contract. Anyone can verify that a given mapping existed at a certain block using a Merkle proof.

5. Node Hardware & Requirements

CPU 4+ cores (ARM64 / x86_64)
RAM 16 GB minimum, 32 GB recommended
Storage 500 GB SSD (NVMe preferred)
Network 100 Mbps symmetric, low latency
Stake 10 000 SMPT tokens (testnet: free)

6. Running a Node (Quickstart)

git clone https://github.com/smptprotocol/node.git
cd node && make install
smptd init --monad-rpc https://rpc.monad.smpt.org
smptd start --pro-mlc --pro-soundexchange
# monitor logs: tail -f ~/.smptd/logs/verifier.log

Once synced, the node will automatically participate in consensus and can serve API queries.

7. API for Proof Verification

Anyone can verify a mapping by calling:

GET /v1/verify?hash=0x4fa3c82e1b7d...

Returns the full mapping plus on‑chain proof (block, tx, Merkle path).

8. Security & Slashing

Nodes that vote maliciously or serve incorrect proofs lose stake. Challenge audits are randomised every 24 hours. In 6 months of testnet, only 0.4% of votes were slashed.

📄 View node specification (PDF) ⚙️ Download latest binary 📊 Network explorer