اتریم ارز دیجیتال
اتریوم پس از بیت کوین محبوبترین و با ارزشترین ارز دیجیتال بازار است. برخلاف بیت کوین که هدف اصلی خود را ایجاد یک سیستم پرداخت همتا به همتا، غیرمتمرکز و توزیع شده معرفی میکند، اتریوم به دنبال غیر متمرکز کردن سایر امور زندگی با استفاده از تکنولوژیهای ارائه شده در بیت کوین است. در این مقاله، سوال اتریوم چیست را با بررسی نحوه فعالیت این شبکه، به روزرسانیهای آن، تیم فنی و مدیریتی و استخراج اتریوم پاسخ میدهیم. در کنار این، مباحث مختلفی مانند ماشین مجازی اتریوم، قراردادهای هوشمند، پروژه اتریوم ۲، نحوه خرید اتریوم و آینده اتریوم در این مقاله مورد بحث و بررسی قرار میگیرند.
اتریوم یک پلتفرم مبتنی بر تکنولوژی بلاک چین است که برای حذف واسطهها از امور مختلفی مانند خدمات مالی، شبکههای اجتماعی و حتی بازیهای کامپیوتری ایجاد شده است. برخلاف بیت کوین که تنها برای انتقال پول به صورت همتا به همتا کاربرد دارد، اتریوم پلتفرمی است که بر روی آن میتوان انواع کاربردها را ایجاد کرد. تفاوت بین این دو رمز ارز را میتوان با استفاده از تفاوت بین سیستم عامل با یک اپلیکیشن مدلسازی کرد. در حالی که بیت کوین یک اپلیکیشن برای انتقال پول است، اتریوم یک سیستم عامل است که امکان ایجاد «اپلیکیشنهای غیرمتمرکز» (Decentralized Apps | DApps) در آن وجود دارد.
اتریوم از این جهت به عنوان نسل دوم ارزهای دیجیتال شناخته میشود. تمرکز نسل اول ارزهای دیجیتال مانند بیت کوین، لایت کوین و بیت کوین کش بر روی پرداخت همتا به همتا است در حالی که نسل دوم ارزهای دیجیتال، به دنبال ایجاد بستری برای غیرمتمرکز کردن سایر فعالیتهای انسانی نیز هستند. در اتریوم از «قراردادهای هوشمند» (Smart Contracts) برای تعریف شرایط مختلف یک قرارداد استفاده میشود. قراردادهای هوشمند برنامههایی هستند که بر روی بلاک چین اتریوم اجرا میشوند و هر یک از آنها مجموعهای از دادهها و کدها هستند که در یک آدرس اتریوم ذخیره میشوند. در بخشهای بعدی به تفصیل به نحوه فعالیت این قراردادها خواهیم پرداخت.
ویژگیهای اتریوم چیست ؟
اتریوم ویژگیهای مختلفی دارد که این ویژگیها منجر به گسترش کاربرد آن در طی سالهای اخیر شده است. در این بخش میخواهیم به برخی از مهمترین این ویژگیها اشاره کنیم. توجه داشته باشید که امروزه بسیاری از این ویژگیها در ارزهای دیگر نیز قابل مشاهده است اما بسیاری از این ویژگیها برای اولین بار توسط اتریوم معرفی و استفاده شدهاند.
خدمات مالی
اتریوم همانند نسل اول ارزهای دیجیتال میتواند برای پرداختهای مالی به صورت همتا به همتا از هر نقطه در دنیا به نقطه دیگر مورد استفاده قرار گیرد. اتریوم در مقایسه با بیت کوین میتواند تعداد تراکنشهای بیشتری را در واحد زمان پردازش کند و به همین دلیل مقیاسپذیرتر از آن است. علاوه بر پرداخت، اتریوم با استفاده از قراردادهای هوشمند خود قادر به ارائه سایر خدمات مالی مانند «قرض دادن» (Lending)، «قرض گرفتن» (Borrowing)، «صرافی غیرمتمرکز» (Decentralized Exchange | DEX) و «پلتفرمهای کشت سود» (Yield Farming) است.
کاربران برای استفاده از این امکانات نیاز به هیچگونه تائیدیهای از جانب شخص یا سازمان خاص ندارند و تنها با استفاده از کیف پول ارز دیجیتال خود میتوانند به این پلتفرم وصل شده و از امکانات آن استفاده کنند. از طرفی فعالیت در این شبکه بینیاز از اعتماد است چراکه قراردادهای هوشمند به گونهای طراحی شدهاند که شرایط یک قرارداد کاملا مشخص است و هیج کس قادر به تغییر آن نیست. مجموع این خدمات، اتریوم را در شرایط بهتری نسبت به ارزهای نسل اول قرارداده است.
حفظ حریم خصوصی
اتریوم همانند بیشتر ارزهای دیجیتال به حریم خصوصی افراد اهمیت میدهد و برای فعالیت در آن نیازی به ارائه اطلاعات شخصی نیست. سیستم اقتصادی طراحی شده در اتریوم ارزش محور است و به همین دلیل نیازی به ثبت اطلاعات هویتی نیست. سیستم ارزش محور با تمام شفافیتی که در ثبت و نمایش تراکنشها دارد از جهت حفاظت از اطلاعات شخصی افراد کاملا امن است. این ویژگی به اتریوم این امکان را میدهد که بستری برای اپلیکیشنهای غیرمتمرکز وب ۳ و ارزهای دیجیتال متاورس باشد. در این اپلیکیشنها حاکمیت برنامهها و اطلاعات کاربران با خودشان است.
حذف واسطهها
اتریوم نه تنها پای نهادهای مالی را از تراکنشها قطع میکند بلکه پای سایر سازمانها و نهادهای متمرکز را نیز از بسیاری از فعالیتهایی که به صورت غیرمتمرکز قابل انجام است قطع میکند. این مساله باعث کاهش هزینه انجام کارها و در بسیاری از موارد سریعتر انجام شدن آنها میشود. این ویژگی همچنین از تجمیع قدر در دست نهادها یا سازمانهای خاص جلوگیری میکند.
مقاوم در برابر سانسور
نهادهای متمرکز اگرچه در اصل از طرف مردم برای آسانتر کردن فعالیتها تاسیس میشوند اما، متمرکز شدن قدرت دست این سازمانها به آنها قدرت اعمال نظر در فرآیندهای تصمیمگیری را میدهد. هیچ شخص یا سازمانی کنترل اتریوم را بر عهده ندارد. غیرمتمرکز بودن شبکه اتریوم، امکان سانسور اطلاعات یا جلوگیری از فعالیت کاربران در این شبکه را از هر شخص یا نهادی سلب میکند. همانطور که در بخش اتریوم چیست گفته شد این ویژگی مربوط به اکثر بلاک چینهای غیرمتمرکز و جزو ویژگیهای اساسی آنها است.
توسعه ی دائمی
اتریوم پلتفرمی است که در آن اپلیکیشنها به طور مداوم میتوانند توسعه پیدا کنند و با توجه به اینکه فضا رقابتی است همواره میتوان نسخه بهتری از خدمات را از این شبکه انتظار داشت. وجود پروژههای مختلف در کاربردهای یکسان همین مساله را نشان میدهد که هر کدام از آنها به دنبال بهبود شرایط فعالیت کاربران هستند.
قرارداد هوشمند اتریوم چیست ؟
قرارداد هوشمند همانطور که در بخش اتریوم چیست گفته شد، یک قرارداد دیجیتال است که مفاد آن به صورت کد در بلاک چین نوشته شده است. اگر شرایط ذکر شده در این قراردادها فراهم شود، قرارداد خود به خود اجرا میشود. به واسطه وجود قراردادهای هوشمند، اتریوم توانایی ایجاد اپلیکیشنهای غیرمتمرکز و حذف واسطهها را از بسیاری از فعالیتها دارد. هر گره در شبکه اتریوم یک نسخه از قرارداد هوشمند و تراکنشها را دارد. هر بار کاربری اقدامی در شبکه انجام میدهد – چه تراکنش به صورت مستقیم در شبکه انجام شود چه در قراردادهای هوشمند – باید تمام نودهای شبکه آن را تایید کنند تا تراکنش در شبکه ثبت شود.
ایده قراردادهای هوشمند به قبل از ایجاد ارزهای دیجیتال و تکنولوژی بلاک چین برمیگردد. «نیک زابو» (Nick Szabo) دانشمند معروف حوزه رمزنگاری، در سال ۱۹۹۰ قرارداد هوشمند را به عنوان مجموعهای از شرایط برای پروتکلهای اعتماد بین افراد تعریف میکند که به صورت دیجیتال مشخص شدهاند. به نظر زابو، قرارداد به این دلیل هوشمند است که تمامی شرایط در آن مشخص است و در زمان محیا شدن شرایط اقدامات تعیین شده در قرارداد به صورت خودکار انجام میشود و انتقال داراییها در داخل شبکه انجام میشود. توسعه بلاک چین اتریوم باعث اجرایی شدن این ایده شده است.
ترید و سرمایهگذاری در بازار ارزهای دیجیتال بدون داشتن دانش کافی از مفاهیم و اصطلاحات این بازار میتواند منجر به ضررهای جبرانناپذیر برای تریدرها و سرمایهگذاران شود. به دلیل اهمیت این موضوع، «فرادرس» فیلم آموزش مقدماتی ارزهای دیجیتال یا رمزارزها را تدوین کرده که لینک آن در ادامه آمده است.
انواع حساب کاربری در اتریوم چیست ؟
هر اتفاقی که در بلاک چین اتریوم اتفاق میافتد سبب بهروزرسانی حالت حسابهای کاربری میشود. در شبکه بیت کوین حسابها با سیستم «تراکنشهای خروجی مصرف نشده» (Unspent Transaction Output | UTXO) نگهداری میشوند. در این نوع حسابداری، شما مجموعهای از تراکنشهای خرج نشده را به عنوان دارایی دارید که مجموعه آنها، کل حساب شما را تشکیل میدهد. این روش مشابه داشتن ارزهای فیات یا همان اسکناسهای نقدی مختلف است با این تفاوت که مقدار اسکناسها در شبکه بیت کوین میتواند هر عددی باشد.
به عنوان مثال فرض کنید که شما دو بیت کوین دارید و میخواهید به دوست خود ۰/۷ بیت کوین ارسال کنید. در این حالت یکی از بیت کوینهای شما به او ارسال میشود و باقیمانده تراکنش با مقدار ۰/۳ بیت کوین به کیف پول شما برگشت داده میشود. حال اگر دوباره بخواهید مقدار ۰/۴ بیت کوین به دوست دیگر خود ارسال کنید در این حالت یک هر دو تراکنش خروجی مصرف نشده شما به طرف مقابل انتقال مییابد کل تراکنش خروجی مصرف نشده ۰/۳ بیت کوینی خرج میشود و از یک بیت کوین دیگر مقدار ۰/۱ کسر و در نهایت یک تراکنش خروجی مصرف نشده ۰/۹ بیت کوینی به شما ارسال میشود.
در اتریوم قضیه متفاوت است و موجودیها به جای این که در مدل تراکنشهای خرج نشده نگهداری شوند در حسابهای اتریوم نگهداری میشود. این روش مشابه با روش نگهداری حساب در بانکها است. در سیستم بانکی کاربران هرکدام یک حساب دارند که تمامی تراکنشها به نوبت در آن اعمال شده و مقدار نهایی دارایی بهروز میشود. در اتریوم نیز مشابه سیستم بانکی هر حسابی یک موجودی دارد و نتیجه تراکنشها بر روی آن اعمال می شود. با توجه به اینکه اتریوم از قراردادهای هوشمند پشتیبانی میکند، حسابهای کاربری در آن به دونوع «حسابهای شخصی» (Externally Owned Account | EOA) و «حسابهای قرارداد هوشمند» (Smart Contract Account | SCA) تقسیم میشوند که در ادامه به بررسی آنها میپردازیم.
ویژگیهای حسابهای کاربری اتریوم
هر تغییری در شبکه بلاک چین، سبب تغییرات در حالت (State) یک یا چند حساب کاربری در شبکه میشود. هر حساب یک آدرس بیست بایتی است که با استفاده از تبدیلهایی با ۴۲ عدد و حرف نمایش داده میشود. همواره ابتدای حساب کاربری در اتریوم با «۰x» شروع میشود و تفاوتی از این منظر بین حسابهای شخصی و حسابهای قرارداد هوشمند وجود ندارد. حسابهای شخصی توسط کاربران مدیریت میشود ولی حسابهای قرارداد هوشمند در طی فراخوانی قراردادهای هوشمند توسط کاربران یا سایر قراردادها مورد استفاده قرار میگیرند.
حساب شخصی در واقع همان حسابهایی است که کاربران در کیف پولهای خود میسازند. هر حساب شخصی یک کلید خصوصی دارد که در اختیار کاربر است و نباید در اختیا رشخص دیگری قرار بگیرد. حساب شخصی دارای یک متغیر برای نمایش موجودی حساب اتر است که با استفاده از آن میتوان مقادیر اتریوم به دیگران ارسال یا از آنها دریافت کرد یا از آن برای اجرای یک قرارداد هوشمند استفاده کرد. تعداد تراکنشهای انجام شده هر حساب با پارامتری به نام «Nonce» مشخص است. این عدد از صفر شروع میشود و در هر تراکنش یک عدد به آن اضافه میشود. تاز مانی که تراکنش با نانس پایین تایید نشده باشد تراکنشهای بعدی مورد بررسی قرار نخواهند گرفت.
حساب قرارداد هوشمند نوع دوم حسابها در اتریوم است که توسط یک قرارداد هوشمند کنترل میشود. این حسابها کلید خصوصی ندارند چراکه عملکرد آنها توسط کدها از قبل مشخص شده است. این حسابها نیز همانند حسابهای شخصی میتواند اتریوم داشته باشند و آن را به حسابهای دیگر ارسال یا از آنها دریافت کنند. از این حسابها میتوان برای اجرای قرارداهای هوشمند استفاده کرد. مفهوم «Nonce» در این حالت دقیقا به تعداد دفعات استفاده از قراردادهای دیگر اشاره دارد.
ماشین مجازی اتریوم چیست ؟
«ماشین مجازی اتریوم» (Ethereum Virtual Machine | EVM) یک پلتفرم نرمافزاری است که توسعه دهندگان میتوانند از آن برای ایجاد اپلیکیشنهای غیرمتمرکز در اتریوم استفاده کنند. این ماشین مجازی دقیقا همان جایی است که حسابهای شخصی و حسابهای قرارداد هوشمند همه در آن نگهداری و بهروز میشود. هدف EVM، مشخص کردن حالت اتریوم پس از اضافه شدن هر بلاک جدید به شبکه است.
اتریوم همانند سایر شبکههای بلاک چینی توکن و دفتر کل توزیع شده مخصوص خود را دارد و از قوانین خاصی برای فعالیت کاربران در شبکه استفاده میکند. ایجاد و استفاده از قراردادهای هوشمند، یک لایه دیگر به شبکه اتریوم اضافه کرده است. این لایه دوم به عنوان «ماشین حالت توزیع شده» (distributed state machine) شناخته میشود که به بیان ساده، یک پایگاه داده بزرگ برای نگهداری اطلاعات حسابهای اتریوم است. قوانین خاصی که تعیین میکند این ماشین در هر بلاک چگونه وضعیت خود را تغییر دهد توسط ماشین مجازی اتریوم تعریف میشود.
همانطور که گفته شد، قراردادهای هوشمند برنامههایی در شبکه اتریوم هستند که شامل مجموعهای از دادهها و کدها هستند و به عنوان یک حساب کاربری در شبکه اتریوم نگهداری میشوند. همانند سایر حسابها، قراردادهای هوشمند نیز توانایی انجام تراکنش در شبکه اتریوم را دارند اما قراردادهای هوشمند به جای اینکه توسط یک کاربر کنترل شوند، در شبکه جایگذاری میشوند و طبق کدهایی که برنامه نویسی شدهاند عمل میکنند.
حسابهای شخصی توانایی تعامل با قراردادهای هوشمند را دارند. با ارسال هر تراکنش توسط کاربران به قراردادهای هوشمند، توابع مختلف نوشته شده در قرارداد فراخوانی و اجرا میشوند. این قراردادها کدنویسی شدهاند تا قوانین از پیش تعیین شدهای را نمایندگی کنند، قابل حذف نیستند و تراکنش با آنها قابل برگشت نیست.
ماشین مجازی اتریوم قادر به اجرای بایتکدها است. بایت کد یک زبانبرنامه نویسی سطح پایین است که بسیار به زبان ماشین نزدیک است بنابراین نوشتن آن سخت است. برای حل این مشکل، قراردهای هوشمند را با زبانهای سطح بالا مانند «سالیدیتی» مینویسند و با استفاده از کامپایلرهای مختلف آن را به بایتکد تبدیل میکنند تا در نهایت ماشین مجازی اتریوم بتواند آن را اجرا کند.
بلاک چین اتریوم چگونه کار میکند ؟
حال که میدانیم حسابهای کاربری و ماشین مجازی اتریوم چیست میتوانیم در مورد بلاک چین و نحوه کار آن بحث کنیم. اتریوم همانند بیت کوین از تکنولوژی بلاک چین برای نگهداری و تامین امنیت تراکنشها استفاده میکند. بلاک چین زنجیرهای از بلاکهای به هم وصل شده است که در هر بلاک از آن اطلاعات تراکنشها تثبیت و ذخیره میشود. میتوان بلاک چین را نوعی پایگاه داده یا دفتر کل در نظر گرفت که در آن تمام فعالیتهای شبکه ثبت و ذخیره میشود. این دفتر کل به طور عمومی قابل مشاهده است و تمامی کاربران شبکه و حتی سایرین میتوانند تغییرات آن را بررسی کنند.
نودهای شبکه (nodes) که کامپیوترهای محاسباتی هستند، از سرتاسر جهان کپیهای این اطلاعات را دارند. این مساله باعث می شود دستکاری اطلاعات ذخیره شده در شبکه تنها با اجماع بیش از ۵۰ درصد نودها انجام شود که کار هزینهبر و از نظر اقتصادی غیر منطقی است. نودها، عملیات مختلفی در شبکه انجام میدهند که مهمترین آنها را میتوان تایید و ثبت اطلاعات تراکنشها و قراردادهای هوشمند در شبکه و جلوگیری از ورود اطلاعات غلط به شبکه دانست. این معماری به شبکه کمک میکند که یک کپی از بلاک چین داشته باشند و به طور جمعی محتوای اضافه شده به آن را تایید کنند.
الگوریتم اجماع اثبات کار اتریوم
اتریوم نیز همانند بیت کوین از الگوریتم «اثبات کار» (Proof of Wor | PoW) برای اجماع نودها استفاده میکند. در این فرآیند نودها با انجام محاسبات ریاضی و صرف انرژی زیاد به دنبال پیدا کردن خروجی مناسب هر بلاک هستند. توابع استفاده شده برای الگوریتم اجماع «توابع هش» (Hash Functions) هستند که توابعی یک طرفه با خروجی ثابت برای هر ورودی دلخواه هستند. امکان رسیدن از خروجی به ورودی در این توابع وجود ندارد و به همین دلیل میتوانند به عنوان روشی برای رمزنگاری استفاده شوند. الگوریتم مورد استفاده در اجماع اتریوم با نام «ETHash» شناخته میشود.
فرآیند اجماع اثبات کار به این صورت است که نودها با قراردادن اطلاعات تراکنشها، مقدار هش بلاک قبلی و مقدار تصادفی نانس در تابع هش، به دنبال یافتن مقدار هش کوچکتر از مقدار تعیین شده توسط شبکه هستند. فرآیند پیدا کردن این مقدار کاملا تصادفی است و تنها راه به دست آوردن نانس مورد نظر، بررسی نانسهای مختلف است. نانس هر بلاک بر اساس «سختی شبکه» (Network Difficulty) تعیین میشود. منظور از سختی شبکه میزان توان پردازشی دستگاهای محاسباتی نودها است. هر چه دستگاهها قویتر باشند، میتوانند زودتر به جواب شبکه برسند. برای این که این اتفاق نیافتد و هر بلاک در زمان معینی استخراج شود، معادله بلاکها با توجه به سختی شبکه سختتر یا آسانتر میشود.