فهرست مطالب
اتریوم (ETH) که دومین ارز دیجیتال برتر از نظر ارزش بازار است، مدتهاست که در بین سرمایه گذاران ارزهای دیجیتال محبوب است. با این حال، علت اصلی توجه ویژه علاقهمندان به دنیای رمزارزها به اتریوم، قابلیتها و امکانات گسترده بلاک چین آن است. بلاکچین اتریوم به دلیل انعطافپذیری، گستره وسیع ابزارهای مناسب برای توسعهدهندگان و تعداد کاربران بسیار زیاد، همچنان به جذب توسعهدهندگان برنامههای غیرمتمرکز (DApp) ادامه میدهد. یکی از برجستهترین امکانات اتریوم که در جذب توسعه دهندگان نقش به سزایی ایفا میکند، ماشین مجازی اتریوم (EVM) است. در این مقاله به این میپردازیم که EVM چیست و چگونه کار میکند.
EVM چیست؟
ایده ساخت اتریوم در سال 2013 توسط ویتالیک بوترین شکل گرفت و در سال 2015 شروع به کار کرد. حالا چندین سال است که اتریوم توانسته به محبوبترین گزینه برای توسعهدهندگان برنامه های بلاک چینی تبدیل شود که این موفقیت را احتمالا مدیون ماشین مجازی خود یعنی EVM است. ماشین EVM که با زبان ++C نوشته شده، هسته مرکزی بلاک چین اتریوم را تشکیل میدهد و محیطی برای اجرای قراردادهای هوشمند و برنامههای غیرمتمرکز (DApps) در شبکه اتریوم است. علاوه بر این، EVM یک ماشین تورینگ کامل (Turing Complete) است، یعنی میتواند هر برنامهای را که با هر زبان برنامهنویسی نوشته شده است را اجرا کند. در نتیجه به توسعهدهندگان اجازه میدهد تا به راحتی قراردادهای هوشمند سفارشی و DAppها را برای حوزه در حال رشد وب 3 ایجاد کنند.
همچنین EVM به تمام نودهای شبکه اتریوم دسترسی دارد، اجرای قراردادهای هوشمند و تمام تراکنشهای بلاکچین اتریوم را به طور موثر مدیریت میکند. این قابلیتها آن را به یکی از قدرتمندترین ماشینهای مجازی موجود تبدیل میکند.
EVM چگونه کار میکند؟
EVM تمام آنچه که نودها میتوانند یا نمیتوانند با اطلاعات موجود در بلاک چین اتریوم انجام دهند را کنترل میکند. همچنین قوانین خاص تغییر اطلاعات از هر بلوک به بلوک بعدی را نیز تعریف میکند. این ویژگی عملکرد قراردادهای هوشمند را که اتریوم به آن مشهور است، ممکن می سازد.
توسعه دهندگان اتریوم قراردادهای هوشمند خود را در قالب کدهایی که می تواند توسط EVM اجرا شود، در بلاک چین اتریوم به صورت غیرقابل تغییر ثبت میکنند. برای تعامل با EVM، کاربران یا برنامهها (DApps)، تراکنش هایشان را به آدرس های اتریوم که حاوی قراردادهای هوشمند هستند، ارسال می کنند. این تراکنشها از EVM درخواست میکنند که کد مشخصی را اجرا کند. قراردادهای هوشمند حاوی این کدها، میتوانند اطلاعات موجود در بلاک چین اتریوم را بخواند و یا اطلاعات جدید به آن اضافه کنند. در انتها EVM تضمین میکند که تمام نودهای شبکه اتریوم، در مورد تغییرات ناشی از این تراکنشها روی اطلاعات بلاک چین به اتفاق نظر برسند و یکپارچگی و قابل اعتماد بودن بلاک چین را حفظ میکند.
میدانید که انجام تراکنشها در شبکه اتریوم شامل پرداخت هزینه است که در عملکرد EVM نیز این هزینهها تحت عنوان ETH Gas Fee وجود دارند و توسط درخواست دهندهها پیشنهاد و پرداخت میشود. هزینه Gas از فرستادن درخواستهای بیهوده که باعث اختلال در شبکه میشود، جلوگیری میکند و برای نودهای شبکه که تراکنش را تایید میکنند، حکم پاداش را دارد.
EVM چه کاربردی دارد؟
EVM تا کنون توانسته تمام برنامههای در حال اجرا روی شبکه اتریوم را بدون هیچ گزارش قطعی و اختلال مهمی پشتیبانی کند. برای توسعه دهندگان، EVM به عنوان یک برنامه فراگیر، میتواند کدها و برنامه های کوچکتری را که در شبکه اتریوم به عنوان قراردادهای هوشمند شناخته می شوند، را اجرا کند. در عین حال به توسعهدهندگان این آزادی را میدهد که این قراردادهای هوشمند را با انواع زبان های برنامه نویسی از جمله Solidity ،Vyper ،Python و Yul نوشته و اجرا کنند.
با توجه به این انعطاف پذیری EVM، بلاک چین اتریوم هزاران برنامه (DApp) را در ارتباط با خدمات مالی غیرمتمرکز (DeFi) و توکن غیرقابل تعویض (NFT) میزبانی و مدیریت میکند. هر یک از این DAppها و قراردادهای هوشمند تشکیلدهنده آنها به صورت کد به EVM فرستاده و از طریق آن بین تمام نودهای شبکه اتریوم توزیع میشود. هنگامی که یک قرارداد هوشمند در بلاک چین مستقر می شود، EVM مسئول برقراری ارتباط با تمام نودها و اعمال تغییرات در صورت توافق نودها است.
همچنین بخوانید: NFT چیست و چه کسی اولین NFT را اختراع کرد؟ | تاریخچه NFT یا توکن غیر قابل تعویض
مزایای ماشین مجازی اتریوم EVM چیست؟
با توجه به نحوه عملکرد EVM، توسعهدهندگان میتوانند کدهای خود را بدون نگرانی از تأثیر آن بر بقیه شبکه یا دادهها و فایلهای شخصی موجود در کامپیوتر هر یک از نودها، اجرا کنند. علاوه بر این، آنها می توانند قراردادهای هوشمند پیچیده را تحت یک مکانیزم اجماع توزیع شده اجرا کنند. این ویژگی تضمین میکند که خرابی و اختلال در عملکرد یک نود، هیچ تأثیر منفی بر اجرای برنامه (DApp) یا قرارداد هوشمند ندارد، زیرا کد EVM در تمام نودها توزیعشده و باقی میماند. علاوه بر این، از آنجایی که دادهها در مقیاس جهانی توسط EVM در بلاک چین نگهداری میشوند، توسعهدهندگان آن را برای نوشتن قراردادهای هوشمند سفارشی و ایجاد DAppهای متمایز که میتوانند با دسترسی به این مجموعه داده، خروجیهای کارآمد و قابل اعتماد تولید کنند، عالی میدانند.
موارد بالا بلاک چین اتریوم و به ویژه EVM را برای گسترش برنامهها (DApps) و قراردادهای هوشمند مناسب میکند. به علاوه، وجود کتابخانهای از کدهای استاندارد موجود برای توسعه دهندگان و توسعه روزافزون بلاک چین های لایه 2 سازگار با EVM، اتریوم را به بهترین گزینه برای توسعه در دنیای وب 3 تبدیل میکند.
چالشهای ماشین مجازی اتریوم EVM چیست؟
با وجود مزایای بسیاری که توسط EVM ارائه می شود، نکات منفی خاصی نیز وجود دارد که باید توسط توسعه دهندگان اتریوم در نظر گرفته شود. مهمترین آنها هزینه های بالای تراکنش یا Gas مربوط به اجرای یک قرارداد هوشمند در شبکه اتریوم است.
مقدار هزینه تراکنش، بستگی به پیچیدگی کد قرارداد هوشمند و ازدحام شبکه در زمان اجرای تراکنش دارد. این مسئله باعث میشود توسعهدهندگان و ارائهدهندگان برنامهها مجبور شوند خدمات خود را بر این اساس و به صورت متغیر قیمتگذاری کنند. علاوه بر این، Solidity زبان برنامهنویسی ترجیح دادهشده برای کدنویسی در EVM است. این یعنی توسعهدهندگان باید تجربه کافی کار با این زبان جدید را برای ایجاد قراردادهای هوشمند کارآمد داشته باشند.از آنجایی که هرگونه نیاز محاسباتی اضافی در کدها منجر به هزینه های Gas بیشتر می شود و در نهایت برای موفقیت پروژه مضر است. اگر توسعه دهندگان، کدنویسی با استفاده از زبان های دیگر را انتخاب کنند، باید در حل هر گونه تکرار در متن کد دقت کنند، زیرا EVM به هر حال به کامپایل تمام قسمتهای کد ادامه می دهد.
مورد بعد اینکه اگرچه ارتقای قراردادهای هوشمند بعد از ارسال و ثبت آن در بلاک چین امکان پذیر است، اما ایجاد یک قرارداد هوشمند جدید که به آدرس قرارداد هوشمند اصلی اشاره می کند و قصد ارتقای عملکرد آن را دارد، خطرات امنیتی به همراه خواهد داشت.
همچنین بخوانید: نات کوین (NOTCOIN) چیست؟ | آیا امکان خرید و فروش نات کوین وجود دارد؟
آینده EVM چیست؟
با مشاهده تحولات مثبتی که استفاده از EVM در اکوسیستم بلاک چین ایجاد کرده است، تعدادی از پروژه های بلاک چینی معروف در حال کار بر روی این فناوری برای خواندن و اجرای کدها هستند. همچنین اخیرا تعاملات بین زنجیرهای (Cross-Chain) به یکی از مهم ترین جنبهها برای توسعه دهندگان بدل شده است. بنابراین بسیاری از بلاک چینهای سازگار با EVM که هزینه Gas کمتر و سرعت تراکنش سریع تری نسبت به اتریوم ارائه می دهند، مورد توجه قرار گرفتهاند. در نتیجه، این بلاک چینها اکنون می توانند به طور یکپارچه با کاربران اتریوم تعامل داشته باشند و با استفاده از پلهای (Bridge) بلاک چینی ، انتقال داراییها به شبکه های خود را تسهیل کنند.
با این حال، پس از تکمیل موفقیت آمیز فرآیند Merge اتریوم در سپتامبر 2022، اتریوم در حال کار بر روی تغییر از EVM به Ethereum WebAssembly (eWASM) است. بسیاری از متخصصان، eWASM را به عنوان نوآوری جدید اتریوم معرفی میکنند که می تواند سایر بلاک چینها را برای استفاده از این محیط برای قراردادهای هوشمند، ترغیب کند.