در شبکه اتریوم، تراکنش (Transaction) به معنی ارسال دستوری از طرف یک حساب به حساب دیگر است که میتواند شامل انتقال اتر (Ether) یا اجرای یک قرارداد هوشمند (Smart Contract) باشد. تراکنشها به شبکه اعلام میکنند که چه فعالیتی قرار است انجام شود و به عبارتی درخواست اجرای یک عملکرد هستند. این عملکرد میتواند انتقال وجه، ایجاد یک قرارداد جدید یا فراخوانی یک تابع از قرارداد موجود باشد.
انواع حسابها در اتریوم
در اتریوم، دو نوع حساب (Account) داریم:
1. حسابهای خارجی (Externally Owned Accounts – EOA): اینها حسابهایی هستند که توسط افراد یا نهادهای خارج از شبکه کنترل میشوند و با استفاده از یک کلید خصوصی (Private Key) امکان دسترسی به آنها وجود دارد. این نوع حسابها، اتر نگه میدارند و میتوانند تراکنش ایجاد کنند، اما خودشان کدی برای اجرا ندارند.
2. حسابهای قراردادی (Contract Accounts): این حسابها مربوط به قراردادهای هوشمند هستند و کد دارند. قراردادهای هوشمند مانند برنامههای کامپیوتری کوچکی عمل میکنند که در شبکه قرار دارند و وقتی شرایط خاصی برقرار شود، به صورت خودکار اجرا میشوند. این نوع حسابها توسط کاربران یا دیگر قراردادها فراخوانی میشوند.
عناصر اصلی یک تراکنش در اتریوم
هر تراکنش در اتریوم از اجزای زیر تشکیل شده است:
فرستنده (Sender): حسابی که تراکنش را ایجاد کرده و هزینه تراکنش را پرداخت میکند.
گیرنده (Recipient): حسابی که تراکنش به آن ارسال میشود. این حساب میتواند یک EOA یا یک حساب قراردادی باشد.
مقدار (Value): مقداری از اتر که قرار است انتقال یابد. این مقدار به صورت واحد Wei (کوچکترین واحد اتر) مشخص میشود.
کارمزد تراکنش (Transaction Fee): کارمزد یا گس (Gas) هزینهای است که برای پردازش تراکنش پرداخت میشود. گس از مقدار اتر جدا است و بهعنوان انگیزه برای ماینرها (در اثبات کار) یا نودهای اعتبارسنج (در اثبات سهام) بهکار میرود.
داده (Data): این فیلد تنها در مواقعی استفاده میشود که تراکنش برای اجرای یک قرارداد هوشمند یا فراخوانی یک تابع باشد. در این حالت، دادهها حاوی اطلاعاتی هستند که به قرارداد یا تابع ارسال میشود.
گس (Gas) و اهمیت آن
گس (Gas) واحدی است که میزان توان محاسباتی مورد نیاز برای اجرای تراکنشها یا اجرای کدهای قرارداد هوشمند را تعیین میکند. در واقع، گس هزینهای است که کاربران برای پردازش تراکنشهای خود به شبکه پرداخت میکنند. این سیستم باعث میشود که شبکه اتریوم از پردازش تراکنشهای ناکارآمد جلوگیری کند و اولویت را به تراکنشهایی بدهد که هزینه مناسبی پرداخت میکنند.
گس به دو صورت تعیین میشود:
گس پرایس (Gas Price): این مقدار نشاندهنده هزینهای است که شما حاضر به پرداخت برای هر واحد گس هستید. این هزینه به بازار عرضه و تقاضا بستگی دارد و میتواند در زمانهای مختلف متفاوت باشد. هر چه گس پرایس بیشتر باشد، احتمال بیشتری وجود دارد که تراکنش شما سریعتر پردازش شود.
مقدار گس (Gas Amount): این مقدار نشان میدهد که چقدر گس برای پردازش تراکنش مورد نیاز است. هر نوع عملیات، هزینه گس متفاوتی دارد. به عنوان مثال، یک تراکنش ساده مانند انتقال اتر به مقدار گس کمتری نیاز دارد نسبت به یک قرارداد هوشمند پیچیده.
تراکنشها در اتریوم ابزارهایی اساسی برای تعامل با شبکه هستند. درک نحوه عملکرد آنها و اهمیت گس برای پردازش این تراکنشها به شما کمک میکند تا بهطور مؤثرتری از شبکه اتریوم استفاده کنید و در عین حال هزینههای خود را مدیریت کنید.
منبع: teach yourself crypto