استاندارد توکن ERC-777
هشدار
پیادهسازی صحیح ERC-777 به دلیل آسیبپذیری در برابر انواع مختلف حملات دشوار است. به جای آن استفاده از ERC-20 توصیه میشود. این صفحه به عنوان یک آرشیو تاریخی باقی میماند.
مقدمه
ERC-777 یک استاندارد توکن قابل معاوضه است که استاندارد موجود ERC-20 را بهبود میبخشد.
پیشنیازها
برای درک بهتر این صفحه، توصیه میکنیم ابتدا درباره ERC-20 مطالعه کنید.
ERC-777 چه بهبودهایی را نسبت به ERC-20 ارائه میدهد؟
ERC-777 بهبودهای زیر را نسبت به ERC-20 ارائه میدهد.
قلابها
قلابها توابعی هستند که در کد قرارداد هوشمند توصیف شدهاند. هنگامی که توکنها از طریق قرارداد ارسال یا دریافت میشوند، قلابها فراخوانی میشوند. این به قرارداد هوشمند اجازه میدهد تا به توکنهای ورودی یا خروجی واکنش نشان دهد.
قلابها با استفاده از استاندارد ERC-1820 ثبت و کشف میشوند.
چرا قلابها عالی هستند؟
- قلابها امکان ارسال توکنها به یک قرارداد و اطلاعرسانی به قرارداد را در یک تراکنش واحد فراهم میکنند، برخلاف ERC-20 که برای این کار نیاز به فراخوانی دوگانه (
approve
/transferFrom
) دارد. - قراردادهایی که قلاب ثبت نکردهاند با ERC-777 ناسازگار هستند. قرارداد فرستنده در صورتی که قرارداد گیرنده قلابی ثبت نکرده باشد، تراکنش را لغو میکند. این از انتقالهای تصادفی به قراردادهای هوشمند غیر ERC-777 جلوگیری میکند.
- قلابها میتوانند تراکنشها را رد کنند.
اعشار
این استاندارد همچنین سردرگمی مربوط به decimals
در ERC-20 را برطرف میکند. این شفافسازی تجربه توسعهدهندگان را بهبود میبخشد.
سازگاری با ERC-20
با قراردادهای ERC-777 میتوان همانند قراردادهای ERC-20 تعامل کرد.