ERC 20 vs ERC 223 vs ERC 777: vertailu Ethereum-token-standardien välillä

Oletko Ethereumin kehittäjä, joka työskentelee salausprojektissa? Olet todennäköisesti kehittämässä uutta tunnusta käyttämällä ERC20-standardia, mutta sinun on tiedettävä parannustoiminnot. Tämä auttaa sinua tekemään oikean päätöksen siitä, mitä ERC-token-standardia käytetään, joten selitän tässä artikkelissa ERC777 vs ERC223 vs ERC20.

Aloitan vertailun selityksellä ERC 20: sta ja selitän myöhemmin sen haittoja. Sitten selitän Ethereumin yhteisön toteuttamat parannustyöt ERC 777: n ja ERC 223: n kautta.

Vertailu ERC20: n ja ERC223: n ja ERC777: n välillä

Mikä on ERC 20?

Ennen kuin vertaan ERC 20 vs ERC 223 vs ERC 777, minun on selitettävä, mikä on ERC ja mitä ERC20 edustaa. Ethereumin kehittäjät toimittavat usein Ethreumin parannusehdotuksia (EIP). Ethereum-yhteisö tarkistaa EIP: t, tekee kommentteja, mikä saattaa aiheuttaa jonkin verran uudistusta.

Kun Ethereum-yhteisö hyväksyy EIP: n, siitä tulee standardi, ja me kutsumme sitä sitten ‘Ethereum Request for Comments’ (ERC). ERC 20 on yksi tällainen standardi Ethreum-rahakkeille.

ERC 20 on tunnetuin Ethereum-token-standardi, ja melkein kaikki Ethereum-alustaa käyttäneet ICO: t ovat käyttäneet sitä. Kehittäjät käyttävät sitä oletusarvoisesti uusien tunnusten luomiseen, kun taas lompakot ja vaihdot hyväksyvät helposti ERC 20 -merkit.

Ennen ERC 20: ta Ethereumin kehittäjien oli asetettava erityiset säännöt, joita heidän tunnuksensa noudattaa, ja tästä lähestymistavasta puuttui standardointi. Nyt ERC20: n kanssa Ethereumin kehittäjät tietävät, että heidän on vain käytettävä ERC 20 -standardia. Tällä standardoinnilla oli suuri merkitys ICO-villityksen lisäämisessä vuodesta 2017 lähtien.

Lue lisää ERC 20 -standardista kohdasta “Aloittelijan opas: Mikä on ERC20?”.

Mitä ovat ERC 20 -standarditoiminnot?

ERC 20 -standardi määrää seuraavat toiminnot kehittäessään Ethereum-tunnusta:

  1. Hanki merkkien kokonaismäärä: Sinun on käytettävä “totalSupply” -toimintoa.
  2. Hae toisen omistajan tilien tunnussaldo.
  3. Lähetä tunnuksia toiselle omistajan tilille: Sinun on käytettävä “siirto” -toimintoa. Nämä tilit ovat EOA-tilejä.
  4. Lähetä tunnuksia yhdestä tunnisteosoitteesta toiseen. Tunnusosoitteet ovat sopimusosoitteita, ja sinun on käytettävä “transferFrom” -toimintoa.
  5. Anna toisen tilin nostaa varoja tililtäsi toistuvasti tietyn rajoituksen sisällä. Sinun tulisi käyttää tähän “Hyväksy” -toimintoa.
  6. Kuluttajat voivat palauttaa käyttämättömät rahakkeet omistajille “hyvitys” -toiminnon avulla.

ERC 20 -vika, joka polttaa rahakkeita

Vaikka ERC 20 -standardissa on hyvin dokumentoitu ja toteutettu kaiken kaikkiaan, siinä on vika, ja tämä on jo palanut rahakkeita miljoonien Yhdysvaltain dollareiden arvosta. “Siirto” -toiminnon avulla voit lähettää tunnuksia vain toiselle omistajalle, eli EOA-tilille.


Jos haluat lähettää varoja älykkääseen sopimustiliin, toisin sanoen muuhun Ethereum-tiliin, sinun on käytettävä hyväksyntä- ja siirto-yhdistelmää. Jos lähetät tunnuksia älykkääseen sopimukseen siirtotoiminnon avulla, näet onnistuneen tapahtuman, mutta sopimus ei koskaan saa tunnuksia.

Tämä polttaa nämä tunnukset ikuisesti, etkä voi hakea niitä. Useat käyttäjät ovat käyttäneet väärää toimintoa lähettääksesi tunnuksia älykkäisiin sopimuksiin ja menettäneet tunnuksensa lopullisesti!

Ethereum-säätiö tietää virheestä, mutta jatkaa ERC 20 -standardin mainostamista. En tiedä heidän syitä tehdä niin. He eivät todennäköisesti arvosta ongelman tuontia, tai muutos vastustaa.

ERC223-tokenistandardi: Ehdotettu ratkaisu ERC 20 -virheelle

Ethereumin kehittäjä, joka käyttää Reddit-käyttäjänimeä “Dexaran”, ehdotti EIP 223: ta ratkaisuna tähän ERC 20 -virheeseen. Ennen kuin vertailen ERC 20 vs ERC 223 vs ERC 777, selitän hänen ehdotuksensa ensin.

ERC223-token-standardi on edelleen luonnos, eikä Ethereum-yhteisö ole vielä ottanut sitä käyttöön. Se ehdottaa seuraavaa ratkaisua:

  1. Se pitää tapahtumaa Ethereumin lohkoketjussa tapahtumana ja käyttää tapahtumankäsittelykäsitettä.
  2. Jos käyttäjät käyttävät “siirto” -toimintoa lähettääksesi tunnuksia älykkääseen sopimukseen, se heittää virheen ja peruuttaa myöhemmin tapahtuman.
  3. Käyttäjä maksaa Ethereumin “kaasun hinnan”, mutta ei menetä mitään tunnusta.
  4. Tämä ehdotus lisää ylimääräisen parametrin “siirto” -toimintoon sen tarkistamiseksi, onko vastaanottava osoite sopimustili.
  5. Jos se havaitsee, että vastaanottajan osoite on sopimustili eikä EOA-tili, se olettaa, että sopimuksessa on otettu käyttöön “tokenFallback”.
  6. TokenFallback-toiminto sallii tunnuksen soittamisen takaisin, joten tapahtuma ei tallenna tunnusta.

Vaikka ERC223 ratkaisee ERC 20 -virheen suuressa määrin, tässä ehdotuksessa on heikkous. Jos vastaanottajan älykkäässä sopimuksessa ei ole “tokanFallback” -toimintoa, “Fallback” -toiminto toimii, mikä johtaa tunnusten menetykseen.

Vain harvat projektit käyttävät ERC 223: ta, esimerkki tästä on AmigoCoin-projekti. Voit lukea lisätietoja ERC 223 -ehdotuksesta GitHub EIP 223 -tietovarasto. Tätä standardia kutsutaan myös nimellä ERC 23.

ERC777-standardi: parannettu ehdotus ERC 20 -virheen korjaamiseksi

Parempi ehdotus ERC 20 -virheen aiheuttaman tunnusten menetyksen estämiseksi on ERC 777 -ehdotus. Se sisältää seuraavat:

  1. Uudet toiminnot: “lähetä” “siirron” sijasta, “autoriseOperator” “hyväksy” -kohdan sijaan ja “tokensReceived” sijasta “tokenFallback”.
  2. Niin kauan Ethereum-alustalla oli haittapuoli, koska kehittäjät eivät pystyneet tunnistamaan, mitä toimintoja älykkäät sopimukset toteuttavat. ERC 820, toisin sanoen toinen standardi, on ottanut käyttöön keskitettyjen sopimusten rekisterin verkossa, joten nyt on mahdollista tietää älykkään sopimuksen toiminnot ja rajapinnat. ERC777 käyttää sitä älyliittymän käyttämien rajapintojen tunnistamiseen. Nyt kehittäjät tietävät etukäteen, onko sopimuksessa tarvittavat toiminnot tiettyjen toimintojen kautta lähetettyjen tunnusten vastaanottamiseksi.
  3. ERC 777 mahdollistaa operaattoreiden sallittujen luetteloon lisäämisen, joten Ethereum-verkon käyttäjät voivat nyt hylätä maksun mustalla listalla olevista osoitteista. Osoite voidaan lisätä mustalle listalle monista syistä, esimerkiksi yritys hakkeroida verkkoa, laitonta toimintaa.

ERC 777 vs ERC 20 vs ERC 223 -vertailusta näet, kuinka ERC777 tarjoaa useita vaihtoehtoja kehittäjille, jotta he voivat estää tunnusten menetyksen. ERC777-standardiin liittyy kuitenkin muutamia riskejä seuraavasti:

  1. Jotkut Ethereumin kehittäjät uskovat, että autoriseOperator-toiminto on vanhentunut, joten kehittäjien ei pitäisi käyttää sitä. Tämä toiminto vaatii myös enemmän “kaasua” ja se lisää verkkoon kohdistuvaa rasitusta.
  2. Älykkäiden sopimusten keskusrekisterin käyttö sopimuksen käyttämien rajapintojen etsimiseen on riskialtista. Keskusrekisterissä voi olla virheitä, ja kaikesta riippuu siitä, onko sillä haitallisia vaikutuksia.

ERC777 on edelleen luonnos, mutta ORCA tunnus käyttää sitä. Lue ehdotus EIP 777 GitHub-arkisto.

ERC 777 vs ERC 20 vs ERC 223: Varojen suojaaminen on tärkeää

Vaikka vain aika näyttää, minkä standardin Ethereum-ekosysteemi hyväksyy “kultastandardiksi”, sinun on kehittäjänä muistettava, että sinun vastuullasi on suojata kauppiaiden ja sijoittajien varoja. Jos otat niin vastuullisen kannan, olet todennäköisesti samaa mieltä siitä, että monimutkaisuudesta huolimatta ERC 777 -standardi olisi pantava täytäntöön ja hyväksyttävä.

Huomautus: Jos haluat oppia lisää muutamista keskeisistä ERC-standardeista, lue kohta “ERC-standardien lopullinen luettelo, jonka sinun on tiedettävä”. 

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
Adblock
detector
map