Reputation & Ranking

Why

  • Trust without central authority: on-chain verifiability, cryptographic attestations

  • Sybil resistance: stake-weighted identity, decay + diversity checks, cross-validation by masternodes.

  • Latency/perf aware: prioritize QoS, not just uptime.

  • Privacy-preserving: never require payload inspection; rely on signed metrics/proofs.

Reputation Signal Inputs

Each node i maintains a rolling, windowed stats vector over epochs (e.g., 24h buckets, 30–90 day lookback):

  • Availability A_i: fraction of intervals with successful QUIC accept + minimal health checks.

  • Performance P_i: composite of median RTT, jitter, loss, goodput vs. route baseline.

  • Reliability R_i: session completion ratio, reconnect success, connection migration success.

  • Integrity I_i: share of validated Proof-of-Transmission (no fraud flags), dispute loss rate.

  • Demand Fit D_i: geo/ASN proximity match and destination success (egress ACL passes).

  • Stake & Tenure S_i: bonded collateral (slashing coverage) and age since registration.

  • Peer Endorsements E_i (optional): masternode-issued attestations; weighted by their own rep.

All signals come from signed reports (providers/lightnodes) and validator outcomes (masternodes). No raw traffic is exposed.

Reputation Score & Ranking

We compute a bounded score Rep_i ∈ [0, 1] using a Bayesian-smoothed and decay-weighted aggregation:

Decay weighting (recentness bias):

w_t = exp(-λ * Δt) // λ e.g., 0.08–0.15; Δt in days

Per-signal normalized subscore:

A_i^* = clamp01(β_A0 + Σ_t w_t * availability_t)
P_i^* = clamp01(β_P0 + Σ_t w_t * perf_normalized_t)
R_i^* = clamp01(β_R0 + Σ_t w_t * completion_ratio_t)
I_i^* = clamp01(β_I0 + Σ_t w_t * (1 - fraud_flag_rate_t))
D_i^* = clamp01(β_D0 + Σ_t w_t * demand_fit_t)
S_i^* = clamp01(f(stake, tenure))  // diminishing returns on stake
E_i^* = clamp01(Σ attestations weighted by attestor Rep)

Combined reputation with learnable weights (policy-set or DAO-tuned):

Rep_i_raw = Σ_k α_k * X_k^*      // k ∈ {A,P,R,I,D,S,E}, Σ α_k = 1
Rep_i = sqrt(Rep_i_raw)          // concave transform: reward consistency

Penalties & floors:

  • Fraud/Dispute penalty: multiplicative factor p ∈ [0.0, 1.0] per epoch with validated fault.

  • Identity churn penalty: rotate identity too often → dampen S_i^*.

  • Regional fairness: per-region quota to avoid single ASN dominance (applied at selection time).

Selection score used by Intelligent DNS / path planner:

Sel_i = Rep_i * QoS_i * PriceWeight_i
QoS_i = 1 / (1 + norm_RTT + norm_jitter + norm_loss)
PriceWeight_i = g(target_price, node_price)  // favors near-target cost

Sybil Resistance & Slashing

  • Staking contract: register node → bond stake_i.

  • Slashable events: proven fraud (forged metrics), route blackhole, repeated SLA breaches.

  • Progressive slashing: geometric schedule; heavy repeat offenders banned X epochs.

  • Identity binding: Ed25519 long-term key ↔ on-chain record; rotate with cooldown; stake transfers delayed (unbonding period).

Merkle-committed off-chain rollups (from masternodes) feed the on-chain cache to minimize gas. Disputes can submit interval proofs referencing committed Merkle roots.

Last updated