אכיפת תמלוגי NFT ב-Blur: הגדרה בשעה אחת

בעלי קולקציות NFT מאבדים לעיתים קרובות הכנסה ממכירות משניות ב-BLUR כאשר תמלוגים אינם מוגנים כראוי. אנו מגדירים תמלוגים מחייבים באמצעות OperatorFilterRegistry ו-ERC-2981, ומשחזרים תשלומים תוך שעה. הצוות שלנו מספק הגנה מלאה מהקצה לקצה—מביקורת חוזה ועד יישום ותמיכה מתמשכת—ומבטיח פעילות אמינה ללא החמצת מועדים.

שירותי פיתוח בלוקצ'יין

שאלות נפוצות

העבודות האחרונות

  • פיתוח אתר חברה B2B ADVANCE
    פיתוח אתר חברה B2B ADVANCE
    1481
  • פיתוח אפליקציית ווב עבור FEEDME
    פיתוח אפליקציית ווב עבור FEEDME
    1335
  • פיתוח אתר עבור BELFINGROUP
    פיתוח אתר עבור BELFINGROUP
    1034
  • פיתוח חנות מקוונת לחברת FURNORO
    פיתוח חנות מקוונת לחברת FURNORO
    1293
  • עיצוב לוגו לחברת B2B Advance
    עיצוב לוגו לחברת B2B Advance
    738
  • פיתוח אפליקציית ווב עבור Enviok
    פיתוח אפליקציית ווב עבור Enviok
    1031

אובדן תמלוגים ב-Blur — בעיה המוכרת לבעלי אוספי NFT. אכיפת תמלוגי NFT ב-Blur אפשרית רק דרך OperatorFilterRegistry. בלעדיו, אפילו תקן ERC-2981 אינו מבטיח תשלומים. אנו מגדירים הגנה תוך שעה, ומשקמים את ההכנסה ממכירות משניות. בהתבסס על ניסיון עם יותר מ-50 אוספים, הכנו מדריך שלב-אחר-שלב.

Blur מאשרת רשמית אכיפת תמלוגים חובה עבור חוזים הרשומים ב-OperatorFilterRegistry. הבעיה היא שרוב המפתחים מסתמכים אך ורק על ERC-2981, וסומכים על יושרת השוק. אבל Blur אינה בודקת ERC-2981 ללא הפילטר הנוסף. OperatorFilterRegistry פותר זאת: חוזה עם ה-modifier onlyAllowedOperator חוסם העברות דרך פלטפורמות לא מורשות.

כיצד פועלת אכיפת תמלוגים ב-Blur?

אכיפה חובה מתבססת על שני מנגנונים: יישום תקן ERC-2981 ורישום ב-OperatorFilterRegistry. תקן ERC-2981 מגדיר תמלוגים על-השרשרת, בעוד שה-OperatorFilter אוכף אותם ב-Blur. עבור חוזים שכבר נפרסו ללא תמיכה ב-ERC-2981, השתמשו ב-Manifold Royalty Registry — פתרון רטרואקטיבי ללא שינויי קוד.

ERC-2981: תמלוגים על-השרשרת

ERC-2981 הוא תקן מינימלי: החוזה מיישם את royaltyInfo(tokenId, salePrice), ומחזיר את הנמען והסכום. אם חוזה כבר נפרס ללא ERC-2981, הוספתו לחוזה בלתי-ניתן לשינוי היא בלתי אפשרית. אפשרויות: פריסת חוזה חדש עם מיגרציה או רישום תמלוגים דרך רגיסטרים מחוץ-לשרשרת (Manifold).

Manifold Royalty Registry הוא פתרון אוניברסלי: הבעלים של החוזה הישן רושם את הנמען והאחוז ללא שינויי קוד. נתמך על ידי Blur, OpenSea, Rarible. עבור חוזים חדשים, השתמשו ב-ERC2981 מ-OpenZeppelin עם _setDefaultRoyalty(receiver, feeNumerator) בקונסטרוקטור. feeNumerator מתוך 10000: 500 = 5%.

מדוע OperatorFilter מבטיח תשלומים?

Blur דורשת רישום ב-OperatorFilterRegistry עבור תמלוגים מחויבים. חוזה המשתמש ב-OperatorFilterer של OpenZeppelin עוקף את פונקציות ההעברה עם ה-modifier onlyAllowedOperator. מנגנון זה חוסם מסחר דרך שווקים לא מורשים שאינם מכבדים תמלוגים. עבור חוזים שכבר נפרסו ללא שדרוג, אכיפה מחויבת היא בלתי אפשרית — רק ERC-2981 דרך Manifold כמיטב המאמץ.

שיטה ניתן לאכיפה מורכבות יישום רטרואקטיבי
ERC-2981 לא (ב-Blur) נמוכה (1-2 ימים) לא
OperatorFilter כן בינונית (2-4 שעות) לא
Manifold Registry חלקית נמוכה (שעה) כן

OperatorFilter אוכף תמלוגים ב-100% מהמקרים ב-Blur, בעוד ש-ERC-2981 ללא הפילטר נותן 0% ערובה. זהו הבדל מפתח — בחירה ב-OperatorFilter יעילה פי 3 להגנה על הכנסות. תמלוגים אבודים יכולים להגיע לסכומים משמעותיים חודשית; ההתקנה מחזירה את עצמה במהירות.

דוגמת קוד: שילוב DefaultOperatorFilterer

import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/token/common/ERC2981.sol";
import "operator-filter-registry/src/DefaultOperatorFilterer.sol";

contract MyNFT is ERC721, ERC2981, DefaultOperatorFilterer, Ownable {
    constructor() ERC721("MyNFT", "MNFT") {
        _setDefaultRoyalty(msg.sender, 500); // 5%
    }

    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 tokenId,
        uint256 batchSize
    ) internal override(ERC721, OperatorFilterer) {
        super._beforeTokenTransfer(from, to, tokenId, batchSize);
    }

    function supportsInterface(bytes4 interfaceId) public view override(ERC721, ERC2981) returns (bool) {
        return super.supportsInterface(bytes4 interfaceId);
    }
}

מה אם החוזה שלך כבר נפרס?

אם החוזה בלתי-ניתן לשינוי ואינו תומך ב-ERC-2981, השתמשו ב-Manifold Royalty Registry. זהו רגיסטר מחוץ-לשרשרת: אתם רושמים את הנמען והאחוז, ו-Blur ושווקים אחרים קוראים נתונים משם. התהליך אורך 1-2 שעות ואינו דורש פריסה מחדש. עם זאת, הוא אינו נותן אכיפה של 100% — חלק מהשווקים עשויים להתעלם מהרגיסטר.

תהליך ההתקנה

  1. ניתוח חוזה (1-2 שעות). בדיקת ERC-2981, OperatorFilter, יכולת שדרוג.
  2. בחירת שיטה. אם חוזה חדש — שילוב OperatorFilter + ERC-2981. אם קיים — Manifold או מיגרציה.
  3. יישום. עבור חדש — הוספת import "@openzeppelin/contracts/access/Ownable.sol"; import "@openzeppelin/contracts/token/ERC721/ERC721.sol"; import "@openzeppelin/contracts/token/common/ERC2981.sol"; import "operator-filter-registry/src/DefaultOperatorFilterer.sol"; contract MyNFT is ERC721, ERC2981, DefaultOperatorFilterer, Ownable { constructor() ERC721("MyNFT", "MNFT") { _setDefaultRoyalty(msg.sender, 500); // 5% } function _beforeTokenTransfer( address from, address to, uint256 tokenId, uint256 batchSize ) internal override(ERC721, OperatorFilterer) { super._beforeTokenTransfer(from, to, tokenId, batchSize); } function supportsInterface(bytes4 interfaceId) public view override(ERC721, ERC2981) returns (bool) { return super.supportsInterface(bytes4 interfaceId); } } ו-DefaultOperatorFilterer. עבור קיים — קריאה ל-ERC2981 דרך Manifold.
  4. בדיקות על testnet. אימות תמלוגים תקינים ב-Blur דרך מכירת מבחן. השתמשו ב-Sepolia.
  5. אימות. לאחר הפריסה, ודאו שהאוסף מציג את אחוז התמלוגים בעמוד השוק.

בדיקות על testnet: פונקציית setRoyalties() עבור tokenIds שונים, העברות דרך כתובות לא מורשות (אמורות להידחות עם שגיאת royaltyInfo), הצגת תמלוגים בממשק ה-testnet של Blur. השתמשו ב-Tenderly לסימולציית עסקאות וב-Slither לניתוח סטטי.

השוואת תמיכת תמלוגים בין שווקים

שוק תמלוגים מחויבים דרך OperatorFilter מכבד ERC-2981 ללא פילטר
Blur כן לא
OpenSea כן כן
X2Y2 כן לא
LooksRare כן כן

מה כלול בעבודה

  • ביקורת על החוזה החכם הנוכחי: בדיקת תקנים, יכולת שדרוג, קוד.
  • המלצות לשיטת יישום התמלוגים האופטימלית.
  • כתיבה ושילוב קוד (OperatorFilter, ERC-2981, Manifold).
  • בדיקות על testnet (Sepolia, Goerli).
  • תיעוד והדרכת צוות.

אנו עובדים עם פרויקטי blockchain למעלה מ-5 שנים, יישמנו יותר מ-50 אוספי NFT על Ethereum, Polygon ו-BNB Chain. אנו מבטיחים פעולת תמלוגים תקינה בכל השווקים הנתמכים. לכל המהנדסים יש הסמכות Solidity והם עברו ביקורות פנימיות. צרו קשר להערכת פרויקט — נמצא את הפתרון האופטימלי תוך שעה. הזמינו התקנה היום והגנו על הכנסות האוסף שלכם.