RiddlenAirdrop Contract Specification

Overview

The RiddlenAirdrop contract implements the two-phase airdrop system defined in Riddlen Protocol v5.2. It distributes 100M RDLN tokens across two distinct phases targeting different user segments and objectives.

Architecture

Contract Type: UUPS Upgradeable Proxy Security Features: Access Control, Pausable, Reentrancy Guard Total Allocation: 100,000,000 RDLN (10% of total supply)

Phase 1: Early Adoption Incentive

Allocation

Requirements

  1. Social Proof Verification:
    • Follow @RiddlenToken on Twitter/X
    • Share announcement post with hashtag
    • Join Telegram community group
    • Wallet verification through platform
  2. Sybil Resistance:
    • One claim per wallet address
    • Manual operator verification of social proof
    • First-come, first-served basis

Process Flow

User Submits Social Proof → Operator Verification → Claim Eligibility → Token Distribution

Phase 2: Merit-Based RON Airdrop

Allocation

RON Tier Structure

| RON Range | Tier | RDLN Reward | |———–|——|————-| | 1,000-4,999 | 1 | 5,000 RDLN | | 5,000-9,999 | 2 | 10,000 RDLN | | 10,000-24,999 | 3 | 15,000 RDLN | | 25,000+ | 4 | 20,000 RDLN |

Requirements

Smart Contract Interface

Core Functions

Phase 1 Functions

function submitSocialProof(string twitterHandle, string telegramHandle) external
function verifySocialProof(address user, bool twitter, bool telegram, bool share) external
function claimPhase1() external

Phase 2 Functions

function calculatePhase2Reward(uint256 ronBalance) external view returns (uint256, uint8)
function claimPhase2() external

Admin Functions

function setPhaseActive(uint8 phase, bool active) external
function emergencyWithdraw(address to, uint256 amount) external
function pause() external
function unpause() external

View Functions

function getPhase1Status(address user) external view returns (bool, bool, bool)
function getPhase2Status(address user) external view returns (bool, bool, uint256, uint256, uint8)
function getAirdropStats() external view returns (uint256, uint256, uint256)

Security Features

Access Control

Anti-Gaming Mechanisms

Upgrade Safety

Integration Requirements

Prerequisites

  1. RDLN Token: ERC-20 contract for token distribution
  2. RON Token: Reputation contract for Phase 2 eligibility
  3. Social Verification: Off-chain systems for Twitter/Telegram validation

Deployment Steps

  1. Deploy airdrop contract with token addresses
  2. Fund contract with 100M RDLN tokens
  3. Grant OPERATOR_ROLE to verification addresses
  4. Activate phases when ready

Operational Workflow

Phase 1 Operations

# User submits social proof
submitSocialProof("username", "telegram_username")

# Operator verifies after checking social media
verifySocialProof(userAddress, true, true, true)

# User claims tokens
claimPhase1()

Phase 2 Operations

# Check user eligibility (automatic)
getPhase2Status(userAddress)

# User claims based on RON tier (automatic calculation)
claimPhase2()

Gas Optimization

Efficient Storage

Batch Operations

Deployment Configuration

Environment Variables

RDLN_TOKEN_ADDRESS=0x...  # Deployed RDLN contract
RON_TOKEN_ADDRESS=0x...   # Deployed RON contract
ADMIN_ADDRESS=0x...       # Multi-sig admin address

Network Support

Economic Impact

Phase 1 Economics

Phase 2 Economics

Sustainability

Monitoring & Analytics

Key Metrics

Dashboard Requirements

Risk Assessment

Technical Risks

Economic Risks

Operational Risks

Future Enhancements

Potential Upgrades

Integration Opportunities


Contract Version: 1.0.0 Specification Version: 5.2 Last Updated: September 29, 2025 Audit Status: Internal review completed, professional audit pending