اتریوم یک پلتفرم ارز دیجیتال منبع باز دیجیتال مبتنی بر بلاک چین است که قابلیت قراردادهای هوشمند را نیز دارد. ارز دیجیتال اتریوم اتر (ETH) نام دارد. شبکه اتریوم مانند یک شبکه بلاک چین است اما به جای انجام تراکنش، اپلیکیشن ها و قراردادها را نیز فعال می کند.
قرارداد هوشمند برنامه ای است که بر روی بلاک چین اتریوم اجرا می شود، از آنها برای تعریف یک توافق یا قرارداد و اطمینان از رعایت آن استفاده می شود، یک مورد استفاده شگفت انگیز از قراردادهای هوشمند در تضمین مدیریت کیفیت محصولات کارخانه ای خواهد بود. با ارائه شفافیت و قابلیت ردیابی در مورد منشاء محصول و سایر اطلاعات در مورد چیزهایی که به صورت روزانه از یک زنجیره تامین جهانی مصرف می شود.
در اینجا موضوعات زیر مورد بحث قرار خواهد گرفت:
- حساب های اتریوم چیست؟
- انواع حساب های اتریوم
- انواع حساب های قراردادی
- مالکیت خارجی در مقابل قرارداد
- فیلدهای مختلف در حساب های اتریوم
- حساب های خارجی و جفت کلید
بیایید هر یک از این موضوعات را به تفصیل مورد بحث قرار دهیم.
حساب های اتریوم چیست؟
یک حساب اتریوم شبیه به یک حساب بانکی است، اما برای اترها یا اتریوم، که در آن اتریوم را می توان نگهداری کرد، به حساب های دیگر منتقل کرد و همچنین می تواند برای اجرای قراردادهای هوشمند استفاده شود. حساب اتریوم موجودیتی است که از یک آدرس اتریوم به همراه یک کلید خصوصی تشکیل شده است. 20 بایت اول کلید عمومی هش شده SHA3 آدرس اتریوم است.
انواع حساب های اتریوم
در زیر دو نوع حساب اتریوم آورده شده است:
1. حساب تحت مالکیت خارجی: این ابتدایی ترین نوع حساب اتریوم است، مانند حساب بیت کوین عمل می کند. یک کلید خصوصی آدرس اتریوم را برای EOA ها کنترل می کند. یک فرد می تواند به تعداد مورد نیاز EOA باز کند. هر زمان که کیف پول ایجاد می شود، ایجاد می شود، و با یک کلید خصوصی ساخته می شود که برای دسترسی به EOA، بررسی موجودی، ارسال و دریافت تراکنش ها و ایجاد قراردادهای هوشمند مورد نیاز است.
مزایای:
- تراکنشها از یک حساب خارجی به یک حساب قراردادی میتوانند کدی را راهاندازی کنند که میتواند بسیاری از اقدامات مختلف، مانند انتقال توکنها یا حتی ایجاد یک قرارداد جدید را اجرا کند.
- حسابهای دارای مالکیت خارجی نمیتوانند تراکنشهای دریافتی را فهرست کنند.
2. حساب مبتنی بر قرارداد: حسابهای مبتنی بر قرارداد میتوانند تمام عملکردهای یک حساب متعلق به خارجی را انجام دهند، اما برخلاف EOA، زمانی که کد قرارداد مستقر میشود، تشکیل میشوند، توسط کدهای قرارداد کنترل میشوند و با استفاده از یک آدرس منحصربهفرد قابل دسترسی هستند.. هنگامی که یکی از طرفین قراردادی را می پذیرد، یک حساب منحصر به فرد تشکیل می شود که شامل تمام هزینه های مربوط به آن قرارداد است. به هر قرارداد یک شماره سریال مجزا داده می شود که از آن به عنوان حساب قرارداد یاد می شود.
مزایای:
- یک حساب قرارداد می تواند تراکنش های دریافتی را فهرست کند.
- حساب های قراردادی را می توان به عنوان حساب های Multisig تنظیم کرد.
- یک حساب Multisig را می توان به گونه ای ساختار داد که دارای محدودیت روزانه ای باشد که شما مشخص می کنید، و تنها در صورت تجاوز از محدودیت روزانه، چندین امضا مورد نیاز است.
معایب:
- ایجاد حساب های قراردادی هزینه گاز دارد زیرا از منابع محاسباتی و ذخیره سازی ارزشمند شبکه استفاده می کنند.
- حسابهای قراردادی نمیتوانند به تنهایی تراکنشهای جدیدی را آغاز کنند. در عوض، حسابهای قراردادی فقط میتوانند تراکنشها را در پاسخ به سایر تراکنشهایی که از یک حساب خارجی یا از حساب قراردادی دیگر دریافت کردهاند، انجام دهند.
انواع حساب های قراردادی
در زیر سه نوع حساب قرارداد آورده شده است:
- حساب ساده: حساب ایجاد شده و متعلق به یک دارنده حساب است.
- حساب Multisig (Multisignature): یک کیف پول Multisig شامل چندین حساب مالک است که یکی از آنها همچنین حساب سازنده است.
- ساده ترین حساب: یک کیف پول Multisig شامل چندین حساب مالک است که یکی از آنها نیز حساب سازنده است.
حساب های خارجی در مقابل حساب های مبتنی بر قرارداد
در زیر تفاوت بین حسابهای متعلق به خارجی و حساب های مبتنی بر قرارداد آورده شده است.
شماره س. | حساب های متعلق به خارجی | حساب های قرارداد |
---|---|---|
1. | این حساب توسط انسان کنترل می شود. | این حساب کد قرارداد کنترل شده است. |
2 | کلید خصوصی برای دسترسی به EOAS مورد نیاز است. | برای دسترسی به حسابهای قرارداد هیچ کلید لازم نیست. |
3 | EAS به طور خودکار در ایجاد کیف پول ایجاد می شود. | CA به فعال شدن EOA نیاز دارد. |
4 | EOA ها کد مرتبط با خود را ندارند. | CA کد مرتبط با خود را دارد. |
5 | هیچ هزینه اعدام با EOAS همراه نیست. | هزینه اعدام با CAS همراه است. |
6 | کد هش یک رشته خالی است. | کد هش نشان دهنده کد مرتبط با حساب است. |
زمینه های مختلف در حساب های اتریوم
- NONCE: Nonce در یک حساب Ethereum تعداد معاملات ارسال شده از آن حساب را نشان داد. این تضمین می کند که هر معامله فقط یک بار با گرفتن شمارش هر بار که انجام می شود انجام می شود.
- تعادل اتر: مانده حساب Ethereum میزان اتر موجود در یک مخزن اتر از حساب اتر فعلی را نشان می دهد.
- کد قرارداد: در صورت وجود ، این امر غیر موقت است ، زیرا همه حساب ها دارای کد قرارداد نیستند. اما توجه داشته باشید که آنها پس از اجرا نمی توانند تغییر کنند.
- ذخیره سازی: این قسمت همچنان پر نشده است مگر اینکه ذکر شود.
- کد هش: مقدار کد هش برای حساب های قرارداد هش خواهد بود که به کد موجود در آن حساب Ethereum اشاره دارد و از آنجا که هیچ کد با حساب های اتریوم خارج از کشور همراه نیست ، بنابراین ، هش کد یک رشته خالی خواهد بود.
حساب های متعلق به خارجی و جفت های کلیدی
یک حساب Ethereum یک جفت کلید خصوصی و عمومی است که ممکن است به یک آدرس blockchain مرتبط باشد.
- اگر کلید خصوصی توسط شخصی شناخته شده و کنترل شود ، این یک حساب "متعلق به" یا "خارجی" است.
- در غیر این صورت ، اگر کلید خصوصی ناشناخته باشد و فقط یک آدرس وجود داشته باشد ، ما در مورد حساب های قرارداد هوشمند صحبت می کنیم.
حساب های قرارداد یک کلید خصوصی در ارتباط با آنها ندارند ، اگرچه حساب های خارج از کشور دارای آن هستند. کنترل و دسترسی به دارایی ها و قراردادهای شخص از طریق کلید خصوصی EOA اعطا می شود.