معرفی اتریوم
آخرین ویرایش: @erfanej(opens in a new tab), ۶ تیر ۱۴۰۳
زنجیرهی بلوکی چیست؟
زنجیرهی بلوکی یک پایگاه دادهی عمومی است که بر روی رایانههای متعددی در یک شبکه، بهروزرسانی شده و به اشتراک گذاشته میشود.
کلمهی «بلوک» به داده و وضعیتی اشاره دارد که در گروههای متوالی داده که با عنوان «بلوکها» شناخته میشوند، ذخیره میشود. اگر مقداری اتر برای فردی ارسال کنید، برای موفقیتآمیز بودن تراکنش، اطلاعات آن باید درون یک بلوک قرار گیرد.
«زنجیره» به این واقعیت اشاره دارد که هر بلوک، به صورت رمزنگاریشده به بلوک قبل از خود ارجاع دارد. به عبارت دیگر، بلوکها به یکدیگر زنجیر میشوند. اگر دادههای موجود در یکی از بلوکها تغییر داده شود، کلیه بلوکهای بعد از آن نیز باید تغییر کنند، که متعاقباً برای انجام چنین تغییری تمام شبکه باید در مورد آن به توافق برسند.
همه رایانههای درون شبکه باید با هر بلوک جدید و نیز کل زنجیرهی بلوکها موافقت داشته باشند. این رایانهها بهعنوان «گره» شناخته میشوند. گرهها اطمینان حاصل میکنند همه افرادی که با زنجیرهی بلوکی تعامل میکنند دادههای یکسانی در اختیار داشته باشند. برای دستیابی به چنین توافقی، زنجیرههای بلوکی به یک مکانیزم اجماع نیاز دارند.
اتریوم از یک مکانیزم اجماع مبتنی بر اثبات سهم استفاده میکند. هرکس که می خواهد بلوک های جدیدی را به زنجیره اضافه کند باید ETH - یعنی ارز اصلی در اتریوم- را وثیقه بگذارد و نرمافزار اعتبارسنج را اجرا کند. سپس این "اعتبارسنج ها" می توانند به صورت تصادفی انتخاب شوند تا بلوک هایی را پیشنهاد دهند که اعتبارسنج های دیگر بررسی می کنند و به بلاکچین اضافه می کنند. سیستمی از پاداش ها و جریمهها وجود دارد که هرچه بیشتر شرکت کنندگان را به صداقت و در دسترس بودن آنلاین تشویق می کند.
اگر دوست دارید ببینید داده های بلاکچین چگونه هش می شوند و پس از آن به تاریخچه ارجاعات بلاک اضافه می شوند، حتما این دمو(opens in a new tab) را توسط آندرس براون ورث بررسی کنید و ویدئوی همراه آن را در زیر تماشا کنید.
توضیحات آندِرس را در رابطه با «هش» در بلاکچین تماشا کنید:
اتریوم چیست؟
اتریوم یک بلاکچین است که یک کامپیوتر در آن تعبیه شده است. این اساس ساخت اپلیکیشنها و سازمانها به روشی غیرمتمرکز، بدون مجوز و مقاوم در برابر سانسور است.
در دنیای اتریوم، یک رایانه واحد و استاندارد وجود دارد (به نام ماشین مجازی اتریوم یا EVM) که وضعیت آن مورد توافق همه افراد حاضر در شبکه اتریوم است. همه شرکتکنندگان در شبکه اتریوم (همه گرههای اتریوم) یک رونوشت از وضعیت این رایانه را نگهداری میکنند. علاوه بر این، هر شرکتکننده میتواند درخواستی برای انجام محاسبات دلخواه به این رایانه ارسال کند. هرگاه چنین درخواستی منتشر گردد، سایر شرکتکنندگان در شبکه آن را بازبینی میکنند، تأیید میکنند و محاسبات مورد نظر را انجام می دهند («اجرا» میکنند). اجرای این محاسبات موجب تغییر وضعیت در EVM میگردد، که در کل تحویل و تکثیر میشود.
درخواست انجام محاسبه، درخواست تراکنش نامیده میشود؛ تاریخچه کلیه تراکنشها و وضعیت فعلی EVM روی بلاکچین ذخیره میشود، که متقابلاً تمام گرههای شبکه در مورد آن توافق کرده و آن را ذخیره میکنند.
مکانیزمهای رمزنگاری تضمین میکنند که به محض اینکه تراکنشها بهعنوان تراکنش معتبر تأیید شده و به بلاکچین اضافه شدند، دیگر قابل دستکاری نباشند. همین مکانیزمها همچنین تضمین میکنند که هر تراکنش با «مجوزهای» مناسب امضا و اجرا شوند (هیچکس غیر از خود آلیس نباید بتواند از حساب آلیس سرمایههای دیجیتال را برداشت کند).
اتر چیست؟
اتر (ETH) ارز رمزنگاریشده بومی اتریوم است. هدف ETH فراهمسازی امکان محاسبه برای بازار است. چنین بازاری یک مشوق اقتصادی برای شرکتکنندگان جهت تأیید و اجرای درخواستهای تراکنش و فراهمسازی منابع محاسباتی برای شبکه ایجاد میکند.
هر شرکتکننده که درخواست تراکنشی را پخش میکند باید مقداری ETH را هم بهعنوان جایزه به شبکه ارائه دهد. شبکه بخشی از جایزه را میسوزاند و بقیه را به هر کس که در نهایت کار تأیید تراکنش، اجرای آن، ثبت آن در بلاکچین و پخش آن به شبکه را انجام دهد، اعطا می کند.
مقدار ETH پرداختشده، با منابع مورد نیاز برای انجام محاسبه تطابق دارد. این جایزهها همچنین مانع از این میشوند که شرکتکنندگان بداندیش بتوانند عمداً با درخواست اجرای محاسبات بینهایت یا سایر اسکریپتهای پرمصرف شبکه را مسدود کنند، زیرا این شرکتکنندگان باید هزینه منابع محاسبه را بپردازند.
ETH (اتر) همچنین برای تامین امنیت اقتصاد-کریپتویی برای شبکه به سه روش اصلی استفاده می شود: 1) به عنوان وسیله ای برای پاداش دادن به اعتبارسنجانی که بلوک ها را پیشنهاد می دهند یا رفتار نادرست را از سوی دیگر اعتبارسنجان اعلام می کنند، استفاده می شود؛ 2) توسط اعتبارسنجان به عنوان وثیقه در برابر رفتار نادرست عمل می کند- اگر اعتبارسنجان تلاش کنند که رفتار نادرست داشته باشند ETH آنها می تواند نابود شود؛ 3) از آن برای وزن کردن "آرا" بلوک های پیشنهادی جدید استفاده می شود، که به بخش انتخاب فورک مکانیزم اجماع وارد می شود.
قراردادهای هوشمند چه هستند؟
در عمل، شرکتکنندگان هر بار که میخواهند محاسبهای در EVM درخواست کنند، کد جدیدی نمینویسند. در عوض، توسعهدهندگان برنامهها، دستوراتی (قطعههای قابلاستفاده مجدد کد) را در وضعیت EVM بارگذاری میکنند و کاربران درخواستهایی را برای اجرای این قطعه کدها با پارامترهای متفاوت ارائه میدهند. ما برنامههای بارگذاریشده روی شبکه و اجرا شده توسط شبکه را قراردادهای هوشمند مینامیم.
در سطحی بسیار ابتدایی، میتوانید یک قرارداد هوشمند را مشابه یک دستگاه فروش خودکار در نظر بگیرید: اسکریپتی که وقتی با پارامترهای خاصی فراخوانی میشود، در صورت برآورده شدن شرایط خاص، برخی اقدامات یا محاسبات را انجام میدهد. بهعنوان مثال، اگر فراخوانکننده اتر را برای گیرنده خاصی ارسال کند، یک قرارداد هوشمند فروشنده ساده میتواند مالکیت یک دارایی دیجیتال را ایجاد کند و به آن اختصاص دهد.
هر توسعهدهنده میتواند با استفاده از بلاکچین بهعنوان لایه داده، در ازای هزینهای که به شبکه میپردازد، یک قرارداد هوشمند بسازد و آن را برای شبکه عمومی کند. سپس هر کاربر میتواند دوباره با پرداخت هزینهای به شبکه، قرارداد هوشمند را برای اجرای کد آن فراخوانی کند.
بنابراین، با قراردادهای هوشمند، توسعهدهندگان میتوانند اپلیکیشنها و سرویسهای دلخواه پیچیدهای را بسازند و بهکار بگیرند که با کاربر مواجه هستند، مانند: بازارها، ابزارهای مالی، بازیها و غیره.
اصطلاحشناسی
زنجیرهی بلوکی
دنبالهای از تمام بلوکهایی که در تاریخچه شبکه به شبکه اتریوم تحویل شدهاند. این نامگذاری به این دلیل است که هر بلوک حاوی یک ارجاع به بلوک قبلی است که به ما کمک میکند ترتیبی را در تمام بلوکها حفظ کنیم (و در نتیجه تاریخچه دقیق).
اتر
اتر (ETH) ارز رمزنگاریشدهی بومی اتریوم است. کاربران به سایر کاربران اتر پرداخت میکنند تا درخواستهای اجرای کد آنها انجام شود.
ماشین مجازی اتریوم (EVM)
ماشین مجازی اتریوم یک رایانه مجازی جهانی است که هر شرکتکننده در شبکه اتریوم وضعیت آن را ذخیره میکند و با آن موافق است. هر شرکتکننده میتواند اجرای کد دلخواه را در EVM درخواست کند و اجرای کد، وضعیت EVM را تغییر میدهد.
گره
ماشینهای واقعی که وضعیت EVM را ذخیره میکنند. گرهها با یکدیگر ارتباط برقرار میکنند تا اطلاعات مربوط به وضعیت EVM و تغییرات وضعیت جدید را تکثیر کنند. هر کاربر همچنین میتواند با پخش یک درخواست اجرای کد از یک گره، اجرای آن کد را درخواست کند. شبکه اتریوم خود مجموعهای از تمام گرههای اتریوم و ارتباطات آنها است.
حساب
جایی که اتر ذخیره میشود. کاربران میتوانند حسابها را راهاندازی کنند، اتر را به حسابها واریز کنند و اتر را از حسابهای خود به سایر کاربران انتقال دهند. حساب و موجودی حساب در جدولی بزرگ در EVM ذخیره میشوند؛ آنها بخشی از وضعیت کلی EVM هستند.
تراکنشها
«درخواست تراکنش» اصطلاح رسمی برای اشاره به درخواست اجرای کد در EVM است و «تراکنش» یک درخواست تراکنش انجام شده و تغییر مربوطه در وضعیت EVM است. هر کاربر میتواند درخواست تراکنش را از یک گره به شبکه ارسال کند. برای اینکه درخواست تراکنش بر وضعیت EVM توافقشده تأثیر بگذارد، باید توسط گره دیگری تأیید شود، اجرا شود و «به شبکه تحویل شود». اجرای هر کد باعث تغییر وضعیت در EVM میشود. در صورت تحویل شدن، این تغییر وضعیت در تمام گرههای شبکه پخش میشود. چند نمونه از تراکنشها:
- X اتر را از حساب من به حساب آلیس ارسال کنید.
- تعدادی کد قرارداد هوشمند را در وضعیت EVM اجرا کنید.
- کد قرارداد هوشمند موجود در آدرس X در EVM با آرگومان Y را اجرا کنید.
اطلاعات بیشتر در مورد تراکنشها
بلوکها
حجم تراکنشها بسیار زیاد است، بنابراین تراکنشها به صورت دستهای یا بلوکی «تحویل» میشوند. بلوکها معمولا شامل دهها تا صدها تراکنش هستند.
قراردادهای هوشمند
یک قطعه کد قابلاستفاده مجدد (یک برنامه) که یک توسعهدهنده آن را در وضعیت EVM منتشر میکند. هر کس میتواند با درخواست تراکنش، درخواست کند که کد قرارداد هوشمند اجرا شود. از آنجا که توسعهدهندگان میتوانند با انتشار قراردادهای هوشمند، برنامههای اجرایی دلخواه را در EVM (بازیها، بازارها، ابزارهای مالی و غیره) بنویسند، اینها اغلب dappها یا اپلیکیشنهای غیرمتمرکز نیز نامیده میشوند.
اطلاعات بیشتر درباره قراردادهای هوشمند
بیشتر بخوانید
- وایتپیپر اتریوم
- به هر حال اتریوم چگونه کار می کند؟(opens in a new tab) - Preethi Kasirdy (توجه این منبع هنوز ارزشمند است اما توجه داشته باشید که این منبع پیش از ادغام است و بنابراین هنوز هم به مکانیزم اثبات کار اتریوم اشاره دارد - اتریوم در واقع اکنون با استفاده از اثبات سهام ایمن شده است)
آیا منبعی اجتماعی میشناسید که به شما کمک کرده باشد؟ این صفحه را ویرایش کنید و به آن اضافه کنید!
آموزشهای مرتبط
- راهنمای اتریوم برای توسعهدهندگان، بخش 1 – بررسی بسیار کاربرپسند اتریوم با استفاده از پایتون و web3.py