Husdc Ecosystem

One-way wrapper enabling conversion from hUSDC to sUSD with lock support

hUSDC Ecosystem

Overview

The hUSDC ecosystem implements a one-way conversion mechanism from hUSDC (tradeable ERC20) to sUSD (soul-bound token). This architecture enables participants to convert their liquid hUSDC holdings into yield-bearing sUSD positions.

Token Architecture

sUSD (Soul-bound Layer)

  • Non-transferable (with lock support)
  • Yield-bearing: Accrues returns from Venus Protocol
  • Lock enforcement: Supports time-locked positions
  • Protected design: Resistant to flash loan attacks

hUSDC (Liquidity Layer)

  • ERC20 Standard: Fully transferable and tradeable
  • One-way conversion: Converts to sUSD via wrapper (no reverse path)
  • DEX Compatible: Tradable on PancakeSwap and alternative exchanges
  • DeFi Integration-Ready: Deployable as collateral or in yield strategies

Technical Architecture

HUSDCWrapper Contract

The wrapper contract manages one-way conversion from hUSDC to sUSD:

contract HUSDCWrapper {
    // Core conversion function (one-way only)
    function hedgeWrap(uint256 amount) external

    // Lock administration for investor vesting
    function hedgeWrapLocked(address to, uint256 amount, uint256 unlockTime) external
    function hedgeBurnLocked(address from, uint256 amount) external

    // Lock info query
    function getHedgeLockInfo(address account) external view returns (uint256, uint256)

    // Admin functions
    function hedgeSweep(address to, uint256 amount) external
    function hedgeSweepAll(address to) external
}

SUDC (sUSD) Token Implementation

sUSD implements lock-conscious transfer logic:

contract SUDC is ERC20, AccessControl {
    // Validates locks before transfers
    function _update(address from, address to, uint256 amount) internal override {
        // Confirm sender possesses adequate unlocked balance
        (uint256 locked, uint256 unlockTime) = IHUSDCWrapper(wrapper).getHedgeLockInfo(from);
        require(balanceOf(from) - amount >= locked, "SUDC: Tokens locked");
        super._update(from, to, amount);
    }

    // Minting and burning (wrapper only)
    function issueFromWrapper(address to, uint256 amount) external
    function reclaimFromWrapper(address from, uint256 amount) external
}

Key Features

One-Way Conversion

  • hUSDC → sUSD: Convert tradeable hUSDC to yield-bearing sUSD
  • No reverse path: Conversion is permanent (no unwrap function)
  • Yield generation: sUSD immediately starts earning Venus yields
  • Lock support: Optional time-locks for vesting schedules

Value Flow

  1. User holds hUSDC (tradeable ERC20)
  2. User calls hedgeWrap() to convert to sUSD
  3. sUSD accrues yield from Venus Protocol
  4. No way to convert back to hUSDC

Application Scenarios

1. Yield Position Entry

Participants convert liquid hUSDC holdings into yield-generating sUSD positions to access Venus Protocol returns.

2. Vesting Schedules

Use hedgeWrapLocked() for team/investor allocations with programmable unlock timetables that prevent premature transfers.

3. Treasury Management

Protocols convert idle hUSDC reserves to sUSD for sustainable yield generation without speculative risk.

Security Framework

Wrapper Protection

  • Immutable contract architecture
  • One-way design prevents exploit vectors
  • Lock enforcement at contract level
  • Reentrancy guards on all operations

Economic Protection

  • No price peg to maintain (one-way conversion)
  • No algorithmic mechanisms to fail
  • Direct conversion without complex logic
  • No reliance on oracles

Conversion Process

Standard Conversion

// User converts hUSDC to sUSD
hUSDC.approve(address(wrapper), amount);
wrapper.hedgeWrap(amount);
// User now has sUSD earning yield

Locked Conversion (Vesting)

// Operator creates locked position
hUSDC.approve(address(wrapper), amount);
wrapper.hedgeWrapLocked(recipient, amount, unlockTime);
// Recipient has sUSD but transfers are locked until unlockTime

Summary

The hUSDC ecosystem provides a straightforward mechanism for converting liquid hUSDC tokens into yield-bearing sUSD positions. The one-way architecture eliminates complexity and potential exploit vectors while enabling yield generation through Venus Protocol integration.