Back

ERC721 vs. ERC721A

29 marca

/

Blockchain, DeFi, Edukacja

Technologia może być świetnym rozwiązaniem dla wielu podmiotów gospodarczych i firm. Niestety wiele osób, które z niej korzysta, do końca nie rozumienie zasad działania danych rozwiązań. Dla użytkownika końcowego NFT często znaczy niewiele więcej niż zdecentralizowany przedmiot kolekcjonerski lub dzieło sztuki cyfrowej. Można cieszyć się tą branżą, nie rozumiejąc, jak wszystko funkcjonuje. Trendy w technologii blockchain mogą być fascynujące nawet dla tych, którzy jej nie tworzą informatycznie. Dlaczego ERC721 i ERC721A są tak istotne w NFT? Co powoduje, że powinniśmy zdobyć wiedzę na temat tej technologii? O tym piszemy poniżej!

erc721

Co to jest ERC721?

Chociaż technologia blockchain jest zdecentralizowana, to potrzebujemy wspólnego języka, dzięki któremu będziemy mogli zrozumieć zawarte w niej dane. W tym momencie przydają się standardy tokenów, takie jak ERC721. Jest to standard, który działa w podobny sposób, w jaki działają wszystkie porty lub wtyczki w urządzeniu. Warto zaznaczyć np. że formaty takie jak PNG i JPEG, z którymi często łączy się NFT, są same w sobie standardami obrazu. ERC721 jest niezwykle popularnym standardem tokenów służącym do tworzenia niezamiennych tokenów — NFT — na blockchain’ ach, takich jak Ethereum i Polygon. Litera „E” w „ERC721” oznacza „Ethereum” i nie jest to standard NFT, który działa na blockchainach niezgodnych z portfelami Ethereum, takimi jak Solana i Tezos.

Co sprawia, że ​​token zgodny ze specyfikacją ERC721 jest przydatny?

Poniżej przedstawiamy zalety tego rozwiązania:

  • Każdy token jest unikalny (wspomniana wcześniej niewymienialność)
  • Każdy token można przenieść lub sprzedać
  • Właściciele mogą autoryzować inne inteligentne kontrakty do zarządzania tokenami

Ponadto, każdy z nich ma kluczowe znaczenie dla zapewnienia tego, że ​​rynki NFT, takie jak OpenSea i LooksRare, mogą działać zgodnie z przeznaczeniem. Zaznaczyć trzeba, że smart kontrakty, to po prostu aplikacje, które żyją w technologii blockchain. Wydaje się skomplikowane? Można to opisać prościej: ERC721 jest ustandaryzowanym sposobem tworzenia unikalnych tokenów blockchain, którymi można łatwo handlować na rynkach

Czym jest ERC721A?

Twórcy oprogramowania w krypto z reguły wykorzystują istniejące biblioteki kodu, aby uprościć proces rozwoju danego projektu. Podczas pisania kodu, który znajduje się w blockchainie jest jeszcze większa presja, aby używać sprawdzonego w boju, istniejącego kodu, gdziekolwiek jest to możliwe, gdyż technologia blockchain uniemożliwia jakąkolwiek edycję kodu! W sektorze NFT doszło do powszechnego przyjęcia tego samego kodu open source, aby umożliwić działanie ERC721. Następnie pojawił się projekt “Azuki”, który w błyskawicznym tempie zdobył uznanie wśród sektora NFT. Oprócz samej kwestii NFT, projekt stworzył nową implementację ERC721A. Implementacja ERC721A nie ma za zadanie zmiany standardu tokena. Jej głównym celem jest idealne dopasowanie do tokena, jednak to zadanie wymaga spełnienia szeregu innych norm w przeciwieństwie do stosowanego do tej pory ERC721.
Dzięki temu została zmniejszona ilość gazu, którą potrzeba do wybicia nowych NFT (w szczególności tych NFT, które są tworzone partiami)
Koszty gazu powstałe podczas transferowania NFT opartych na ERC721A innym osobom po cenach pierwotnego właściciela są nieco wyższe. Ogólnie rzecz biorąc - oszczędności gazu, jakie może zapewnić ERC721A w porównaniu do ERC 721 są
świetne, jednak nie można tego rozwiązania wdrożyć wszędzie. Przykładowo - podmioty, które nie wybijają masowo NFT i tak wydadzą znaczną ilość gazu, jeżeli weźmiemy pod uwagę koszty transferu.

W jaki sposób działa ERC721A?

ERC721A przyjmuje określone warunki, które następnie oddziaływują na projekt smart contractu. Oddziaływanie sprawia, że zachodzą następujące rzeczy:

  • Identyfikatory tokenów powinny zawsze rosnąć w sposób stabilny - począwszy od zera. Obecnie wiele projektów NFT spełnia ten warunek.
  • Zmniejszenie kosztów gazu bicia NFT jest najważniejszym elementem produkcji NFT.

Mając te założenia, ERC721A dokonuje następujących optymalizacji kontraktów:

  • Zmniejsza nieużytkowaną przestrzeń, która służy do przechowywania metadanych z tokenów.
  • Ogranicza stan własności do jednego coina z całej partii NFT.

Dlaczego ERC721A jest tak istotne? Gdyż pozwala nam zrozumieć ile tak naprawdę wynoszą opłaty za gaz i z czego one wynikają! Zmniejszenie pracy do wysłania transakcji pozwala oszczędzać energię. Podkreślmy w tym momencie, że blockchain generuje 2 rodzaje transakcji - zapisy i odczyty.

  • Zapis - zachodzi, gdy dokonujemy czynności w blockchainie i zmienia się jego stan (przykładowo sprzedajemy NFT).
  • Odczyt - można stwierdzić, że jest to przejrzenie akt danej transakcji.

Użytkownicy, którzy korzystają z technologii blockchain ponoszą większe koszty z tytułu zapisu, aniżeli odczytu. Jeżeli zatem zmniejszymy pulę informacji do zapisu, bądź wymagań służących przekazywaniu transakcji, to zmniejszymy koszt wybicia NFT.

Ryzyko wykorzystania kontraktów ERC721A do generowania wielu transakcji NFT

Transakcje transferFrom i safeTransferFrom kosztują więcej gazu, co powoduje, że NFT od momentu wybicia może kosztować więcej. Podkreślić należy, że dzięki ERC721A dochodzi do zwiększenia wydajności bez ustawiania właścicieli konkretnych identyfikatorów tokenID.

Na przykład na poniższym zdjęciu są dwa wezwania do wybicia partii, jedno przez Marcusa do wybicia żetonów #100, #101 i #102 w jednym wywołaniu, a drugie wezwanie przez Brutusa do wybicia żetonów #103 i #104

Powyższy schemat pokazuje, że ERC721A musi dwukrotnie ustawiać metadane własności, zamiast 5 krotnie - raz dla paczki Marcusa i raz dla paczki Brutusa. Nie jest to takie proste, gdyż przesyłając tokenID, który nie posiada adresu właściciela, to kontrakt musi stworzyć czynności obejmujące wszystkie tokenyID celem weryfikacji pierwotnego właściciela NFT. Wynika to z faktu, gdyż to pierwotny właściciel ma prawo do przeniesienia tokenu i ustawienia go na nowy podmiot. Poniżej przedstawiamy wykres z tym powiązany:

table

Sposób odczytywania tego wykresu polega na przejściu najpierw na oś x, a następnie na oś y, na przykład:

  • „Wybij partię 1 NFT, a następnie przenieś tokenID 0”, lub
  • „Wybij partię 3 NFT, a następnie przenieś tokenID 1” lub
  • „Wybij partię 5 NFT, a następnie przenieś tokenID 4”

Powyższe wyniki wskazują, że przeniesienie identyfikatorów tokenów w środku większej partii mennic (tj. t1, t2) kosztuje więcej niż przeniesienie identyfikatorów tokenów na końcach partii (tj. t0, t4).

Jak zminimalizować koszt przeniesienia całej partii NFT?

Minimalizacja kosztów jest możliwa do osiągnięcia, jeżeli wybijamy zawsze maksymalną i dozwoloną liczbę NFT podczas wypuszczenia całej partii. Dodatkowo należy pamiętać, by w momencie przenoszenia partii rozpoczynać cykl od tokenów o numer ODD w sposób rosnący.
Przykłady projektów NFT wykorzystujących umowy ERC721A
Oto zestaw projektów, które obecnie korzystają z umowy ERC721A:

  • @AzukiZen
  • @cerealclubnft
  • @TheLostGlitches
  • @standardweb3
  • @KittyCryptoGang
  • @XRabbitsClub
  • @WhaleTogether
  • @pixelpiracynft
  • @dastardlyducks
  • @MissMetaNFT
  • @StarcatchersNFT
  • @LivesOfAsuna
  • @richsadcatnft
  • @themonkeypoly
  • @womenofcrypto_
  • @TravelToucans
  • @HuhuNFT

Czy kontrakty ERC721A są nadal uważane za transakcje NFT?

Oczywiście. Kontrakty ERC721A to NFT. Każdy kontrakt, który implementuje standard tokenów ERC721, bądź interfejsy ERC1155 jest uważane za tokeny niewymienialne, bądź pół wymienialne. Po prostu ERC721A jest rozszerzeniem i optymalizacją poprzedniej wersji, czyli ERC721. Kontrakt ERC721A jest bardzo dobrym pomysłem pozwalającym zaoszczędzić środki na gazie w danej społeczności, przy jednoczesnej ochronie sieci Ethereum od zbędnego przeciążenia.

Pamiętajmy, że NFT dostarczają wielu nieograniczonych możliwości nie tylko dla sztuki, muzyki, czy sportu. Warto znać i rozumieć ERC721 i ERC721A, gdyż to pozwala nam zrozumieć czym naprawdę są NFT od samych podstaw konstrukcyjnych. Dzięki temu mamy większą świadomość kierunku, w którym rozwija się ten sektor. Warto mieć na uwadzę, że obie implementacje są istotne, jednak nie jest to pierwszy i ostatni element NFT. Są one wyznacznikiem którym należy podążać.

Zakres projektu

API/Backend
Development

Strony Internetowe
Development

Aplikacje Mobilne
Development

Projektowanie
Design

Blockchain
Solutions

Usługi Internetowe
Services

Next Enterprises zapewniło bankowi usługę technologiczną potrzebną do wprowadzenia projektu opartego na blockchainie. W ramach współpracy firma zaprojektowała usługę w modelu SaaS. Rozwiązanie przechowuje na swoich serwerach, udostępniając je bankowi i jednocześnie gwarantując jakość zgodną ze standardami zawartymi w umowie.

Tomasz Sienicki

Tomasz Sienicki

Blockchain Strategy Manager, Alior Bank

Współpraca z zespołem Nextrope wyznacza zupełnie nowy poziom jakości, innowacyjnych rozwiązań i profesjonalnych usług. Jeśli potrzebujesz wsparcia przy technologii blockchain, trafiłeś na profesjonalistów. Zdecydowanie polecam!

Kajetan Komar-Komarowski

Kajetan Komar-Komarowski

Współzałożyciel i prawnik Lex Secure

W listopadzie 2017 r. opublikowaliśmy grę wykorzystującą inteligentne kontrakty jako mechanizm dystrybucji i transakcji. Zespół Nextrope wspierał nas w najważniejszej części projektu - tworzeniu i testowaniu bezpieczeństwa inteligentnych kontraktów blockchain w sieci Ethereum. Mogę gorąco polecić Mateusza i jego zespół - to prawdziwi eksperci w dziedzinie blockchaina.

Maciej Skrzypczak

Maciej Skrzypczak

CEO Gameset