Token security – jakiego potrzebujesz?
Partnerem cyklu jest firma Value
Po podjęciu decyzji o tokenizacji lub przynajmniej użyciu tokenów w biznesie stajemy przed wyborem: jaki rodzaj tokena wybrać? Jakiej platformy dla tokenów użyć?
W przypadku, gdy token ma jedynie reprezentować ilość posiadanych jednostek rozliczeniowych i nie zachodzą żadne dodatkowe warunki użycia tokena, ani każdy token nie musi nieść ze sobą dodatkowych informacji mamy bardzo szeroki wybór: praktycznie każdy „zwykły” token będzie dla nas dobry. Czy postawimy na Waves, Omni czy wreszcie ETH w standardzie ERC20 – technicznie nie będzie różnicy. W takiej sytuacji musimy podjąć decyzję, opierając się o koszty transakcji na danej platformie, jej popularności i możliwości użycia na giełdach.
W takim porównaniu najczęściej postawimy na ETH jako najpopularniejszą platformę, godząc się jednocześnie na spore opłaty przy transferach tokenów.
W przypadku jednak gdy nasz token musi zawierać dodatkowe informacje identyfikacyjne, numery serii, jakiś unikalny wyróżnik – musimy zbudować token oparty o bardziej rozwinięty standard niż ERC20.
Sam standard ERC20 daje podstawowe informacje o tokenie (nazwa, symbol, podzielność) oraz umożliwia podstawowe transfery (wysłanie tokenów, upoważnienie do wysłania i wysłanie w czyimś imieniu) oraz sprawdzenie stanu posiadania dowolnego adresu. Token taki jest w pełni wymienialny („fungible”), bo każda jego jednostka jest identyczna. Standard ten jednak nie zawiera domyślnie funkcji ułatwiających komunikację z kontraktami.
Praktycznie wszystkie standardy tokenów rozwijają standard ERC20 o kolejne funkcjonalności, udostępniając nowe funkcje, interfejsy czy wreszcie wyróżnienia tokenów.
Standardem pozwalającym na dowolne oznakowanie każdego tokena jest ERC721. Tokeny w tym standardzie nie są wymienne – każdy z nich jest unikalny. Można, oczywiście, w obrębie jednego tokena 721 zbudować sposób identyfikacji „serii” tokena (najprościej porównać to do różnych serii akcji jednej firmy), jednak głównym założeniem tokenów w tym standardzie jest właśnie unikalność każdego tokena.
Gdy potrzebujemy współpracy z kontraktami, powinniśmy zainteresować się standardem ERC777. Tokeny w tym standardzie zgodne są z ERC20 (co ułatwia integrację z portfelami czy giełdami), ale mają dodatkowo możliwość wywoływania kontraktów i przekazywania danych podczas takiego wywołania. Uniemożliwia to w praktyce wysłanie tokena 777 do kontraktu, który nie potrafi obsłużyć odbioru takiego tokena.
Bazując na działających już tokenach, proponowany jest standard tokena security o identyfikatorze ERC1400. Pomimo że propozycja ma już rok, ciągle trwają prace nad implementacją i nadal jest oznaczona ona jako szkic („draft”).
1400 jest zasadniczo zbiorem zasad (opisanych w innych ERC), które winien spełniać token. Token 1400 jest wstecznie zgodny z ERC20 i 777, jest więc tokenem wymienialnym. Standard opisujący token częściowo wymienialny ma natomiast numer ERC1410.
ERC1410 staje się więc najbardziej uniwersalnym standardem, umożliwiającym budowanie tokena dokładnie pod potrzeby jego twórcy, zapewniając jednocześnie prostą integrację z istniejącymi portfelami, kontraktami czy giełdami.
Standard ten pozwala na „rozbijanie” tokenów, tworząc „transze” lub „partycje”. Mamy więc dokładne odwzorowanie systemu emisji papierów wartościowych znany ze zwykłego rynku.
Przed wyborem standardu, w jakim chcemy budować nasz token, warto wykonać bardzo dokładną analizę naszych potrzeb oraz modelu biznesowego, w jakim będzie funkcjonować nasz token. Może się bowiem okazać, że rozbudowany kontrakt tokena nie jest na do niczego potrzebny, a nie potrzebnie podniesie koszta pierwotnej tokenizacji i późniejszego używania tokena.