اگر به دنبال نوشتن قرارداد هوشمند در بستر بلاک چین اتریوم هستید، حتما واژه ERC20 به گوشتان خورده است. در این مقاله میخواهیم توضیح دهیم که این استاندارد چیست و استفاده از آن در نوشتن قرارداد هوشمند چه مزایا و معایبی دارد.
بخش ERC در ERC20 مخفف عبارت Ethereum Request for Comments است. RFC خلاصه شده عبارت Request For Comment بوده و اسناد RFC مجموعه ای از یادداشت های تکنیکی و سازمان یافته میباشند که پیرامون اینترنت و مباحث جنبی آن رشد پیدا کردهاند. این اسناد که از سال ۱۹۶۹ میلادی تا به امروز در حال تنظیم و توسعه هستند، حاوی بسیاری از مفاهیم شبکه های کامپوتری مثل قراردادها (پروتکل ها)، رویه ها، برنامه ها و مفاهیم انتزاعی میباشند. مرکز رسمی برای تبیین و نظارت بر این قراردادها سازمان IETF میباشد.
به زبان سادهتر ERC، پروتکل رسمی برای بهبود بلاک چین اتریوم است. عدد ۲۰ هم نشان دهنده یک شناسه خاص برای پروتکل ERC20 میباشد. این پروتکل در سال های اخیر نقش اساسی در صنعت بلاک چین و ارزهای دیجیتالی داشته است و کمک کرده تا هزاران برنامه غیر متمرکز (DApps) در یک پلتفرم به صورت استاندارد توسعه یابند.
استاندارد ERC20 به توسعه دهندگان و شرکت ها اجازه میدهد تا پروژه های خود را توکنیزه کرده و از طریق ICO جذب سرمایه کنند. این استاندارد مجموعهای از توابع پایهای است که توسعه دهندگان برنامه در بستر بلاک چین اتریوم باید آنها را پیادهسازی کنند تا توکن آنها یک توکن ERC۲۰ باشد. هرچند که استفاده از این استاندارد اجباری نیست، ولی اکثر توسعه دهندگان آن را رعایت میکنند تا مطمئن باشند که توکن آنها میتواند با انواع کیف پول ها، صرافی ها و قراردادهای هوشمند بدون مشکل کار کند.
مزایای توکنهای ERC20
پیش از اینکه این استاندارد به وجود بیاید، برنامه نویسها از اسامی متفاوتی برای نوشتن کد خود استفاده میکردند. برای مثال یکی از اسم تابع totalAmount برای ارائه تعداد کل توکنهای عرضه شده استفاده میکرد و دیگری از totalNumber. به دنبال آن کیف پولها و صرافیها برای ارتباط گرفتن با هر توکن مجبور بودند کد هر توکن را بخوانند و برای ارتباط با آن توکن، تغییرات لازم را در پلتفرم خود اعمال کنند. بنابراین استفاده از یک استاندارد مشخص مزایای زیر را دارد:
- یکریختی توکنها
- سادگی لیست شدن در اکسچنج ها برای ترید
- سادگی برای ارتباط با سایر قراردادهای هوشمند
- سادگی برای تعامل با کیف پول های مختلف
معایب ERC20
مسائلی وجود دارد که استاندارد ERC۲۰ به آنها نپرداخته است. در این استاندارد گیرنده از دریافت توکن مطلع نمیشود و این امر میتواند منجر به از دست رفتن سرمایه کاربر شود. برای مثال اگر شما توکنهای خود را به آدرس قرارداد هوشمند یک توکن ERC20 دیگر ارسال کنید، توکن های شما در آن آدرس گیر میافتد؛ درحالی که چنین تراکنش هایی باید برگشت بخورند. تا آخر سال ۲۰۱۷ حدودا ۳ میلیون دلار به این دلیل از دست رفته است.
برای حل این مشکل جامعه اتریوم اکنون استاندارد جدیدی به نام ERC-223 معرفی کرده است. این استاندارد اجازه نمیدهد که توکن به آدرسی که از دریافت آن توکن پشتیبانی نمیکند، ارسال شوند.
مشکل نرم افزاری batchOverflow مشکل دیگری است که این استاندارد محدودیتی برای آن در نظر نگرفته است. وجود این مشکل در یک توکن میتواند منجر به خرج کردن مبلغی بیش از موجودی، از یک آدرس شود. در ماه آوریل سال ۲۰۱۸ به دلیل این مشکل نرم افزاری، تعدادی از صرافیها امکان برداشت و واریز تعدادی از توکنهای ERC۲۰ را موقتا بستند. این مشکل، همان مشکل کلاسیک سرریزی نوع دادهای integer است که هکرها از طریق آن میتوانند مقداری زیادی توکن بدست آورند.
منبع : bfly.ir | وبسایت اتریوم : https://ethereum.org/en/
یک نظر
تعقيب: مکانیسم اجماع اثبات سهام (PoS) چیست ؟ اهداف این مکانیزم چیست ؟ - bfly