استاندارد ERC-20 چیست؟
مانند هر محصول دیگری که قرار است مورد استفاده عموم قرار بگیرد توکنها نیز نیاز به یک استاندارد دارند که شناخت و پشتیبانی از آنها را توسط مردم و فعالان حوزه کریپتو تسهیل بخشد. یکی از این استانداردها ERC20 است که اگر تمایل به کسب اطلاعات بیشتری درمورد آن دارید پیشنهاد میکنیم با ما در ادامه مقاله استاندارد erc20 چیست همراه باشید.
ERC20 چیست؟
ERC20 استاندارد تکنیکال مورد استفاده برای توکنهای قابل تعویض بر بستر اتریوم است. اما برای آشنایی بیشتر با این استاندارد لازم است تا پیش از این استاندارد با EIP و ERC آشنا شویم.
EIP چیست؟
EIP که مخفف شده عبارت Ethereum Improvement Proposal است به معنی پیشنهادات برای بهبود اتریوم است. این پیشنهادات در گیتهاب که پلتفرم محبوب برنامه نویسان است مطرح شده و توسط دیگر کاربران و برنامه نویسان اتریوم مورد بررسی قرار میگیرند. همچنین این پیشنهادات در گروههای مختلفی دسته بندی میشوند که یکی از این گروهها ERC میباشد.
ERC چیست؟
ERC که مخفف شده عبارت Ethereums Request For Comment میباشد گروهی برای پیشنهادات بهبود اتریوم است که در آن اتریوم نظر کاربران را در جهت بهبود درخواست میکند که استاندارد ERC20 نیز یکی از این پیشنهادات بود و عدد ۲۰ نیز به این دلیل است که این استاندارد پیشنهاد شماره ۲۰ برای بهبود اتریوم بود که در نهایت پذیرفته شد.
ERC20 امکان مبادله را برای توکنها و قراردادهای هوشمندی که از آن پیروی کنند فراهم میکند. این استاندارد دقیقاً مانند استاندارد UV400 در عینکهای آفتابی یا استفاده از درگاه Type-C برای همه تلفنهای همراه اندرویدی میباشد. با وجود اینکه همه این عینکها یک شکل نیستند و گوشیهای اندرویدی بسیار متنوعی نیز وجود دارند اما پیروی از این استانداردها باعث میشود تا تبادل و پذیرش آنها آسانتر شود.
توکنهایی که از این استاندارد استفاده میکنند میتوانند نمادی از یک سهم، مالکیت، رمز ارز و یا هر دارایی دیگری باشند. این استاندارد اجازه میدهد توکنهایی که یکی از این عوامل را نشان میدهند – به وسیله قراردادهای هوشمند – با توکنهای دیگری که از این استاندارد استفاده میکنند مبادله شوند. قراردادهای هوشمند شرایطی هستند که کدنویسی شدهاند و جنبههای مختلف تراکنش بین طرفین را اجرا میکنند.
درک ERC20
قراردادهای هوشمند در سال ۲۰۱۵ روزانه در حال کسب محبوبیت بودند. اما اشکالات زیادی در آنها وجود داشت که نیاز به راه حل داشتند. از آنجایی که هر شخصی توانایی تولید یک توکن را داشت، روزانه توکنهای بسیاری به وجود میآمدند که از هیچ استاندارد خاصی استفاده نمیکردند و از این رو راهی برای اطمینان از ایجاد، استفاده یا مبادله همه توکنهای مختلف وجود نداشت. بدون یک روش تحلیل استاندارد برای توکنها، هر برنامه کاربردی به توکن خاص خود نیاز دارد و کاربران باید راهی برای تبدیل آنها بین صدها برنامه در حال توسعه پیدا کنند.
بسیاری از ارزهای دیجیتال شناخته شده از استاندارد ERC-20 استفاده می کنند. برخی از نمونههای محبوب عبارتند از: تتر (USDT)، استیبل کوین (USDC)، شیبا (Shiba) و استیبل کوین بایننس (BUSD)
تاریخچه ERC20
این استاندارد اولین بار توسط Fabin Vogelstellar در سال ۲۰۱۵ به عنوان راهی برای استانداردسازی توکنها در قراردادهای هوشمند بلاک چین اتریوم پیشنهاد شد. Vogelstella این پیشنهاد را از طریق صفحه Github پروژه اتریوم به عنوان یک ERC ارسال کرد. با پیروی از رویهای که توسط جامعه توسعه دهندگان اتریوم استفاده میشود، این پیشنهاد در سال ۲۰۱۷ به عنوان بیستمین پیشنهاد بهبود اتریوم تصویب و اجرا شد اما با این حال، هنوز هم ERC-20 نامیده میشود زیرا تا زمانی که مورد تایید قرار نگرفته بود، با این نام به شهرت رسید.
یکی از اشکالاتی که اکثر افراد دچار آن میشوند این است که میان رمز ارزها و توکنها تفاوتی قائل نمیشوند درحالی همه رمز ارزها توکن هستند، اما همه توکنها رمز ارز نیستند. توکنها اغلب داراییها و حقوقی را نشان میدهند که خارج از بلاک چین هستند. اما توکن بر طبق استاندار ERC-20، به سادگی به معنای ورژن بلاکچینی هر چیزی است که استانداردهای لازم برای قرار گرفتن در یک قرارداد هوشمند شبکه اتریوم را داشته باشد. از آنجایی که این درخواست تأیید و پیادهسازی شده است، اگر توسعهدهندگان بخواهند توکن آنها در شبکه اتریوم با دیگر توکنها قابل تعویض باشد لازم است تا موارد ذکر شده در استاندارد ERC20 را در کد آن رعایت کنند.
شرایط استاندارد ERC20
این استاندارد شامل چندین بند و شرط است که یک توکن برای داشتن این استاندارد باید اجرا کند. همچنین این استاندارد بر رفتار توکن در قراردادهای هوشمند نیز نظارت دارد. حداقل شرایطی که یک توکن با استاندارد ERC-20 باید در کد خود ذکر کند شامل موارد زیر میشود: (قابل ذکر است که رعایت حروف بزرگ و کوچک در این موارد به دلیل تفاوت در کد نویسی واجب است)
- TotalSupply: تعداد کل توکنها
- BalanceOf: موجودی حساب صاحب توکن
- Transfer: قابلیت انتقال خودکار تعداد مشخص شدهای از توکنها به یک کیف پول مشخص
- TransferFrom: قابلیت انتقال خودکار تعداد مشخص شدهای از توکنها از یک کیف پول مشخص
- Approve: به خرج کننده اجازه میدهد تا تعداد معینی از توکنها را از یک حساب مشخص با یک سقف مشخص برداشت کند
- Allowance: مجموعهای از توکنها را از یک خرج کننده به مالک برمیگرداند
- Transfer: رویدادی که هنگام انتقال موفقیت آمیز آغاز میشود
- Approval: گزارشی از یک رویداد تأیید شده
اینها برخی از توابع و شرایط لازم برای پیادهسازی توکنهای یکپارچه با استاندارد ERC20 هستند. به طور خاص، این توابع در تعیین تعداد توکنهای در گردش، ذخیره و برگرداندن موجودی، درخواستهای واریز و برداشت، تأییدیه و موافقت با نقل و انتقالات خودکار در یک توکن کمک میکنند.
همچنین این مجموعه از توابع تضمین میکند که توکنهای اتریوم از انواع مختلف همگی به طور یکنواخت در اکوسیستم اتریوم عمل میکنند. علاوه بر این، با پیروی از این استاندارد این اطمینان حاصل میشود که توکنهای سازگار با ERC-20 را می توان با یکدیگر معامله کرد.
اهداف ERC-20
استاندارد ERC-20 نقش مهمی در بلاکچین دارد. این استاندارد فهرست مشترکی از قوانینی را تعریف میکند که توکنهای شبکه اتریوم باید به آن پایبند باشند. برخی از این قوانین شامل نحوه انتقال توکنها، نحوه تایید تراکنشها، نحوه دسترسی کاربران به دادههای مربوط به توکنها و اعلام تعداد کل توکنهای در گردش است. پیروی از این استاندارد در کنار دیگر نکات مثبت به اتریوم در حفظ وعده مقیاس پذیری خود نیز کمک میکند به این صورت که اطمینان حاصل میکند که توکنهای جدیدی که به اکوسیستم اتریوم اضافه میشوند با یکدیگر سازگاری دارند.
در نتیجهی این استاندارد، برنامهنویسان مختلف توانایی پیش بینی شکل کلی اکوسیستم اتریوم را حتی با وجود توکنهای جدید آن بدست میآورند و به این دلیل لازم نیست تا برای پشتیبانی از هر توکن جدید برنامه خود را بروزرسانی کنند یا در کد آن تغییر به وجود بیاورند و هچنین از طرفی دیگر سازندگان توکنهای جدید نیز درصورت پیروی از استاندارد ERC20 دیگر هیچ نگرانی بابت امکان لیست شدن توکنهای خود نخواهند داشت. خوشبختانه درحال حاضر نیز اکثر توکنهایی که بر بستر شبکه اتریوم ساخته میشوند از این استاندارد پیروی میکنند و نکته قابل توجه این است که هیچ نهاد یا سازمانی برای تأیید استاندارد ERC20 در توکنها وجود ندارد و پیروی از این استاندارد برای استفاده از مزایای شبکه اتریوم بر عهده سازندگان توکن است.
مقایسه ERC20 و BEP2
درحالی که ERC20 استاندارد مختص شبکه اتریوم است اما بسیاری از بلاکچینها و توکنهای دیگر نیز از اکوسیستم اتریوم الگو گرفتهاند. یکی از این الگوبرداریها توسط بایننس انجام شد که بلاکچین خود را از یک فورک اتریوم ایجاد کرد. به همین دلیل استانداردی که تیم بایننس برای توکنهای خود تعریف کردند نیز تشابه بسیاری به استاندارد شبکه اتریوم داشت. تیم بایننس همچنین یک زنجیره جانبی ایجاد کرد که در کنار زنجیره اصلی کار میکند و بایننس اسمارت چین (Binance Smart Chain) نام دارد. این زنجیره با توکن های ERC-20، ماشین مجازی اتریوم و زنجیره بایننس سازگار است. با این حال، از استاندارد جدیدتری به نام BEP-20 استفاده میکند که سازگاری زنجیره ای را ممکن میکند.
جمع بندی
ERC20 استاندارد مورد استفاده برای توکنهای شبکه اتریوم است که سازندگان توکنهای جدید درصورت تمایل به داشتن مزایای شبکه اتریوم ملزم به رعایت آن هستند و این استاندارد موجب سازگاری هرچه بیشتر برنامههای فعال در شبکه و توکنها با یکدیگر میشود. استانداردهای دیگری برای شبکههای دیگر مانند بایننس نیز وجود دارد که شباهتهای بسیاری به استاندارد مورد استفاده در شبکه اتریوم دارند.
امیدواریم از خواندن این مقاله لذت برده باشید. درصورتی که به آموزش استاندارد مورد استفاده در شبکههای دیگر نیز علاقه دارید نظر خود را با ما در کامنتها به اشتراک بگذارید.