ERGO
Token Mechanics
Intermediate
1-2 hours

Шаблон снабжения токенов и горя (контроль жизненного цикла)

Design mint/burn rules, capped supply and admin-controlled burn functions

Проблема

You need fine-grained control over token supply: capped minting, burn mechanisms, or governance-controlled supply changes.

Решение

Combine a minting contract with burn capabilities. Use a state box to track total supply, enforce caps, and require authorization for supply changes.

Как это работает

  1. 1Deploy a state box holding the minting authority (NFT or special token)
  2. 2Minting contract checks current supply against cap before allowing new mints
  3. 3Burns can happen by omission (not including tokens in outputs) or sending to unspendable address
  4. 4Governance can control mint/burn through multi-sig or DAO voting
  5. 5State box tracks total minted and total burned for transparency

Примеры кода

{
  // State box with minting authority
  val stateBox = CONTEXT.dataInputs(0)
  val mintingNFT = fromBase64("MINTING_AUTHORITY_NFT")
  
  // Verify authority
  val hasAuthority = stateBox.tokens.exists(t => t._1 == mintingNFT)
  
  // Supply tracking in state box registers
  val currentSupply = stateBox.R4[Long].get
  val maxSupply = stateBox.R5[Long].get
  val mintAmount = OUTPUTS(0).tokens(0)._2
  
  // Check cap
  val withinCap = currentSupply + mintAmount <= maxSupply
  
  // Governance approval (multi-sig)
  val governanceApproved = atLeast(2, Coll(
    proveDlog(admin1PK),
    proveDlog(admin2PK),
    proveDlog(admin3PK)
  ))
  
  hasAuthority && withinCap && governanceApproved
}

Minting contract with hard cap enforcement. State box tracks supply, governance multi-sig controls minting authority.

Варианты использования

  • Deflationary tokenomics (buyback-and-burn)
  • Capped supply governance tokens
  • Fee burning for protocol revenue
  • Proof-of-burn for cross-chain bridges
  • Elastic supply stablecoins

Вопросы безопасности

  • !Burns are irreversible - double-check amounts
  • !Use multi-sig for governance-controlled burns
  • !Log burn events for off-chain tracking
  • !Ensure state box cannot be destroyed accidentally

Реальные реализации

SigmaUSD

Reserve-backed stablecoin with dynamic supply

Прокачайте навыки ErgoScript

Получайте уведомления о новых паттернах, туториалах и ресурсах для разработчиков.

Follow for daily updates