ERC20’yi İyileştirmek İçin 375K Neden

EOS, Basic Attention Token (BAT) ve Storj gibi ERC20 token tabanlı juggernauts ile arayüz sözleşmesinin başarısını tartışmak zor. Ethereum topluluğu açıkça bu standart etrafında destek topladı, & hem geliştirici toplulukları hem de finans piyasaları olumlu yanıt veriyor. Bununla birlikte, tüm başarısına rağmen ERC20 standardı, çok da önemsiz olmayan bir hatayla sonuçlandı:

ERC20 token standardı, kullanıcıların ERC20 tokenlarını ERC20 uyumlu olmayan token adreslerine göndermelerine izin vererek son kullanıcılar için para kayıplarına yol açmaktadır..

Bir kullanıcı, ERC20 jetonlarını tanımayan bir Ethereum sözleşmesine bir ERC20 jetonu gönderdiğinde, kullanıcı fonlarına erişimi sonsuza kadar kaybeder. Bu sorun nedeniyle şu anda tam olarak kaç para kilitlendi? Yine, önemsiz bir miktar değil:

  • 310.067 GNT Golem sözleşmesine takılı kaldı (şu anda yaklaşık 217 bin dolar değerinde).
  • 242 TEKRAR Augur sözleşmesine takıldı (şu anda yaklaşık 15 bin dolar değerinde).
  • 814 DGD Digix DAO sözleşmesinde takılı kaldı (şu anda yaklaşık 125.000 $ değerinde).
  • 14.506 1. FirstBlood sözleşmesinde takılı kaldı (şu anda yaklaşık 12.000 $ değerinde).

Bu, bu sözleşmelerde donmuş olan 370.000 $ + ERC20 tokenlerinin üzerinde.; ERC20 token listesi büyüdüğünden, bu sayı büyük olasılıkla sözleşmelerde dondurulmuş bu tokenlerin toplam miktarının muhafazakar bir eksik tahminidir. Yukarıdaki liste hiçbir şekilde kapsamlı değildir – bunlar daha popüler ERC20 tokenlerinden sadece birkaçıdır..

Yukarıdaki sözleşmelerden hiçbirinin herhangi bir ERC20 token alması beklenmiyor – bu nedenle kullanıcılar bu adreslere token gönderdiklerinde işlemler ağ tarafından onaylanıyor; ancak, alıcı sözleşme jetonları tanımıyor. Bu jetonlarla ne yapacağını bilemez ve bu da fonların sonsuza kadar kilitlenmesine neden olur. Yine belirteçler reddedilmez – sadece alıcı sözleşme tarafından tamamen yok sayılırlar.

Bu işlemlerin çoğu, istemeden son kullanıcılar tarafından Aktar işlevi (daha önce tanıtılan otomatik transferFrom işlevinin aksine). ERC20’nin her iki Aktarımı da kullandığını & TransferFrom – bazı son kullanıcıların ERC20 tokenlarını beklemedikleri sözleşmelere doğrudan göndermek için Transfer’i kullandığı ortaya çıktı., & bu nedenle gelen jetonları tanımıyorum.

Sonunda, Ethereum topluluğunun birkaç üyesi, yeni bir ERC token standardı talep ederek bu sorunu doğrudan çözmeye karar verdi. GitHub’daki bu yeni token standardının yayın numarası, 223 numaralı yayın.

ERC223 Önerisi

GitHub kullanıcısı Dexaran, 5 Mart 2017’de bu token geri dönüş hatası sorununu gidermeyi amaçlayan yeni bir ERC standardı (ERC223) önerdi. GitHub sayısının 223 numaralı yeni belirteç önerisinin özeti aşağıdaki gibidir:

Aşağıda, belirteçlerin sözleşmelere yanlışlıkla gönderilmesini önlemek ve belirteç işlemlerinin eter işlemleri gibi davranmasını sağlamak için belirtilen belirteçle çalışan bir simge sözleşmesi ve sözleşmenin uygulayabileceği standart işlevler açıklanmaktadır..

Dexaran’ın jeton önerisi, merkezi olmayan uygulama kullanıcılarının yanlışlıkla jetonları söz konusu jetonları almaya hazır olmayan akıllı sözleşmelere göndermelerini hemen durdurmak için iki temel özelliği uygular:

  1. ERC20’yi konsolide etmek Aktar & TransferFrom tek bir Aktar üç parametreli işlev: (adres _to, uint _value, bayt verileri).
  2. alma sözleşme, token alıyorsa, zorunlu içerir TokenFallBack hangi tür gelen belirteçin tam olarak nasıl işleneceğini tanımlayan işlev.

Aktar & TransferFrom -> Aktar

ERC20 standardının bu yaygın soruna katkıda bulunan önemli bir parçası, son kullanıcıların yanlışlıkla transfer için kullanılan iki işlevden birini kullanma seçeneğine sahip olmasıdır (Transfer & TransferFrom).

ERC223, her iki işlevi de tek bir Aktar işlevi.

ERC223, dapp son kullanıcılarının tokenları hiç Ethereum adresi, bu sözleşmenin aynı Transfer işlevine sahip bir cüzdan veya sözleşme olmasına bakılmaksızın. Buradaki mantık, kullanıcıların bir Transfer işlevini tetikleme seçeneğini ortadan kaldırarak veya a TransferFrom işlevinden yalnızca tek bir Transfer işlevine, son kullanıcılar artık yanlış işlevi kullanma potansiyeline sahip değildir.

Yeni önerilen Transfer fonksiyonu, üç parametreyi (önceden sadece ikisini kabul etti) kabul eder ve daha da önemlisi, alıcı adres üzerinde bir TokenFallback fonksiyonunu çağırır. Tanımlanmış üç parametre olmadan, Transfer işlevi derleme yapamaz; TokenFallback işlevi içeren alıcı adresi olmadan, Transfer işlevi işlemi başarısız olur & hiçbir jeton transfer edilmeyecek.

function tokenFallBack ()

Ethereum geliştirmede bir sözleşme değiştirici var ödenebilir Ether almak için bir sözleşme hazırlamak için kullanılır – bu, bir sözleşmenin artık dijital para birimini beklediği anlamına gelir. Bir sözleşme yaparsa değil ödenecek değiştiriciyi içerirse, gönderilen işlem basitçe iptal edilir & iade. Fantezi değil, bu Ethereum 101.

ERC223 tokenFallback işlevi hakkında benzer bir düşünme yolu, ödenebilir değiştiricinin, tokenFallback işlevi, x token’ı almak için bir sözleşme hazırlamak olduğu için, Ether almak için bir sözleşme hazırlamaktır..

Bu standartta, sözleşmeli geliştiriciler zorunlu Sözleşmelerinin belirli belirteçlerle çalışmasını istiyorlarsa tokenFallback’i uygulayın. Alıcı, sözleşmesiz bir adres ise, bir ERC223 token işlemi, mevcut herhangi bir ERC20 token transferi gibi yürütülecektir. Öte yandan, alıcı bir sözleşmeyse, ERC223 belirteç sözleşmesi önce alıcı sözleşmesinde tokenFallback’i çağırmayı deneyecektir; tokenFallback işlevi bulunmazsa, işlem başarısız olur.

ERC’nin Evrimi

ERC223’ün kaba taslak durumuna rağmen, başka bir ERC standardı ufukta beliriyor – ERC 721. ERC721, değiştirilemez CryptoKitties, Decentraland land gibi varlıklar, & hatta belki bir günlük gayrimenkul varlıkları. ERC 721 ilerlemesi burada bulunabilir: https://github.com/ethereum/eips/issues/721

Hepsi, gençken Ethereum topluluğunun, büyüyen yeni geliştirici dalgasının önüne doğru standartları koyarak akıllı sözleşme platformunu geliştirme konusunda çok ciddi olduğunu gösteriyor. Yavaş ama emin bir şekilde, ERC token hataları azalacak – ve sonra soru en son standart ölçek olabilir mi??

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me