Skip to main content

Statur - RoyaltyNode


What is RoyaltyNode?

RoyaltyNode is a structured Real-World Asset (RWA) community raise designed to support Iagon's growth while maintaining long-term alignment with the network and existing token holders. Participants receive exposure to IP protection & commercialization and enterprise compute node participation. Learn more about RoyaltyNode →

Overview

This document describes Iagon's custom implementation of the Statur self-sovereign pseudonymous reputation model on the Cardano blockchain. The reputation score for each wallet is calculated based on multiple factors that reflect a user's engagement, contribution, and commitment to the Iagon ecosystem.

Each wallet's total reputation score is computed as a weighted sum of individual category scores.

Soulbound Identity Token

When a user joins the Statur reputation system, they mint a soulbound (non-transferable) identity token that anchors their reputation on-chain. This token:

  • Cannot be transferred - Validator logic prevents the token from being spent to any address other than the reputation contract
  • Is burnable on exit - If a user leaves the system, they burn the token as part of the exit transaction
  • Uniquely identifies the user's reputation throughout its lifetime

This ensures that reputation cannot be bought, sold, or transferred between users.

User Sovereignty

Statur is built on the principle of user sovereignty:

  • Users decide which projects may contribute to their reputation by joining a project
  • Once joined, a project can freely update that user's metrics within its own scope—no additional authorization is required for each update
  • Users may disconnect from projects at any time, revoking that project's ability to update their reputation
  • Users can leave the system entirely, which burns their soulbound token and removes their on-chain reputation

All reputation updates are signed by the contributing project and form a traceable history that users can independently verify.

note

All weights and factors described in this document are subject to change based on future observations and research.

Reputation Score Calculation

In plain terms: Your reputation score is a weighted average of all your activities. Some metrics (like holding duration) scale linearly—twice as long means twice the score. Other metrics (like token quantity) use diminishing returns—your first 100K tokens contribute more to your score than your next 100K. This design rewards consistent participation over raw wealth, preventing whales from dominating the leaderboard.


Statur's base scoring model uses a simple weighted sum (value × weight) to compute project-level scores. However, projects may implement custom scoring algorithms for their specific needs.

Iagon uses a custom hybrid formula that combines linear metrics and diminishing returns metrics to prevent whales from dominating the reputation system and encourage broader ecosystem participation:

s=1ω(iwivi+jwj(1evj/aj))s = \frac{1}{\omega} \left( \sum_i w_i v_i + \sum_j w_j \left( 1 - e^{v_j / a_j} \right) \right)

Where:

  • s = Total normalized reputation score
  • ω = Σwᵢ = Sum of all weights (normalization factor)
  • wᵢ, wⱼ = Weights for each metric
  • vᵢ, vⱼ = Normalized metric values

Linear Metrics

The first sum Σᵢ(wᵢvᵢ) handles metrics that scale linearly with value. These are straightforward weighted contributions where more is proportionally better.

Diminishing Returns Metrics

The second sum Σⱼ(wⱼ(1 - e^(vⱼ/aⱼ))) handles metrics where additional value provides decreasing marginal benefit. This prevents whales from dominating the reputation system and encourages broader participation.

The diminishing returns parameter a is calculated as:

a=hln(1s)a = \frac{h}{\ln(1 - s')}

Where:

  • h = Optimal value (the target value for strong reputation)
  • s' = Optimal score at h (the target score achieved when v = h)

This creates an asymptotic curve where early contributions have high impact, but returns diminish as values grow larger.

s=1ω(iwivi+jwj(1evj/aj))ω=iwia=hln(1s)\begin{aligned}
s &= \frac{1}{\omega} \left( \sum_i w_i v_i + \sum_j w_j \left( 1 - e^{v_j/a_j} \right) \right) \\[1em]
\omega &= \sum_i w_i \\[1em]
a &= \frac{h}{\ln(1 - s')}
\end{aligned}

 

Category Weights

The following table shows the weight assigned to each reputation category. All weights sum to 1.0 (100%).

CategoryWeight
Token Holder0.28
Liquidity Provider0.18
Node Operator0.13
Token Staker0.11
Token Trader0.10
Stake Pool Delegator0.08
Badges0.07
Storage Subscriber0.05

Detailed Factor Breakdown

Token Holder

Category Weight: 0.28

Measures a wallet's IAG token holdings and commitment to long-term holding.

FactorValue WeightScalingDescription
Holding Quantity70%Linear scale to 10M IAGTotal IAG tokens held in the wallet
Holding Duration30%Linear scale to 5 yearsAverage duration tokens have been held

Calculation:

Token Holder Score = (0.70 × quantity_score) + (0.30 × duration_score)

where:
quantity_score = min(holding_amount / 10,000,000, 1.0)
duration_score = min(average_hold_days / 1825, 1.0)

 

Token Staker

Category Weight: 0.11

Evaluates participation in IAG staking, both as an operator and as a delegator.

FactorValue WeightScalingDescription
Staking Quantity70%Linear scale to 10M IAGIAG tokens staked
Staking Duration30%Linear scale to 5 yearsDuration of staking

 

Calculation:

Token Staker Score = (0.70 × iag_stake_qty) + (0.30 × iag_stake_dur) 

where:
iag_stake_qty = min(staked_iag / 10,000,000, 1.0)
iag_stake_dur = min(iag_stake_days / 1825, 1.0)

 

Node Operator

Category Weight: 0.13

Assesses the quality and reliability of storage node operators within the Iagon network.

FactorValue WeightScalingDescription
Node Reputation Score45%Linear scale from 0-70Composite score based on node performance metrics (uptime, speed, reliability). 70 is the current maximum possible score.
Node Operation Duration40%Linear scale to 5 yearsHow long the node has been actively operating
Margin Changes15%Penalty-basedNegative impact for aggressive or frequent margin changes

 

Margin Changes Modifiers (Negative Impact):

  • Aggressive change: Significant penalty for large margin increases. Negative actions carry stronger weight than the positive impact of stable behavior.
  • Frequent changes: Penalty for changing margins too often

Calculation:

Node Operator Score = (0.45 × reputation_score) + (0.40 × duration_score) 
+ (0.15 × margin_stability_score)

where:
reputation_score = min(node_score / 70, 1.0)
duration_score = min(operation_days / 1825, 1.0)
margin_stability_score = 1.0 - margin_penalty

 

Token Trader

Category Weight: 0.10

Evaluates trading behavior to reward positive market participation and discourage harmful trading patterns.

FactorValue WeightScalingDescription
Total Trading Volume50%Linear scale to 1B IAGCumulative trading volume in IAG
Trend During Sells15%Directional modifierPositive for selling during uptrends, negative for selling during downtrends
Trend During Buys35%Directional modifierPositive for buying during downtrends (supporting price)

 

Trend Modifiers:

ActionMarket ConditionImpactReason
SellingUp trendPositiveSelling during uptrends is neutral/positive
SellingDown trendNegativeSelling during downtrends amplifies price drops
BuyingDown trendPositiveBuying during downtrends supports the token price

Note: Negative trading actions carry stronger weight than the positive impact of supportive actions.

 

Calculation:

Token Trader Score = (0.50 × volume_score) + (0.15 × sell_trend_score) 
+ (0.35 × buy_trend_score)

where:
volume_score = min(total_volume / 1,000,000,000, 1.0)
sell_trend_score = weighted average of sell timing relative to market trends
buy_trend_score = weighted average of buy timing relative to market trends

 

Badges

Category Weight: 0.07

Awards reputation based on achievement badges earned through various ecosystem activities.

FactorValue WeightScalingDescription
Badge Collection100%Linear scale to 1.0Sum of unique badge weights earned

Each badge has its own unique weight contribution. Badges are earned through:

  • Participation in community events
  • Completing specific milestones
  • Contributing to the ecosystem
  • Special achievements and recognitions

Calculation:

Badges Score = min(sum(badge_weights), 1.0)

 

Storage Subscriber

Category Weight: 0.05

Measures engagement as a storage customer within the Iagon decentralized storage network.

FactorValue WeightScalingDescription
Subscription Size30%Linear scale from smallest to largest planSize of the storage plan subscribed
Storage Used30%Linear scale to subscription sizeActual storage utilization
Subscription Duration40%Linear scale to 5 yearsLength of active subscription

 

Calculation:

Storage Subscriber Score = (0.30 × plan_size_score) + (0.30 × utilization_score) 
+ (0.40 × duration_score)

where:
plan_size_score = plan_tier / max_plan_tier
utilization_score = storage_used / subscription_size
duration_score = min(subscription_days / 1825, 1.0)

 

Liquidity Provider

Category Weight: 0.18

Evaluates contribution to liquidity pools supporting IAG trading pairs.

FactorValue WeightScalingDescription
Liquidity Quantity60%Linear scale to 10M IAGTotal IAG (or equivalent value) provided to liquidity pools
Liquidity Duration40%Linear scale to 5 yearsDuration liquidity has been maintained

 

Calculation:

Liquidity Provider Score = (0.60 × quantity_score) + (0.40 × duration_score)

where:
quantity_score = min(liquidity_iag_value / 10,000,000, 1.0)
duration_score = min(liquidity_days / 1825, 1.0)

 

Stake Pool Delegator

Category Weight: 0.08

Rewards delegation to Cardano stake pools, particularly those supporting the Iagon ecosystem.

FactorValue WeightScalingDescription
ADA Quantity60%Linear scale to 5M ADATotal ADA delegated to stake pools
Delegation Duration40%Linear scale to 5 yearsDuration of stake pool delegation

 

Calculation:

Stake Pool Delegator Score = (0.60 × quantity_score) + (0.40 × duration_score)

where:
quantity_score = min(delegated_ada / 5,000,000, 1.0)
duration_score = min(delegation_days / 1825, 1.0)

 

Score Decay

Reputation scores decay over time when a user leaves a project to ensure that reputation reflects recent activity rather than historical contributions alone. The system uses exponential decay with a configurable decay period.

The decay formula follows:

decayed_score=score×et/τ\text{decayed\_score} = \text{score} \times e^{-t/\tau}

Where:

  • t = time elapsed since the account left the project
  • τ = decay time constant (the time for score to decay by factor of e)
  • e = Euler's number (~2.718)

This means that when a user leaves a project, their reputation score will gradually decrease, encouraging ongoing positive participation in the ecosystem.

On-Chain Calculation

Reputation scores are calculated and stored using a combination of on-chain and off-chain mechanisms:

  1. Data Collection: Metrics are collected from various on-chain sources:

    • Wallet balances and transaction history (Token Holder, Token Trader)
    • Smart contract interactions (Token Staker, Node Operator)
    • DEX activity (Liquidity Provider, Token Trader)
    • Stake pool registrations (Stake Pool Delegator)
  2. Metric Storage: Each metric value is stored in the off-chain reputation database as a FloatMetric with associated weight, units, and description.

  3. Score Computation: The reputation backend computes scores by:

    • Aggregating weighted metric values per category
    • Applying decay based on time since last update
    • Combining category scores using the weights defined above
  4. On-Chain Verification: A Blake2b-256 hash of the canonical JSON representation of the account's reputation data is stored on-chain, allowing anyone to verify the off-chain data independently.

  5. Batch Updates: A specialized batcher service periodically updates on-chain hashes via transaction chaining to minimize blockchain costs.

Scaling Functions

All metrics use linear scaling within their defined ranges:

scaled_value=min(actual_valuemax_value,1.0)\text{scaled\_value} = \min\left(\frac{\text{actual\_value}}{\text{max\_value}}, 1.0\right)

 

Key scaling parameters:

Metric TypeMaximum Value
IAG Token Amounts10,000,000 IAG
ADA Amounts5,000,000 ADA
Trading Volume1,000,000,000 IAG
Duration5 years (1,825 days)
Node Reputation70 (current max)