プレイブック
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、緊急権限のトレードオフ。
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
独自のシステムのチェックリスト
- mint(address,value) を呼び出せるのは誰ですか。役割はありますか?
- setBareAddress は一度ロックされていますか、それとも変更できますか?
- 最初の要求の UI に INITIAL_ALLOTMENT はどのように表示されますか?
- 同じブロックの NFT の購入、請求、販売のシナリオは、lastClaim にどのような影響を与えますか?
- 大規模な tokenIndices 請求における重複したコントロール ガスのコストはいくらですか?
このセクションで覚えておくべきこと
- BareToken は、ハッシュマスク スタイルの NFT ゲート型毎日の排出 + 10 年間のホライズン ADR です。
- パブリックミントとロール/バーンの癖だけでは、ゲートモデルを保護できません。
- クレームガスとフラッシュの所有権の濫用は、排出設計の一環としてテストされるべきである。
毛細管放出は話です。開いたミントのドアがある場合、ストーリーは 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 とオンチェーン アカウンティングで同じ式で表示される必要があります。
- クレームのバッチ サイズと所有権フラッシュのシナリオは、パフォーマンス テストと悪用テストとして作成する必要があります。
続きを読む
続きを読む
シリーズの次のシリーズ
BareNFTAuction: 請求、返金および緊急権限
英国のオークション: 入札、請求、キャンセル、保留中の返品、および所有者の緊急送金Nft/transferFundsのトレードオフ。
同じシリーズ
BareNFTReserve: エスクロー、RandomBuy、弱い RNG
オーナー専用の createNewListing、buy および randomBuy — keccak256(revealNonce, block.difficulty, msg.sender) % 3. オーナー運営のマーケットプレイス ADR および緊急送金。
同じシリーズ
BareNFT: ロール、一時停止可能、およびトークン URI
BareNFT は、ERC721 Enumerable/Burnable/Pausable および AccessControl を備えたロールゲート型 mint(to,id,uri) を提供します。トークンごとの URI と一時停止のトレードオフ。