همانطور که بارها شنیدهاید، اتریوم مانند یک کامپیوتر بزرگ عمل کرده که اپلیکیشنهای غیرمتمرکز از آن به عنوان بستری مناسب برای راهاندازی و کارکرد استفاده میکنند. اما کارکرد اتریوم به اینجا ختم نمیشود؛ سایر بلاکچینها از EVM (ماشین مجازی اتریوم) برای راهاندازی بلاکچین اختصاصی خود استفاده میکنند. بلاکچین الگورند نیز در سال ۲۰۲۱ از ماشین مجازی اختصاصی خود به نام AVM (ماشین مجازی الگورند) رونمایی کرد. با بهرهگیری الگورند از ماشین مجازی اختصاصی، امکان ایجاد قراردادهای هوشمند نیز به این شبکه اضافه شده است. در این مقاله به صورت کامل ماشین مجازی الگورند را بررسی کرده و AVM را با EVM مقایسه میکنیم. با ما همراه باشید.
ماشین مجازی الگورند چیست؟
ماشین مجازی الگورند ابزاری است که امکان ایجاد و کارکرد قراردادهای هوشمند را بر بلاکچین الگورند ممکن میسازد. در ماشین مجازی Algorand، قراردادهای هوشمند با عنوان Stateful شناخته میشوند. این قراردادها حاوی منطقی هستند که قابلیت پیادهسازی و سپس فراخوانی آنها از طریق هر نودی در بلاکچین وجود دارد. AVM زبان مشترکی به نام Transaction Execution Approval Language یا بهطور خلاصه TEAL را ترجمه میکند. زبان TEAL در واقع تبدیلکننده بایتکدهای AVM است؛ زیرا قراردادهای هوشمند برای اجرا توسط ماشین مجازی الگورند، بهصورت بایتکد در میآیند. این زبان امکان ثبت و ترجمه بایتهای تراکنشها را برای AVM ممکن میسازد.
الگورند به کمک ماشین مجازی اختصاصی خود، قصد دارد بستری مهیا کند که توسعهدهندگان برای نگارش قراردادهای هوشمند، بتوانند از زبانهایی مانند پایتون (Python) و ریچ (Reach) استفاده کرده تا فرایند ایجاد قراردادهای هوشمند را به سادگی تکمیل کنند.
البته لازم به ذکر است که تعامل در اکوسیستم ماشینهای مجازی بسیار حائز اهمیت است؛ بنابراین ماشین مجازی الگورند به گونهای طراحی شده که به راحتی با EVM ارتباط برقرار کرده و بتواند از زبانهای برنامهنویسی تورینگ کامل مانند سالیدیتی پشتیبانی کند.
ماشین مجازی الگورند چگونه کار میکند؟
ماشین مجازی Algorand روی هر گره در بلاکچین Algorand اجرا میشود. این ماشین مجازی حاوی یک موتور استک است که قراردادهای هوشمند و امضاهای هوشمند را در برابر تراکنشهایی که با آنها فراخوانی میشوند، ارزیابی میکند. این برنامهها یا شکست میخورند و تراکنش را رد میکنند یا موفق میشوند و با توجه به منطق و محتوای تراکنشها، تغییراتی را در حالت بلاکچین اعمال میکنند.
به صورت کلی AVM نرمافزاری است که روی هر دو نود رله و مشارکت، در شبکه Algorand کار میکند. موتور استک AVM مسئول ارزیابی قراردادهای هوشمند در شبکه الگوراند است. علاوهبراین، AVM تمام منطق موجود در قراردادهای هوشمند را قبل از تصمیمگیری در مورد اجرا یا عدم اجرای آنها ارزیابی میکند.
لازم به ذکر است که پس از راهاندازی AVM، الگورند قادر به میزبانی dAppهای ساخته شده با زبانهای سطح بالاتر مانند Python، Reach، Clarity و GO است که امکان موارد استفاده پیچیدهتر از اکوسیستم را فراهم میکند.
ویژگیهای ماشین مجازی الگورند
![ویژگیهای AVM](https://zhall.ir/mag/wp-content/uploads/2024/04/algorand-virtual-machine-avm-03.jpg)
معمولا ماشین مجازی باید یک سری ویژگی اولیه را داشته باشند تا بتوانند به درستی عمل کرده و وظایف خود را انجام دهند. ماشین مجازی الگورند ویژگیهای منحصربهفردی دارد که در ادامه آنها را بررسی میکنیم.
- مقیاسپذیری: بلاکچین الگورند به لطف استفاده از الگوریتم اجماع اثبات سهام خالص (PPos) از مقیاسپذیری بالایی برخوردار است. معمولا از این الگوریتم اجماع به عنوان مقیاسپذیرترین فرآیند اجماع یاد میشود. AVM نیز از همین الگوریتم اجماع به نفع خود استفاده کرده و از مقیاسپذیری بالاتری نسبت به اتریوم برخوردار است.
- تنوع زبانهای برنامهنویسی: همانطور که گفته شد، توسعهدهندگان برای نوشتن قراردادهای هوشمند میتوانند از طیف وسیعی از زبانها مانند Go، پایتون، ریچ و کلاریتی استفاده کنند.
- سازگاری بالا: یک ماشین مجازی خوب باید با سایر شبکهها و پروتکلهای بلاکچین سازگار باشد و به توسعهدهندگان این امکان را بدهد، که به راحتی قراردادهای هوشمند خود را با سایر سیستمها و برنامههای مبتنی بر بلاکچین ادغام کنند. AVM به دلیل شباهتهای فنی با EVM، به راحتی تعامل با سایر بلاکچینها را ممکن میسازد.
- امکان انجام تراکنشهای اتمی: منظور از تراکنش اتمی، مبادلات بدون واسطه است که به صورت همتا به همتا انجام میشوند. در این نوع تراکنش، تنها زمانی مبادله صورت میگیرد که هر دو طرف آن را تایید کنند و در صورت عدم تایید هر طرف، تراکنش لغو میشود. بلاکچین الگورند به کمک قراردادهای هوشمند خود، امکان انجام تراکنش اتمی را فراهم میکند. این تراکنشها برخلاف تراکنشهای معمولی به صورت دستهای (Batch) ارسال و تایید میشوند. در واقع یک تراکنش اتمی تنها به ۴ ثانیه زمان برای تایید و نهایی شدن نیاز دارد و کارمزد کمتری نیز نسبت به تراکنش معمولی دارد. تراکنشهای اتمی الگورند بر خلاف سایر بلاکچینها، بدون نیاز به قفل زمانی هش شده (HTLC) اجرا میشوند. HTLCها، قراردادهای هوشمندی هستند که برای دریافت وجوه تراکنش، ملزم به ارائه پسورد رمزگذاری شده در زمانی محدودند. این پسوردها و مدتزمان اعتبار تراکنش، توسط فرستنده تعیین میشوند.
تفاوت EVM اتریوم و AVM الگورند
EVM اتریوم و الگورند در معیارهای مختلف و اساسی با یکدیگر تفاوت دارند که در ادامه در قالب جدول بررسی میشود.
ویژگیها | EVM | AVM |
---|---|---|
زبان برنامه نویسی | سالیدیتی | زبانهای وب اسمبلی مانند گو، پایتون، ریچ و کلاریتی |
مقیاسپذیری | کم | زیاد (به دلیل بهرهمندی از الگوریتم اجماع PPoS) |
قابلیت تراکنش اتمی | ندارد | دارد |
قابلیت ارتقای قراردادهای هوشمند | دارد | دارد |
سرعت تراکنش | ۲۰ ثانیه | ۴.۵ ثانیه |
هزینه تراکنش | ۲۰ دلار | ۰.۰۰۱ دلار |
ماشین مجازی الگورند، مقیاس پذیری بالا و کاربری آسان
همانطور که مطالعه کردید ماشین مجازی الگورند با بهرهگیری از الگوریتم اجماع PPoS مقیاسپذیری بیشتری را برای کاربران فراهم میکند و با قابلیت پشتیبانی از چندین زبان برنامهنویسی، فعالیت توسعهدهندگان را سادهتر کرده است. با وجودی برتری مشهود AVM نسبت به EVM روی کاغذ، این ماشین مجازی در حال حاضر مانند نمونه اتریوم کاربران زیادی ندارد؛ بنابراین برای معرفی ماشین مجازی برتر نمیتوان نتیجه درستی گرفت. در این مقاله به معرفی ماشین مجازی Algorand پرداختیم و با کارکرد و ویژگیهای آن آشنا شدیم. در انتها به صورت مختصر تفاوت EVM و AVM الگوراند را عنوان کردیم.