プレイブック

BareToken: NFT (Non-Fungible Token) - ゲート型発行と悪用 (Baretoken Nft Non Fungible Token)

ハッシュマスク スタイルの NFT ゲート クレーム: ~10e18/日、INITIAL_ALLOTMENT、10 年間の排出終了。オープンミント表面と乱用シナリオ。

Bare Crypto Solidity マーケットプレイス プロトコル

一部 5 の 5

Remix IDE および OpenZeppelin v4.1 を使用した Hardhat/Foundry なしの BareNFT GitHub インポート、リザーブ、英国オークション、および NFT ゲートの BareToken エミッション アーキテクチャ。 ADR、弱い RNG、緊急権限のトレードオフ。

Bare Crypto Solidity marketplace protocol diagram

NFT (非代替トークン) を保持し、毎日の排出量を請求します。しかし、扉は開いていますか?

BareToken は、ハッシュマスクのような ERC20 排出量エンジンです:missionPerDay ~ 10 * 10^18、INITIAL_ALLOTMENT 1830e18、emissionEnd = start + 10 years。 BareNFT 所有者のみに蓄積されたクレーム(tokenIndices) ミント。 tokenId ごとの _lastClaim に従います。ただし、オープンミント(アドレス、値)、消費者/燃焼者の役割の混乱、およびアドレス(これ)を介した書き込み実行は、排出経済を悪用にさらします。```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


## 最初に説明した概念```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.
```ハッシュマスクスタイルのモデルはキャッシュフローをNFTに接続します。公共の造幣局や間違った役割は、単一の TX で経済を台無しにします。

## ADR: ハッシュマスク形式の 10 年間の排出量

決定: BareToken は NFT 保有者のために 1 日あたり最大 10e18 を蓄積し、請求とともに鋳造する必要があります。最初のクレーム INITIAL_ALLOTMENT を追加します。 10年以内に排出をなくしましょう。理由: コレクション保持インセンティブと長期的なトークン供給曲線。価格: 契約は、BareNFT アドレス (setBareAddress を 1 回のみ) と所有者の認証情報に厳密に関連付けられます。 IBareToken.isMintedBeforeReveal インターフェイスはコレクション側で期待されます。

## 請求の会計と図表

累積値は、lastClaim (またはmissionStart) と現在の間の秒数に、missionPerDay / SECONDS_IN_A_DAY を乗算します。放出終了後のゼロ。 INITIAL_ALLOTMENT (+ PRE_REVEAL_MULTIPLIER) が最初のクレームに追加されます。 claim は配列内の重複インデックスと ownerOf をチェックし、_lastClaim を更新し、合計金額をミントします。```text
emissionStart ──10y──> emissionEnd
per NFT:
  lastClaim[i]
     |
     v
  qty = dt * 10e18 / 86400
     + (first ? 1830e18 : 0)
claim(ids) → mint to holder
```## 虐待とパフォーマンスのシナリオ

public mint(to, value) は、ロール制御なしで供給を出力できます。これにより、排出モデルが即座に破壊されます。 isSpender は MINTER_ROLE を参照しますが、_addSpender は BURNER_ROLE を書き込みます。ロールのセマンティクスは複雑です。 burn はアカウント アドレス (this) を作成します。これはユーザー残高を燃やすのではなく、契約残高を対象とします。悪用: フラッシュ借用スタイルの所有権では、請求ウィンドウ (同じブロックでの買い、請求、売り) が、lastClaim をリセットする前に累積を見逃したり、UI の前提を破ったりする可能性があります。パフォーマンス: 大きな tokenIndices 配列と O(n^2) の重複コントロールによりクレーム ガスが増大します。クジラの集団請求はブロック制限に近づく可能性があります。

## このエピソードで最も混乱を招く対戦```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

独自のシステムのチェックリスト

  1. mint(address,value) を呼び出せるのは誰ですか。役割はありますか?
  2. setBareAddress は一度ロックされていますか、それとも変更できますか?
  3. 最初の要求の UI に INITIAL_ALLOTMENT はどのように表示されますか?
  4. 同じブロックの NFT の購入、請求、販売のシナリオは、lastClaim にどのような影響を与えますか?
  5. 大規模な tokenIndices 請求における重複したコントロール ガスのコストはいくらですか?

このセクションで覚えておくべきこと

  1. BareToken は、ハッシュマスク スタイルの NFT ゲート型毎日の排出 + 10 年間のホライズン ADR です。
  2. パブリックミントとロール/バーンの癖だけでは、ゲートモデルを保護できません。
  3. クレームガスとフラッシュの所有権の濫用は、排出設計の一環としてテストされるべきである。

毛細管放出は話です。開いたミントのドアがある場合、ストーリーは 1 回の取引で終了します。

FAQ

よくある質問

NFTゲート発光とは何ですか?

ERC20の請求権をERC721の所有権にリンクする。

INITIAL_ALLOTMENT とは何ですか?

最初の請求時に固定ボーナスが追加されました (1830e18)。それは、発現前のカルパニンに依存します。

「NFTゲート型主張=安全供給」は本当なのか?

公的造幣局または間違った役割がある場合、ゲート付き請求は経済を救うことはできません。

このセクションでは何を修正しますか?

このセクションでは、NFT ゲート型排出 ADR、10 年間の期間、および悪用シナリオを修正します。 BareToken は、ハッシュマスクのような ERC20 排出量エンジンです:missionPerDay ~ 10 * 10^18、INITIAL_ALLOTMENT 1830e18、emissionEnd = start + 10 years。 BareNFT 所有者のみに蓄積されたクレーム(tokenIndices) ミント。 tokenId ごとの _lastClaim に従います。ただし、オープンミント(アドレス、値)、消費者/燃焼者の役割の混乱、およびアドレス(これ)を介した書き込み実行は、排出経済を悪用にさらします。

学んだエンジニアリング原則

  • NFT ゲート型排出 ADR は、同じ脅威モデルでミント/バーン/ロールの表面をカバーする必要があります。
  • 初期割り当てと日次レートは、UI とオンチェーン アカウンティングで同じ式で表示される必要があります。
  • クレームのバッチ サイズと所有権フラッシュのシナリオは、パフォーマンス テストと悪用テストとして作成する必要があります。

続きを読む

続きを読む

シリーズの次のシリーズ

同じシリーズ

同じシリーズ

Paylaş