اگر چه اصطلاحات بیت کوین و اتریوم معمولا در کنار هم استفاده میشود، اما واقعیت امر این است که این دو تفاوتهای بسیاری با یکدیگر دارند. تنها چیزی که اتریوم و بیت کوین در آن باهم مشترک هستند مربوط به استفاده از رمزنگاری بلاک چین (Block Chain) میشود.
اتریوم بر خلاف بین کوین که تنها یک ارز رمزگذاری شده است، دارای ویژگیهای میباشد که آن را تبدیل به یک کامپیوتر بزرگ و غیر متمرکز میکند. بگذارید تا این موضوع را سادهتر بیان کنیم، اتریوم در واقع یک پلتفرم غیر متمرکز برای انجام قراردادهای هوشمند است. قراردادهای هوشمند، برنامههای هستند که تنها به صورتی که برنامه ریزی شدهاند، اجرا میشود و تقریبا، امکان هر گونه سانسور، تقلب، دستکاری توسط افراد ثالث یا خرابی ذر آن وجود ندارد. هزینه ساخت اتریوم، در سال ۲۰۱۴ توسط طرفدارانش در سراسر جهان جمع آوری شده بود و یک سازمان خیریه سوئیسی، وظیفهی توسعه آن را بر عهده گرفت. بنیاد اتریوم را میتوان حاصل همکاری برترین متخصصین جهان دانست. اما قبل از اینکه در رابطه با جزئیات اتریوم صحبت کنیم، بهتر است با یک سری از اصطلاحات رایج در محیط آن آشنا شوید. برای درک اتریوم، ابتدا باید بدانید که بلاک چین چگونه کار میکند که ما در ادامه آن را برای شما توضیح خواهیم داد.
بلاک چین چیست؟
بلاک چین در واقع یک دیتابیس است که دارای ویژگیهای قابل توجهای میباشد و نوعی از دادههای خاص به صورت مداوم در حال افزوده شدن به این پایگاه داده هستند.
- زمانی که دادهها در دیتابیس ذخیره شوند، دیگر نمیتوان آنها حذف کرد یا اینکه تغییر داد و تمام رکوردها به صورت دائمی و برای همیشه بر روی بلاک چین باقی میمانند.
- این دیتابیس در اختیار فرد یا سازمان خاصی نیست; بلکه در دسترس هزاران نفر است و هر شخص یک نسخه از این دیتابیس را با خود به همراه دارد.
احتمالا درک اینکه چنگونه چندین نفر نسخههای دیتابیس خود را با دیگران سینک ( Syne یا همگام سازی) میکنند، مقداری پیچیده به نظر میرسد. تصور کنید ده شخص در یک شبکه وجود دارند، هر یک از این افراد یک پوشه با فایل خالی دارند و در رو به روی آنها یک صفحه خالی قرار گرفته شده است. هر زمان یکی از این افراد فعالیت مهمی همانند انتقال پول را انجام دهد، این به موضوع به اطلاع دیگر کاربران موجود در شبکه خواهد رساند. هر کس با دریافت اعلانات شروع به نوشتن یاداشتی بر روی صفحهاش میکند و تا زمانی که صفحه پر شود به این کار ادامه خواهد داد. پس از آن، همهی افراد مجبور هستند برای بستن صفحات خود به همراه محتویات موجود در آن، یک پازل ریاضی را حل نمایند.
حل پازل ریاضی تضمین میکند که تمامی افراد در صفحات خود محتوای یکسانی را داشتهاند و دیگر نمیتوانند آن را دستخوش تغییر کنند. هر کس که به عنوان اولین نفر موفق به حل این پازل شود، مقداری ارز رمزنگاری شده به عنوان پاداش، به او تعلق خواهد گرفت. هنگامی که صفحهی مورد بحث بسته شود، به عنوان فایل به پوشه خالیای که پیشتر به آن اشاره کردیم، اضافه خواهد شد. پس از آن صفحهی جدید در اختیار کاربران قرار میگیرد و این پروسه تا آخر به همین روال پیش خواهد رفت. با گذشت زمان این صفحات (بلاکها) که حاوی رکوردها مهمی (معاملات) هستند به پوشه(Chain، در زبان انگلیسی این کلمه به معنای زنجیره است) اضافه میشوند و بنابراین پایگاه داده ( بلاک چین) را تشکیل خواهند داد. بلاک چین، بر خلاف معماری سرورهای معمول، با به غیر فعال شدن یک گره (کامپیوتر)، آفلاین نمیشود و اتفاق خاصی برای آن رخ نخواهد داد. دادههای کاربران محرمانه خواهند بود و برنامهها به صورت غیر متمرکز باقی میمانند و کاری را انجام میدهند که میبایست در اینترنت صورت میگرفت.
بلاک چین چه چیزی را ذخیره میکند؟
بلاک چین میتواند هر نوع دادهای را در خود ذخیره کند. هر گونه دادهای که در بلاک چین ذخیره میشود، به آن اعتبار میدهد. بلاک چین بیت کوین رکوردهایی مربوط به معاملات مالی را ذخیره میکند بنابراین از این نظر قابل قیاس با ارزهایی همچون دلار و پوند میباشد. بیت کوین اهداف مشترکی با دلار دارد و قرار است در همان زمینه فعالیت کند. در حالی که اتریوم متفاوتتر از آن است.
اتریوم صرفاً یک ارز همانند دلار، پوند یا بیت کوین نیست، بلکه هدف والاتری دارد تا اینکه تنها یک ارز باشد و این است که آن را نسبت به بیت کوین متمایز میسازد.
اتریوم را در واقع میتوان به یک کامپیوتر بسیار بزرگ و خیلی گران اما بینهایت کند توصیف کرد، حدود ۵ تا ۱۰۰ برابر کندتر از کامپیوترهای امروزی. اتریوم کامپیوتری قدرتی معادل گوشیهای هوشمند کمیاب دههی نود میلادی دارد، بنابراین نمیتواند کارهای پیچدهای انجام دهد و حوزهای آن در حد فعالیت جزئی است.
اکنون شما به این فکر میکنید که این مسئله شگفتی چندانی ندارد و از خود میپرسید دلیل این همه سر و صدایی که اتریوم به پا کرده چیست؟ سوال بسیار خوبی پرسیدهاید، اتریوم در حال تسخیر دنیا است زیرا یک کامیپوتر کاملا غیر متمرکز میباشد که در سراسر جهان قرار گرفته. با درک چگونگی کارکرد بلاک چین اتریوم، متوجه خواهید شد که این پلتفرم چگونه همانند یک رایانهی جهانی عمل میکند.
اتریوم چگونه کار میکند؟
همانند دیگر بلاک چینها، اتریوم نیاز دارد تا چندین هزار نفر نرم افزاری را بر روی کامپیوتر خود اجرا کنند تا شبکهی آن فعال شود. هر گره ( کامپیوتر) در شبکه، برنامهای به نام Ethereum Virtual Machine (ماشین مجازی اتریوم با نام مخفف EVM) بر روی خود اجرا میکند. حالا فرض کنید که EVM یک سیستم عاملی است که نرمافزارهایی را که توسط زبان برنامه نویسی اختصاصی اتریوم نوشته شدهاند را درک و اجرا میکند. نرم افزارها و برنامههایی که Ethereum Virtual Machine اجرا میکند با نام قراردادهای هوشمند شناخته میشود.
برای انجام دادن هر کاری در این دنیای کامپیوتر، شما نیاز است هزینهی آن را پرداخت کنید. با این حال شما برای پرداخت آن از ارز معمولی همچون دلار و پوند استفاده نمیکنید. در عوض، همه چیز با ارزی رمزنگاری شده به نام اتر (Ether) که تنها مربوط به این شبکه است، پرداخت میشود. اتر دقیقا همانند بیت کوین است به جزء اینکه میتوان از آن برای پرداخت قراردادهای هوشمند استفاده کرده و آنها را اجرا نمود.
در اتریوم هم فرد و هم قرارداد هوشمند به عنوان کاربر دیده میشوند، هر چیزی را که یک کاربر انسانی میتواند انجام دهد، قرداد هوشمند نیز توانایی انجام آن را دارد.
قراردادهای هوشمند دقیقا مانند هر کاربر انسانی دیگر در شبکه عمل می کنند. همانند ارزهای دیگر، هر دوی آنها میتوانند اتر دریافت و ارسال کنند.
اما بر خلاف کاربرهای انسانی، قراردادهای هوشمند همچنین می توانند یک برنامه کامپیوتری از پیش تعریف شده را اجرا کنند تا عملیاتهای مختلفی را هنگام راه اندازی انجام دهد. برای درک بهتر قدرت یک قرارداد هوشمند، مثال زیر را در نظر بگیرید.
قدرت قراردادهای هوشمند
فرض کنید من و شما قرار است یک شرط بندی در رابطه با آب و هوای فردا انجام دهیم. من شرط میبندم که هوای فردا آفتابی خواهد بود، در حالی که شما بر روی هوای بارانی شرط بستهاید و توافق میکنیم که شخص بازنده باید پولی معادل ۱۰۰ دلار را به فرد برنده کند. سوال اینجاست که ما چطور میتوانیم اطمینان حاصل کنیم که فرد بازنده به قولش عمل خواهد کرد؟ سه روش متمایز وجود دارد.
۱.اعتماد متقابل
آسانترین روشی که میتوان این شرط بندی را عملی کرد، این است که به یکدیگر اعتماد کنیم، اگر ما دوستانی باشیم که به مدت طولانیای همدیگر را میشناسیم، اعتماد به یکدیگر آسان خواهد بود زیرا من میدانم که شما کجا زندگی کنید و شما نیز در رابطه با من اطلاعاتی دارید. مسئله زمانی پیچیدهتر میشود که هر دوی ما هیچ نسبتی با هم نداشته باشیم و هیچ شناختی بین ما نیست. بنابراین دلیل قانع کنندهای وجود ندارد تا من به شما اعتماد کنم یا شما بخواهید حرف من را باور کنید.
۲.امضای یک قرارداد قانونی
یکی دیگر از روشهای قابل قبول این است که ما شرط را به عنوان یک توافق قانونی آماده کنیم. ما قراردادی را امضا خواهیم کرد که تمامی ظوابط شرطمان را با جزئیات توضیح داده است، از جمله بندهایی که قرار است در این توافق نامه ذکر شود مربوط به نقض آن توسط فرد بازنده خواهد بود و دقیقا مشخص میکند که در صورت رخ دادن این اتفاق، چه چیزی انتظار او را خواهد کشید.
این قرارداد ما را به صورت قانونی مجبور میکند تا پول فرد برنده را پرداخت کنیم، اما این امر به هیچ وجه کاربردی و عملی نیست زیرا هزینه طی کردن مراحل قانونی و نوشتن این قرداد از پول شرط بسته شده، بیشتر خواهد شد.
۳.کمک گرفتن از دوست متقابل ( شخصی که هر دو طرف او را میشناسد)
میتوانیم شخصی را بیابیم که هر دوی ما به او اعتماد داریم و هر یک ۱۰۰ دلار را برای نگهداری به او میدهیم. روز بعد، آن شخص با مشاهده هوا، ۲۰۰ دلار را به صورت کامل به شخصی که شرط را برنده شده، اعطا میکند. به نظر ساده و آسان میآید اما خیر اینچنین نیست زیرا از کجا معلوم که آن شخص معتمد پول را برای خود نگه ندارد؟
اکنون ما سه روش مختلف را برای انجام این شرط بررسی کردهایم که هر یک از آنها دارای نقطه ضعفهایی بود. در روش اول، به دلیل اینکه ما غربیه هستیم نمیتوانیم به یکدیگر اعتماد کنیم. در روش دوم، ایجاد یک توافق نامهی قانونی بسیار گران و غیر کاربردی خواهد بود و در روش سوم، کمک گرفتن از دوست متقابل باری دیگر ما را با مسئله عدم اعتماد را به پیش رو خواهد کرد.
قراردادهای هوشمند اتریوم میتوانند شما را از این معضل نجات دهند. یک قرارداد هوشمند مانند یک دوست مشترک و معتمد است اما با این تفاوت که دوست شما انسان نیست و یک سری کد خواهد بود. اتریوم به ما اجازه میدهد تا برنامهای را بنویسیم که از هر دوی ما اتری به ارزش ۱۰۰ دلار را دریافت کند و در روز بعد از با استفاده از API، هوا را بررسی کرده و اتری معادل ۲۰۰ دلار را به فرد برنده اعطا میکند.
هنگامی که یک قرارداد هوشمند نوشته بشود، به هیچ وجه قابل ویرایش و تغییر نیست. بنابراین، می توانید اطمینان حاصل کنید هر آنچه که در قرارداد لحاظ شده، بدون هیچ دخالتی اجرا میشود.
اما یک قرارداد هوشمند چگونه اجرا میشود؟ و این مسئله چگونه به بلاک چین مربوط میشود؟
قرارداد هوشمند و بلاک چین چگونه به هم مرتبط میشود؟
هر زمان که یک قرارداد هوشمند اجرا می شود، اطلاعات مربوط به اجرای آن در یک بلاک به عنوان معامله ( تراکنش) ثبت خواهد شد و معاملات سطح بسیار بالایی انجام میپذیرند. در تصویر زیر تحوه بلاک چین اتریوم به نمایش در آمده است.
به استنثای مورد آخر، باقی بخشها به خوبی توضیح داده شدهاند. فیلد Data ( داده) بخشی است که اتریوم قدرت منحصر به فرد خود را از آن دریافت میکند. فیلد دیتا به منظور ایجاد و اجرای قراردادهای هوشمند استفاده میشود و اطلاعات مربوط به آنها را در خود ثبت میکند تا به عنوان معامله در نظر گرفته شوند.
انتقال اتر میان کاربران انسانی
این نوع انتقال همچون معاملات بیت کوین مانند در شبکه میباشد. اگر اتر را به صورت مستقیم برای دوستتان ارسال کنید، بخش دیتا خالی باقی میماند.
انتقال اتر از یک کاربر به هیچ دریافت کنندهای
هنگامی که یک معامله بدون یک گیرنده انجام می شود، بدین معنی است که هدف این معامله ایجاد یک قرارداد هوشمند در شبکه با استفاده از محتویات موجود در فیلد دیتا میباشد. فیلد ‘data’ حاوی یک کد نرم افزاری است که ساخته میشود تا همانند هر کاربر دیگری در شبکه رفتار کند.
انتقال اتر میان یک کاربر و قرارداد هوشمند
هر زمان که یک کاربر (یا یک کاربر غیر انسانی همچون قرارداد هوشمند) می خواهد یک قرارداد هوشمند را اجرا کند، لازم است برای انجام معامله با قرارداد هوشمند، دستور العملهای اجرایی را در فیلد Data قرا دهد.
درست همانند هر بلاک چین دیگری، هر زمان هر یک از سه رویداد ذکر شده در بالا اتفاق بیافتد، این موضوع در کل شبکه اعلام خواهد شد و هر کاربری از آن نوت برداری میکند. علاوه بر نوشتن نوت ( یادداشت)، هر گرهی قرارداد هوشمند ساخت یافته را نیز اجرا میکند تا حالت EVM سیستم خود را با باقی شبکه سینک و بروز کند.
GAS چیست؟
همانطور که پیشتر به شما گفته شد، هر کاربر برای اجرای یک قرارداد هوشمند، نیاز است تا هزینهای را پرداخت کند. این هزینه در واقع به گرهای پرداخت میشود که حافظه، فضای ذخیره سازی، فرایند محاسبات و برق را برای اجرای قرارداد هوشمند صرف کرده است.
برای محاسبه قیمت های قراردادهای هوشمند، هر یک از شرایط قیمت مخصوص به خود را دارد. به عنوان مثال، اگر قراردادی اجرا شود که از حافظه استفاده میکند، هزینهی خاص خود را طلب خواهد نمود. اگر قراردای با استفاده از فضای ذخیره سازی اجرا شود، باز نیز هزینهی مخصوص به خود را خواهد داشت. بنابراین همهی این قیمت گذاریها به شرایط خاص خود بستگی دارد. واحدی که این هزینهها را تعریف میکند، gas نامیده میشود. در نهایت Gas با استفاده از مظنهی ارزی به اتر تبدیل خواهد شد.
هر زمان که یک قرارداد هوشمند را اجرا میکنید، مجبورید حداکثری گازی را که قرار است مصرف کنید، مشخص نمایید. عملیات، زمانی متوقف میشود که وظیفه خود را به پایان رسانده باشد یا اینکه گاز از محدودهی تعیین شده عبور کند. این کار برای جلوگیری از حلقههای تکرار بی نهایت در قراردادهای هوشمندانه انجام شده است و مانع خواهد شد تا برنامه مکرراً بدون پیشروی اجرا شود.
چنین شرایطی به دلیل بیدقتی برنامه نویس رخ میدهد، با هر تکرار، بخشی از گاز اختصاص داده شده استفاده میشود، بنابراین برای هر حلقهی نامحدود یک محدودیت ایجاد خواهد شد. هیچ منطقی راضی نمیشود به دلیل اشتباهات برنامه نویسی، یک گره در حلقهی اجرا گیر کند. بنابراین از طریق مفهوم گاز میتوان این مشکل را حل کرد.
آیا جهان آمادهی پذیرش اتریوم است؟
هر کسی که با بیت کوین آشنایی دارند، به خوبی میداند که جامعه همچنان برای استفاده از چنین پلتفرمهایی تردید دارد. البته این موضوع باعث توقف پیشرفت اتریوم نشده است، این پلتفرم نه تنها به عنوان یک ارز رمزنگاری شده، بلکه به عنوان یک محیط برای ساخت نرم افزارها و برنامههای بهتر به شمار میرود. به عنوان مثال، هم اکنون پروژهای در اتریوم در حال توسعه است که قصد دارد ۱۱ بانک مختلف را از طریق پلتفرم بی تو بیشان (B2B) به یکدیگر متصل کند. پروژهای دیگر نیز در حال اتوماتیک کردن کارخانهها برای استفاده بهتر از منابع، کاهش کارگران و کاستن هزینههای حمل و نقل است تا اطمینان حاصل کند که کارایی آنها بهبود پیدا خواهد کرد.
سخن پایانی
اتریوم تنها یک ارز رمزنگاری شده نیست، بلکه ارزش واقعی آن در هدفاش قرار دارد. هدف اتریوم در این است که به صاحبین اجازه دهد از کامپیوتر جهانی توزیع شدهای بهره ببرند که از هزاران گره تشکیل شده است.
البته هر دستورالعمل کوچک میبایست توسط هر گره در شبکه اجرا شود و این موضوع شده تا این کامپیوتر غیرمتمرکز و توزیع شده، سرعت پایین و قیمت بالایی داشته باشد. اما فراموش نکنید که کندی آن به چه چیزی مقایسه میشود؟ با سرورهایی سریع اما کنترل شده.
برای لذت بردن از هزینه های پایینی یک کامپیوتر متمرکز در بر دارد، به آنها این قدرت را می دهیم تا ما را کنترل کنند. اگر برای کامپیوتر مرکزی (سرور) مشکلی پیش بیاید یا اینکه هک شود، تمامی اطلاعات مشتریان به سرقت خواهند رفت. اما یک کامپیوتر غیر متمرکز زمانی از بین میرود که تمامی گرهها آن را ترک کنند، بنابراین به دلیل احتمال پایین قضیه، این نوع کامپیوترها همیشه در دسترس خواهند بود. حداقل تا زمانی که اینترنت وجود داشته باشد، اتریوم نیز وجود خواهد داشت.