Playbook

BareToken: Emisión y abuso controlados por NFT (token no fungible) (Baretoken Emision Y Abuso Controlados Por Nft Token No Fungible)

Reclamación cerrada por NFT estilo Hashmasks: ~10e18/día, INITIAL_ALLOTMENT, fin de emisión de 10 años. Abra la superficie de menta y los escenarios de abuso.

Protocolo de mercado de solidez criptográfica desnuda

Parte 5 de 5

BareNFT sin Hardhat/Foundry con Remix IDE y OpenZeppelin v4.1 Importaciones de GitHub, reserva, subasta en el Reino Unido y arquitectura de emisión BareToken controlada por NFT; ADR, RNG débil y compensaciones de autoridad de emergencia.

Bare Crypto Solidity marketplace protocol diagram

Mantenga NFT (token no fungible), reclame emisiones diarias, pero ¿están las puertas abiertas?

BareToken es un motor de emisiones ERC20 similar a Hashmasks: emitPerDay ~ 10 * 10^18, INITIAL_ALLOTMENT 1830e18, emitEnd = inicio + 10 años. reclamar (tokenIndices) mentas acumuladas solo para el propietario de BareNFT; Se sigue _lastClaim por tokenId. Sin embargo, abrir la menta (dirección, valor), confundir los roles de gastador/quemador y quemar la ejecución a través de la dirección (esto) abre la economía de emisiones al abuso.```text BareNFT ownerOf(tokenId) == msg.sender | accumulated(tokenId) lastClaim → now * emissionPerDay / day + INITIAL_ALLOTMENT (first claim) | claim([ids]) → _mint ERC20 | abuse doors: public mint(), role confusion, burn quirk


## Conceptos en la primera mención```text
📦 NFT-gated emission
ERC20 claim hakkının ERC721 sahipligine baglanmasi.

📦 INITIAL_ALLOTMENT
Ilk claim'de eklenen sabit bonus (1830e18); pre-reveal carpanina bagli.

📦 emissionEnd
start + 86400*365*10; on yillik emisyon ufku.

📦 Per-token lastClaim
Her NFT indeksinin kendi emisyon saat dilimini tasimasi.
```El modelo estilo Hashmasks conecta el flujo de caja con NFT; La ceca pública o el papel equivocado arruinan la economía con un solo tx.

## ADR: Emisiones a 10 años al estilo Hashmasks

Decisión: BareToken debería acumular ~10e18 por día para los titulares de NFT y acuñarlo con un reclamo; agregue el primer reclamo INITIAL_ALLOTMENT; Que se acaben las emisiones en 10 años. Motivo: incentivo de retención de colecciones y curva de oferta de tokens a largo plazo. Precio: el contrato está estrictamente vinculado a la dirección BareNFT (establezcaBareAddress una vez) y las credenciales de propiedad; Se espera la interfaz IBareToken.isMintedBeforeReveal en el lado de la colección.

## Contabilidad y diagrama de reclamaciones

acumulado multiplica los segundos entre lastClaim (o emisiónStart) y ahora por emisiónPerDía/SECONDS_IN_A_DAY; Cero después del fin de la emisión. INITIAL_ALLOTMENT (+ PRE_REVEAL_MULTIPLIER) se agrega en el primer reclamo. Claim comprueba si hay índices duplicados y propietario de en la matriz, actualiza _lastClaim y acuña el importe total.```text
emissionStart ──10y──> emissionEnd
per NFT:
  lastClaim[i]
     |
     v
  qty = dt * 10e18 / 86400
     + (first ? 1830e18 : 0)
claim(ids) → mint to holder
```## Escenarios de abuso y rendimiento

La menta pública (a, valor) puede imprimir suministro sin control de roles, rompiendo instantáneamente el modelo de emisión. isSpender mira MINTER_ROLE pero _addSpender escribe BURNER_ROLE; La semántica de roles es complicada. burn crea la dirección de la cuenta (this): no quema el saldo del usuario, sino que apunta al saldo del contrato. Abuso: con la propiedad de estilo préstamo rápido, la ventana de reclamo (compra-reclamo-venta en el mismo bloque) puede perder la acumulación antes de restablecer el último reclamo o romper los supuestos de la interfaz de usuario. Rendimiento: la gran matriz de tokenIndices y el control duplicado O(n^2) inflan el gas reclamado; Los reclamos colectivos de ballenas pueden acercarse al límite del bloque.

## Los enfrentamientos más confusos de este episodio.```text
❌ NFT-gated claim = arz guvenli
✓ Public mint veya yanlis rol varsa gated claim ekonomiyi kurtaramaz

❌ INITIAL_ALLOTMENT her claim'de tekrar eklenir
✓ Yalniz lastClaim == emissionStart iken bir kez eklenir

❌ burn(msg.sender bakiyesini yakar)
✓ Bu implementasyonda burn hesabi address(this)'e cevrilir — quirky ve tehlikeli

Lista de verificación de su propio sistema

  1. ¿Quién puede llamar mint (dirección, valor)? ¿Existe alguna función?
  2. ¿setBareAddress se bloquea una vez o se puede cambiar?
  3. ¿Cómo se muestra INITIAL_ALLOTMENT en la interfaz de usuario en el primer reclamo?
  4. ¿Cómo afecta a lastClaim el escenario de compra-reclamación-venta de NFT en el mismo bloque?
  5. ¿Cuál es el costo del gas de control duplicado en el reclamo de índices simbólicos grandes?

Cosas para recordar de esta sección

  1. BareToken es una emisión diaria controlada por NFT estilo Hashmasks + ADR con un horizonte de 10 años.
  2. Las peculiaridades públicas de acuñación y rol/quema por sí solas no aseguran el modelo cerrado.
  3. Se debe probar el abuso de propiedad del gas y de la propiedad inflamable como parte del diseño de emisiones.

La emisión capilar es una historia; Si hay una puerta abierta, la historia termina en una sola transacción.

FAQ

Frequently asked questions

¿Qué es la emisión controlada por NFT?

Vincular el derecho de reclamo ERC20 a la propiedad ERC721.

¿Qué es INITIAL_ALLOTMENT?

Bonificación fija agregada en el primer reclamo (1830e18); Depende de la carpanina previa a la revelación.

¿Es cierto "afirmación controlada por NFT = suministro seguro"?

Si existe una casa de moneda pública o un papel equivocado, el reclamo cerrado no puede salvar la economía.

¿Qué soluciona esta sección?

Esta sección fija el ADR de emisiones controlado por NFT, el horizonte de 10 años y los escenarios de abuso. BareToken es un motor de emisiones ERC20 similar a Hashmasks: emitPerDay ~ 10 * 10^18, INITIAL_ALLOTMENT 1830e18, emitEnd = inicio + 10 años. reclamar (tokenIndices) mentas acumuladas solo para el propietario de BareNFT; Se sigue _lastClaim por tokenId. Sin embargo, abrir la menta (dirección, valor), confundir los roles de gastador/quemador y quemar la ejecución a través de la dirección (esto) abre la economía de emisiones al abuso.

Principios de ingeniería aprendidos

  • El ADR de emisión controlado por NFT debe cubrir superficies mint/burn/role en el mismo modelo de amenaza.
  • La asignación inicial y la tarifa diaria deben mostrarse con la misma fórmula en la interfaz de usuario y en la contabilidad en cadena.
  • Los escenarios de tamaño de lote de reclamaciones y de propiedad inmediata deben escribirse como pruebas de rendimiento y abuso.

Continuar leyendo

Continuar leyendo

Siguiente en la serie

Misma serie

Misma serie

ENSAYO

BareNFT: Roles, Pausable y Token URI

BareNFT ofrece mint (a, id, uri) controlado por roles con ERC721 Enumerable/Burnable/Pausable y AccessControl. URI por token y compensaciones de pausa.

Paylaş