حساب اتریوم

  • 2022-12-16

این پست اشاره ای به "چگونه اتریوم به هر حال کار می کند؟"که توسط "Preethi Kasireddy" نوشته شده است و در اینجا می توانید پیدا کنید.

  • حساب های متعلق به خارجی (حساب های کاربری توسط کلیدهای خصوصی کنترل می شود)
  • حساب های قرارداد (کنترل شده توسط کد)

حالت حساب

حالت حساب از چهار مؤلفه تشکیل شده است که صرف نظر از نوع حساب وجود دارد:

  • NONCE: اگر حساب یک حساب کاربری خارجی باشد ، این شماره تعداد معاملات ارسال شده از آدرس حساب را نشان می دهد. اگر حساب یک حساب قرارداد باشد ، Nonce تعداد قراردادهای ایجاد شده توسط حساب است.
  • تعادل: تعداد WEI متعلق به این آدرس. در هر اتر 1E+18 WEI وجود دارد.
  • Storeageroot: یک هش 256 بیتی از گره ریشه یک درخت پاتریشیا مرکل که محتویات ذخیره سازی حساب را رمزگذاری می کند (نقشه برداری بین مقادیر عدد صحیح 256 بیتی) ، که به عنوان نقشه برداری از هش کککاک 256 بیتی رمزگذاری شده استکلیدهای عدد صحیح 256 بیتی به مقادیر عدد صحیح 256 بیتی رمزگذاری شده RLP. این درخت هش محتوای ذخیره سازی این حساب را رمزگذاری می کند و به طور پیش فرض خالی است.
  • CodeHash: هش کد EVM (دستگاه مجازی Ethereum) این حساب - این کدی است که در صورت دریافت این آدرس ، این آدرس را اجرا می کند. این تغییر ناپذیر است و بنابراین ، برخلاف همه زمینه های دیگر ، پس از ساخت و ساز قابل تغییر نیست. تمام این قطعات کد در پایگاه داده دولت تحت هش های مربوطه برای بازیابی بعدی موجود است. برای حساب های قرارداد ، این کدی است که به عنوان Codehash هشدار داده می شود و ذخیره می شود. برای حسابهای خارجی ، قسمت Codehash هش از رشته خالی است.

برای جزئیات بیشتر به Ethereum Yellowpaper مراجعه کنید

حساب های خارجی (EOAS)

یک حساب کنترل شده خارجی

  • تعادل اتر دارد ،
  • می تواند معاملات را ارسال کند (انتقال اتر یا کد قرارداد)
  • توسط کلیدهای خصوصی کنترل می شود ،
  • هیچ کد مرتبط ندارد

حساب های قرارداد (برخی از مقالات با کیف پول قرارداد تماس می گیرند)

  • تعادل اتر دارد ،
  • دارای کد مرتبط است ،
  • اجرای کد توسط معاملات یا پیام ها (تماس) دریافت شده از سایر قراردادها انجام می شود.
  • هنگام اجرای - انجام عملیات پیچیدگی دلخواه (کامل بودن تورینگ) - ذخیره مداوم خود را دستکاری کنید ، یعنی می تواند وضعیت دائمی خود را داشته باشد - می تواند با سایر قراردادها تماس بگیرد

حساب های قرارداد در ارز ارسال اتر (ETH) به یک حساب کاربری دارای هزینه 21000 گاز است اما ارسال ETH به یک قرارداد هزینه بالاتری دارد که این بستگی به کد قرارداد و داده های ارسال شده در معامله دارد.

مزایای حساب های قرارداد نسبت به حساب کاربری:

  • حساب قرارداد می تواند معاملات ورودی را لیست کند
  • حساب قرارداد را می توان به عنوان حساب های Multisig تنظیم کرد
  • یک حساب Multisig می تواند به گونه ای ساخته شود که از حد روزانه ای برخوردار باشد و فقط در صورت فراتر رفتن از حد روزانه ، به چندین امضا نیاز خواهد داشت

مضرات حسابهای قرارداد نسبت به حساب کاربری:

  • حساب های قرارداد هر زمان که از آنها استفاده می کنید هزینه ای را متحمل می شوند.

ایجاد حساب کاربری هیچ گاز هزینه ای ندارد اما ایجاد حساب های قرارداد انجام می شود. شما برای ایجاد و استفاده از حساب های قرارداد پرداخت می کنید زیرا آنها از منبع محاسباتی و ذخیره سازی ارزشمند شبکه استفاده می کنند.

نکته دیگر این است که یک حساب کاربری خارجی می تواند با ایجاد و امضای معامله با استفاده از کلید خصوصی خود ، به سایر حسابهای متعلق به خارجی یا سایر حساب های قرارداد ارسال کند. پیام بین دو حساب خارج از کشور به سادگی یک انتقال ارزش است. اما پیامی از یک حساب کاربری خارجی به یک حساب قرارداد ، کد حساب قرارداد را فعال می کند و به آن اجازه می دهد اقدامات مختلفی را انجام دهد (به عنوان مثال نشانه های انتقال ، نوشتن به حافظه داخلی ، نشانه های جدید نعنا ، انجام برخی محاسبات ، ایجاد قراردادهای جدید و غیره).

بر خلاف حساب های خارجی ، حساب های قرارداد نمی توانند معاملات جدید را به تنهایی آغاز کنند. در عوض ، حساب های قرارداد فقط می توانند معاملات را در پاسخ به سایر معاملات دریافت شده (از یک حساب خارجی یا از حساب قرارداد دیگر) آتش بزنند. ما در مورد تماس های قرارداد به قرارداد در بخش "معاملات و پیام ها" اطلاعات بیشتری کسب خواهیم کرد.

  • کیف پول آنلاین Etherum: https://wallet. ethereum. org

انواع حساب قرارداد

دو نوع حساب قرارداد وجود دارد - حساب ساده و حساب Multisig (چند علامت)

حساب کاربری ساده و حساب Multisig ایجاد شده و متعلق به حساب ها است.

  • حساب Simpet: فقط یک حساب کاربری را ایجاد می کند و صاحب حساب می شود.
  • حساب Multisig: یک کیف پول Multisig دارای چندین حساب مالک است که یکی از آنها نیز حساب سازنده خواهد بود.

برای ایجاد یک کیف پول ساده:

  1. روی افزودن قرارداد کیف پول کلیک کنید.
  2. تحت نوع قرارداد کیف پول اطمینان حاصل کنید که حساب مالک مجرد انتخاب شده است ، سپس نامی را برای کیف پول خود وارد کنید.
  3. روی ایجاد کلیک کنید. سپس رمز ورود حساب جاری را که در آن استفاده کرده اید وارد کنید

برای ایجاد یک کیف پول multisig:

  1. روی افزودن قرارداد کیف پول کلیک کنید.
  2. تحت نوع قرارداد کیف پول ، قرارداد کیف پول چند منظوره را انتخاب کنید.
  3. تنظیم کنید که چند مالک این کیف پول را دارد. پیش فرض 3 صاحب است. در مورد من ، من آن را به 2 تغییر می دهم.
  4. آدرس صاحبان را که به تنظیمات شما بستگی دارد ، پر کنید.
  5. روی ایجاد کلیک کنید. سپس رمز ورود حساب جاری را که استفاده کرده اید وارد کنید.
  6. آدرس های دو حساب مالک دیگر را کپی و چسباند. نکته مهم: به عنوان صاحب کیف پول Multisig یک کیف پول قرارداد اضافه نکنید. فقط حساب ها می توانند صاحبان باشند.

تنظیمات پیش فرض برای حساب های Multisig نمایش داده می شود. در این مثال ، ما با تنظیم پیش فرض 2-از 3 می رویم ، اما حد روزانه را به 10 اتر کاهش داده ایم.

ثبت دیدگاه

مجموع دیدگاهها : 0در انتظار بررسی : 0انتشار یافته : ۰
قوانین ارسال دیدگاه
  • دیدگاه های ارسال شده توسط شما، پس از تایید توسط تیم مدیریت در وب منتشر خواهد شد.
  • پیام هایی که حاوی تهمت یا افترا باشد منتشر نخواهد شد.
  • پیام هایی که به غیر از زبان فارسی یا غیر مرتبط باشد منتشر نخواهد شد.