You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
description: یاد بگیرید ERC-777 چیست؛ یک استاندارد توکن قابل معاوضه با قابلیت قلابها که نسبت به ERC-20 بهبود یافته است، هرچند به دلایل امنیتی استفاده از ERC-20 توصیه میشود.
4
+
lang: fa
5
+
---
6
+
7
+
## هشدار {#warning}
8
+
9
+
**پیادهسازی صحیح ERC-777 به دلیل [آسیبپذیری در برابر انواع مختلف حملات](https://github.com/OpenZeppelin/openzeppelin-contracts/issues/2620) دشوار است. به جای آن استفاده از [ERC-20](/developers/docs/standards/tokens/erc-20/) توصیه میشود.** این صفحه به عنوان یک آرشیو تاریخی باقی میماند.
10
+
11
+
## مقدمه {#introduction}
12
+
13
+
ERC-777 یک استاندارد توکن قابل معاوضه است که استاندارد موجود [ERC-20](/developers/docs/standards/tokens/erc-20/) را بهبود میبخشد.
14
+
15
+
## پیشنیازها {#prerequisites}
16
+
17
+
برای درک بهتر این صفحه، توصیه میکنیم ابتدا درباره [ERC-20](/developers/docs/standards/tokens/erc-20/) مطالعه کنید.
18
+
19
+
## ERC-777 چه بهبودهایی را نسبت به ERC-20 ارائه میدهد؟ {#-erc-777-vs-erc-20}
20
+
21
+
ERC-777 بهبودهای زیر را نسبت به ERC-20 ارائه میدهد.
22
+
23
+
### قلابها {#hooks}
24
+
25
+
قلابها توابعی هستند که در کد قرارداد هوشمند توصیف شدهاند. هنگامی که توکنها از طریق قرارداد ارسال یا دریافت میشوند، قلابها فراخوانی میشوند. این به قرارداد هوشمند اجازه میدهد تا به توکنهای ورودی یا خروجی واکنش نشان دهد.
26
+
27
+
قلابها با استفاده از استاندارد [ERC-1820](https://eips.ethereum.org/EIPS/eip-1820) ثبت و کشف میشوند.
1. قلابها امکان ارسال توکنها به یک قرارداد و اطلاعرسانی به قرارداد را در یک تراکنش واحد فراهم میکنند، برخلاف [ERC-20](https://eips.ethereum.org/EIPS/eip-20) که برای این کار نیاز به فراخوانی دوگانه (`approve`/`transferFrom`) دارد.
32
+
2. قراردادهایی که قلاب ثبت نکردهاند با ERC-777 ناسازگار هستند. قرارداد فرستنده در صورتی که قرارداد گیرنده قلابی ثبت نکرده باشد، تراکنش را لغو میکند. این از انتقالهای تصادفی به قراردادهای هوشمند غیر ERC-777 جلوگیری میکند.
33
+
3. قلابها میتوانند تراکنشها را رد کنند.
34
+
35
+
### اعشار {#decimals}
36
+
37
+
این استاندارد همچنین سردرگمی مربوط به `decimals` در ERC-20 را برطرف میکند. این شفافسازی تجربه توسعهدهندگان را بهبود میبخشد.
38
+
39
+
### سازگاری با ERC-20 {#backwards-compatibility-with-erc-20}
40
+
41
+
با قراردادهای ERC-777 میتوان همانند قراردادهای ERC-20 تعامل کرد.
0 commit comments