Skip to content

Random ORV proposal #34

@davidborrell74

Description

@davidborrell74

Proposal

Boost Nano’s Decentralization with Random Initial Representatives
(Fighting the "Default Rep" Problem)

The Problem

We all know Nano’s security relies on decentralized voting weight (ORV). Yet too many users:

  • Stick with default reps (e.g., exchanges, top-listed nodes).
  • Don’t redelegate due to inertia or lack of awareness.
  • This slowly centralizes voting power → risking censorship and attacks.

The Idea

When creating a new Nano account, auto-assign a random representative from a vetted pool. (Users can still change it instantly! This is just the starting point.).

Why Random?

  • Kills the "default effect": No more 80%+ weight on top 5 nodes.
  • Incentivizes small nodes: New wallets = automatic vote dispersion → more reps matter.
  • Geo-resilience: Randomness naturally distributes votes globally.

Pros

  • Fights centralization.
  • Rewards reliable small reps.
  • Auto-scales decentralization.

Cons & Fixes

  • Bad nodes? → Only include reps with: uptime >95% + history >3mo
  • Sybil attacks? → Require minimum self-stake or reputation system
  • Complexity? → Use Verifiable Random Functions (VRF) for fairness

Hybrid Implementation Plan

  • Phase 1: Random delegation → New wallets pick from pre-vetted nodes (uptime, bandwidth, stake requirements).
  • Phase 2: User tools → In-wallet alerts: "Your rep’s uptime dropped to 90% – redelegate?"
  • Phase 3: Auto-redelegation → If a node fails votes auto-move to a backup (like a "lightning rod" rep)

Why Nano Needs This

  • Today: Top 3 reps hold ~35% voting weight. Random assignment could cut this by 50%+ in 2 years.
  • User experience: Zero effort for new users. They "opt-in" to decentralization by default.
  • Unique advantage: Makes Nano’s ORV truly passive and anti-fragile.

Discussion Questions

  • Would you support this as a "default wallet feature"?
  • How should we filter "qualified" nodes**? (Uptime? Stake? Manual review?)
  • Could this be a "protocol update" or just a "wallet-level fix"?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions