قرارداد هوشمند در بلاک چین چیست و چگونه کار می کند؟
قرارداد هوشمند چیست؟
قرارداد هوشمند موافقت نامههای خودکار بین سازنده قرارداد و گیرنده آن هستند. این توافق نامه که به صورت کد نوشته شده است در بلاک چین گنجانده میشود و آن را غیر قابل تغییر و همچنین غیر قابل برگشت می کند. معمولاً برای خودکارسازی اجرای توافق استفاده میشوند تا همه طرفها بتوانند فوراً و بدون نیاز به هیچ واسطهای از اجرای قرارداد مطمئن شوند. آنها همچنین می توانند یک گردش کار را به طور خودکار انجام دهند، که زمان شروع با توجه به شرایط خاصی تعیین میشود.
حال، قرارداد اجرا شده چیست؟ قرارداد امضا شدهای که ذیل آن، ارتباط بین دو یا چند طرف برقرار میشود، بهعنوان قرارداد اجرا شده شناخته میشود. هر یک از طرفین قول میدهند که پس از امضای قرارداد به وظایف قانونی که در توافقنامه کتبی با آنها موافقت کرده اند، عمل کنند. قراردادهای هوشمند که توسط دومین بلاکچین محبوب جهان، اتریوم (ETH) رایج شده است، منجر به شکل گیری مجموعهای از برنامه های غیرمتمرکز (DApps) و موارد استفاده دیگر شده است.
یکی از مزایای کلیدی شبکههای بلاکچین، اتوماسیون وظایفی است که به طور سنتی به یک شخص ثالث نیاز دارند. بهعنوانمثال، بهجای نیاز به بانک برای تأیید انتقال وجه از مشتری به فریلنسر، به لطف یک قرارداد هوشمند، این فرایند میتواند به طور خودکار اتفاق بیفتد. تنها چیزی که لازم است این است که دو طرف بر سر یک مفهوم به توافق برسند.
مثال دیگر میتواند یک گروه نظارتی و شهروندانی باشد که نماینده آنها در حال بحث درباره یک قانون است. اگر دو طرف در یک سیستم مبتنی بر بلاکچین به توافق برسند، قانون از طریق یک “قرارداد اجرا شده” به اجرا درمیآید. شاید کاربران بتوانند از طریق یک DApp رسمی در مورد قانون جدید مطالعه کنند یا به روش دیگری مبتنی بر بلاکچین از آن مطلع شوند.
این مقاله خوانندگان را در مورد تاریخچه قراردادهای هوشمند، نحوه عملکرد قراردادهای هوشمند و چرایی اهمیت قراردادهای هوشمند آگاه میکند.
قراردادهای هوشمند چگونه کار میکنند؟
قراردادهای هوشمند را بهعنوان بیانیههای دیجیتال «اگر – آنگاه» بین دو (یا چند طرف) در نظر بگیرید. اگر نیازهای یک گروه برآورده شود، میتوان توافق را رعایت کرد و قرارداد را کامل تلقی کرد.
فرض کنید در بازار از کشاورزی 100 خوشه ذرت میخواهند. طرف اول وجوه را در یک قرارداد هوشمند قفل میکند که تنها پس از فرایند تحویل جنس برای طرف اول قابل دسترسی میشود. هنگامی که کشاورز تعهد خود را انجام میدهد، وجوه بلافاصله آزاد میشود (یعنی پس از انجام تعهدات یک قرارداد قانونی). با این حال، اگر کشاورز نتواند به تاریخ تحویل متعهد بماند، قرارداد لغو شده و وجوه به طرف اول بازگردانده میشود.
البته این تنها یک مورد استفاده کوچک است. قراردادهای هوشمند را میتوان طوری برنامهریزی کرد که برای توده مردم کار کند، و جایگزین دستورات دولتی و سیستمهای خردهفروشی شود. علاوه بر این، قراردادهای هوشمند به طور بالقوه نیاز به مطرحشدن برخی اختلافات در دادگاه را از بین میبرد و باعث صرفهجویی در زمان و هزینه طرفین می شود.
این امنیت تا حد زیادی به دلیل زیرساخت کد قرارداد هوشمند است. بهعنوانمثال، در اتریوم، قراردادها به زبان برنامهنویسی Solidity نوشته میشود که Turing-complete است. این بدان معناست که قوانین و محدودیتهای قراردادهای هوشمند در کد شبکه گنجانده شده است و هیچ بازیگر بدی نمیتواند چنین قوانینی را دستکاری کند. در حالت ایدهآل، این محدودیتها کلاهبرداریها یا تغییرات پنهان قرارداد را کاهش میدهد. قراردادهای هوشمند کریپتو تنها در صورتی میتوانند اجرا شوند که همه شرکتکنندگان در این مورد توافق کرده و آن را امضا کنند. سپس، قرارداد آماده اجرا میشود.
به عبارت فنیتر، ایده یک قرارداد هوشمند را میتوان به چند مرحله تقسیم کرد. اول، یک قرارداد هوشمند نیاز به توافق بین دو یا چند طرف دارد. پس از ایجاد توافق، دو طرف میتوانند در مورد شرایطی تکمیل قرارداد هوشمند توافق کنند. تصمیمات اتخاذ شهد در قرارداد هوشمند نوشته میشود سپس رمزنگاری شده و در شبکه بلاکچین ذخیره میشود.
پس از تکمیل قرارداد، تراکنش بر روی بلاکچین مانند هر تراکنشی دیگری ثبت می شود. سپس، تمام گرهها با این تراکنش، نسخه بلاکچین خود را بهروزرسانی میکنند و «وضعیت» جدید شبکه را بهروزرسانی میکنند.
اکنون، ممکن است بپرسید که آیا بیتکوین (BTC) و سایر شبکهها میتوانند از قراردادهای هوشمند استفاده کنند. تا حدی، بله. هر تراکنش BTC از نظر فنی نسخه ساده شده یک قرارداد هوشمند است و راهحلهای لایه دو مانند شبکه لایتنینگ برای گسترش عملکرد شبکه توسعه یافته است. همانطور که گفته شد، استفاده اتریوم از قراردادهای هوشمند یک مورد خاص است.
برخلاف بسیاری از شبکههای بلاکچین که بهعنوان دفتر کل توزیع شده (Distirbuted Ledger) توصیف میشوند، اتریوم چیزی است که یک ماشین حالت توزیعشده (Distiuted State Machine) در نظر گرفته میشود که شامل ماشین مجازی اتریوم (EVM) میشود. این ماشین حالت (که تمام گرههای اتریوم موافقت میکنند یک کپی از آن را نگه دارند) کد قرارداد هوشمند و قوانینی را که این قراردادها باید رعایت کنند، ذخیره میکند. ازآنجاییکه هر گره قوانینی را از طریق کد در خود گنجانده است، همه قراردادهای هوشمند اتریوم محدودیتهای یکسانی دارند.
علاوه بر موارد فوق، بیش از 200 قرارداد هوشمند در کاوشگر بلاکچین کاردانو (ADA) در سپتامبر 2021 فهرست شد. قراردادهای هوشمند ADA با استفاده از زبانهای برنامهنویسی به نامهای Marlowe، Plutus و Glow ساخته میشوند.
همچنین مهم است که توجه داشته باشید که قراردادهای هوشمند از بسیاری جهات با قراردادهای مکتوب متفاوت هستند، همانطور که در جدول زیر مورد بحث قرار گرفته است:
قرارداد کتبی در مقابل قرارداد هوشمند
پیشینه تاریخی قراردادهای هوشمند
باور کنید یا نه، قراردادهای هوشمند مدتها پیش از فناوری بلاکچین به وجود آمده است. درحالیکه اتریوم که در سال 2014 معرفی شد، محبوبترین زیرساخت برای پیادهسازی این نوع پروتکل است، نیک سابو رمزنگار این ایده را در دهه 1990 پایهگذاری کرده است.
در آن زمان، سابو ارز دیجیتالی به نام بیت گلد را به طور مفهومی مطرح کرد. درحالیکه این دارایی هرگز راهاندازی نشد، اما قبل از بیتکوین، استفاده از قرارداد هوشمند را معرفی کرد – تراکنشهای بدون نیاز به اعتمادسازی در اینترنت. اگر وب 1.0 خود اینترنت بود و وب 2.0 حضور پلتفرمهای متمرکز بود، وب 3.0 نسخهای از فضای دیجیتال است که بدون اعتمادسازی، خودکار و قدرت گرفته از کاربران است.
بسیاری، از جمله وبسایت Ethereum، قراردادهای هوشمند را به یک دستگاه فروش خودکار (وندینگ ماشین) تشبیه میکنند. ماشینهای فروش خودکار به منظور این که فروشنده محصولی را در اختیار کاربر قرار میدهد، بدون اینکه شخص واقعی پول را بگیرد و کالا را تحویل دهد؛ ساخته شدهاند. قراردادهای هوشمند همان هدف را دنبال می کنند، اما بسیار تنوع بیشتری دارند.
قراردادهای هوشمند در طول زمان بسیار پیشرفت کردهاند. آنها با عبارات ساده if-then شروع کردند که یک برنامهنویس میتواند ایجاد و پیادهسازی کند. بااینحال، کسانی که دانش برنامهنویسی دارند محدود هستند و این قراردادهای “بدون اعتمادسازی” را متمرکز میکنند. خوشبختانه، همان توسعه دهندگان در حال کار برای حل مشکلات دسترسی هستند.
از زمان آغاز به کار، توسعه دهندگان آن را طوری ساختهاند که میتوان قراردادهای هوشمند را بدون دانش کدنویسی نیز به انجام رساند. آنها امنیت را با زبانهای برنامهنویسی مختلف افزایش میدهند، جایگزینهایی مانند قراردادهای مخفی ایجاد میکنند و روشهایی برای ذخیره خودکار تاریخچه قراردادهای هوشمند در قالبی قابل خواندن برای انسان طراحی میکنند که بسیار سادهتر از استفاده از بلاکچین برای خواندن آنهاست.
مزایای قرارداد هوشمند
بلاکچینهای قرارداد هوشمند مزایای مختلفی از جمله سرعت، کارایی، دقت، اعتماد، شفافیت، امنیت، صرفهجویی را فراهم میکنند که در بخشهای زیر بحث شده است.
قراردادهای هوشمند از پروتکلهای رایانهای برای خودکارسازی اقدامات استفاده میکنند که باعث ساعتها صرفهجویی در فرایندهای تجاری مختلف میشود. قراردادهای خودکار با حذف الزام حضور کارگزار یا سایر واسطهها برای تصویب قراردادهای حقوقی امضا شده، امکان دستکاری شخص ثالث را کاهش میدهد.
علاوه بر این، فقدان یک واسطه در قراردادهای هوشمند باعث صرفهجویی در هزینه میشود. همچنین کلیه طرفهای ذیربط از دید و دسترسی کامل به شرایط و ضوابط این قراردادها برخوردارند؛ بنابراین، پس از امضای قرارداد، هیچ راهی برای عقبنشینی وجود ندارد. به این ترتیب شفافیت تراکنشها برای طرفین تضمین شده است.
علاوه بر این، تمام اسنادی که در بلاکچین نگهداری میشوند، بارها کپی میشوند و امکان بازیابی نسخههای اصلی را در صورت ازدسترفتن دادهها وجود دارد. تمامی قراردادهای هوشمند رمزگذاری میشوند و تمام اسناد در برابر دستکاری با کمک رمزنگاری محافظت میشوند. در نهایت، قراردادهای هوشمند خطاهایی که به دلیل پرکردن دستی فرمهای متعدد رخ میدهد را حذف میکند.
قراردادهای هوشمند چه کاربردهای دارند؟
جدا از مثال پرداختی که در بالا ذکر شد، پیادهسازیهای مختلف و بالقوهای از قراردادهای هوشمند وجود دارد که میتواند باعث خودکار شدن بسیاری از امور شوند و زندگی را راحتتر کنند. در ادامه چند نمونه برجسته از موارد استفاده از قرارداد هوشمند آورده شده است.
هویت دیجیتال
در فضای اینترنت، اطلاعات مثل پول است. شرکتها از دانستن علایق مردم درآمد دارند درحالیکه افراد همیشه کنترلی روی دادن اطلاعات ندارند و از آن سودی نمیبرند. با قراردادهای هوشمند، مردم کنترل دادههای خود را دارند.
در آیندة مبتنی بر بلاکچین، هویتها توکنیزه خواهند شد. در حالت ایدهآل، این بدان معناست که هویت هر فرد در یک بلاکچین غیرمتمرکز وجود دارد و از دسترسی افراد بد ایمن و مطمئن است. حال اگر کاربری بخواهد در شبکههای اجتماعی حضور داشته باشد میتواند از آن سود ببرد یا اگر میخواهد اسنادی را برای گرفتن وام به بانک ارسال کند، روند آن را کنترل کند.
در خصوص شبکههای اجتماعی، هیچ واسطهای شبکه را کنترل نمیکند. در عوض، کاربران انتخاب میکنند که کدام اطلاعات را عمومی و کدام را خصوصی نگه دارند. اگر بخواهند در تبادل اطلاعات شرکت کنند، مانند یک تأییدیه یا امضا، میتوانند یک قرارداد هوشمند ایجاد کنند و انتخاب کنند که کدام دادهها جابهجا میشوند، نه اینکه صرفاً همه اطلاعات را بفرستند. دراینبین شخص ثالثی وجود ندارد که برخی اطلاعات را بگیرد و بعداً بفروشد، تمامی سود متعلق به کاربران است.
همین امر در مورد معامله با بانکها و سایر مؤسسات مالی نیز صدق میکند. ارتباط فقط شامل ارسال مدارک موردنیاز و اطلاعات حیاتی است. هیچ خطری وجود ندارد که یک وامدهنده آدرس ایمیل شما را ذخیره کند و آن را به سایر شرکتها بفروشد. این اطلاعات کاملاً تحت کنترل کاربر است.
مشاور املاک
در دنیای سنتی، دلالان املاک یک شر موردنیاز هستند. باتوجهبه اینکه فروش خانه امری طولانی و پیچیده نیست، مالکان از یک دلال استفاده میکنند تا کارهای گیجکننده آنها را مدیریت کند، مانند کارهای اداری و یافتن خریدار. درحالیکه این برای فروشنده ایدهآل به نظر میرسد، به یاد داشته باشید که دلالها هزینه قابل توجهی از قیمت فروش خانه میگیرند.
یک قرارداد هوشمند میتواند جای یک کارگزار را بگیرد و فرآیند انتقال خانه را سادهتر کند و در عین حال مطمئن شود که به همان اندازه امن است. اینجاست که نام «بدون نیاز به اعتمادسازی» به میان می آید.
تصور کنید سند خانه شما در بلاکچین اتریوم توکن شده است. اگر آماده فروش آن هستید، باید یک قرارداد هوشمند با خریدار ایجاد کنید. آن قرارداد تا زمانی که وجوه خریدار بهدرستی ارسال نشود، سند را در اختیار خود نگه میدارد. سپس، و تنها پس تکمیل انتقال پول، سند آزاد خواهد شد.
معامله برد برد است. فروشنده پول کمتری میپردازد زیرا نیازی به پرداخت به یک واسطه ندارد و خریدار خانه را خیلی زودتر از آنچه رایج است، تحویل میگیرد.
بیمه
بیمهنامهها بهراحتی میتوانند از قراردادهای هوشمند سود ببرند. اساساً، ثبتنام برای یک طرح، کاربر را وارد یک قرارداد هوشمند با یک ارائهدهنده میکند. تمام الزامات خطمشی در قرارداد هوشمند نوشته میشود و کاربر در صورت موافقت آن را میخواند و امضا میکند.
آن قرارداد تا زمانی که طرف مسئول به آن نیاز داشته باشد باز میماند. سپس، آنها به سادگی فرم های مورد نیاز را بارگذاری می کنند که نیاز آنها به پرداخت بیمه را ثابت می کند و وجوه آزاد می شود. این نوع قراردادها نیاز به ارتباط با گروه ها و افراد بیمه را از بین می برد. در حالی که کاربر هنوز برای اثبات الزامات خود به مدارک نیاز دارد، فرآیند ارسال و تأمین مالی بعدی تقریباً فوری خواهد بود.
از جنبه هویتی، شایان ذکر است که همه رانندگان سابقهای از گزارش تصادفات و سایر اطلاعات مهم بیمهای خود را نیز خواهند داشت. این قابلیت میتواند باعث نرخهای پایینتر برای رانندگان خوب که سابقه بدی ندارند بشود.
زنجیره تأمین
مسلماً، یکی از محبوبترین پیادهسازیهای فناوری بلاکچین و قراردادهای هوشمند، در زنجیره تأمین است.
فروشگاههای مواد غذایی، انبارهای اداری، کشاورزان و غیره، همگی جایگاه ویژه خود را در زنجیره تأمین دارند. اما، با پیچیدهتر شدن این زنجیره، به طور فزایندهای پیگیری نگهداری محصول و پیگیری پرداختها، در میان بسیاری کارهای دیگر، برای شرکتها دشوارتر میشوند. قراردادهای هوشمند میتوانند تمام بخشهای زنجیره تأمین را خودکار کرده و باعث خوشحساب شدن تمام بخشها شود.
بهعنوانمثال، فرض کنید یک فروشگاه مواد غذایی منتظر تحویل سیب از قاره دیگری است. مبلغ مشخصی بابت سیبها پرداخت کرده است و منتظر دریافت تعداد یا مقدار مشخصی سیب است. بااینحال، خطای انسانی اثر خود را میگذارد. جایی در طول مسیر، کارگران ممکن است تعدادی سیب را جابهجا بگذارند، آنها را از خط خارج کنند، یا بهسادگی بهدروغ بگویند که همه آنها به مقصد رسیدهاند. وقتی یک طرف این کار را انجام میدهد بقیه زنجیره را به هم میزند، و زمانی که یک فروشگاه مواد غذایی محموله آنها را دریافت میکند، معلوم نیست اشتباه در کدام مرحله رخ داده است.
با قراردادهای هوشمند، فروشگاه میتواند در هر مرحله از فرایند یک چک خودکار راهاندازی کند. درحالیکه این بررسیها از قبل در یک زنجیره تأمین عادی وجود دارند، باید بهصورت دستی انجام شوند. ممکن است شخصی مجبور شود اشیاء را بشمارد و آنچه را که رسیده است ارائه دهد. آنها میتوانستند دروغ بگویند و مقداری از محصول را ببرند و ادعا کنند که مقداری از آن در راه گم شده است. سرقت زنجیره تأمین یک مشکل بزرگ است که سالانه 35 میلیارد دلار برای آمریکاییها هزینه دارد .
آنچه در قراردادهای هوشمند متفاوت است، جنبه اعتمادسازی آن است. فروشگاه میتواند قرارداد را طوری تنظیم کند تا زمانی که همه سیبها دریافت نشدهاند، پرداخت آزاد نمیشود. هیچ راهی برای گمراه کردن این سیستم وجود ندارد، بنابراین طرفین بسیار مراقب خواهند بود. بهعلاوه، پرداخت فوراً انجام میشود که در نوع خود یک انگیزه عالی است.
همچنین، فروشگاه میتواند ردیابی کند که کدام قراردادهای هوشمند تکمیل نمیشوند و ترجیح دهد با آن طرفها کار نکند. در نهایت، میتواند یک شبکه رتبهبندی کامل از مشتریانی که بهتر کار میکنند وجود داشته باشد که در درازمدت باعث صرفهجویی در زمان و هزینه همه میشود.
چالشهای اصلی قراردادهای هوشمند چیست؟
اگرچه قراردادهای هوشمند از نظر مفهومی عالی هستند، اما مطمئناً نقصهایی دارند. به عنوان نمونه، شایان ذکر است که قراردادهای هوشمند و شبکههای بلاکچین با دست برنامهریزی میشوند. خطای انسانی همیشه امکانپذیر است و این خطا میتواند منجر به سوءاستفاده شود. این دقیقاً همان چیزی است که در حمله به سازمان غیرمتمرکز خودگردان اتریوم (DAO) در سال 2016 اتفاق افتاد. هکرها از یک اشتباه در قرارداد هوشمند جمعآوری کمک مالی DAO سوءاستفاده کردند و از آن برای دزدیدن بودجه پروژه استفاده کردند.
فقدان شفافیت نظارتی در مورد این توافقنامههای مستقل نیز باید اشاره شود. درحالیکه ایده یک فرایند انتقال پول ایمن و کارآمد روی کاغذ عالی به نظر میرسد، هنوز مالیات و سایر دخالتهای دولت باید در نظر گرفته شود. کاربران ممکن است بخواهند کنترل کاملی بر دادههای خود داشته باشند، اما احزاب دولتی چگونه به آنچه نیاز دارند دست پیدا میکنند؟
همچنین، قراردادهای هوشمند نمیتوانند اطلاعات را از خارج از شبکهای که در آن وجود دارند بگیرند. (حداقل در حال حاضر.) بهعبارتدیگر، شما نمیتوانید دادهها را از یک وبسایت موجود در یک قرارداد هوشمند در اتریوم آپلود کنید. گفتنی است، یک راهحل به نام اوراکل وجود دارد. گرههای خارج از بلاکچین که اطلاعات را از اینترنت میکشند و آن را با شبکههای بلاکچین سازگار میکنند. در نهایت، زمانی که پایگاههای داده به سمت بلاکچین حرکت میکنند، اوراکلها میتوانند به طور بالقوه وارد عمل شوند تا در تحقق آن نقش ایفا کنند.
علاوه بر این، یک مشکل مقیاسپذیری طولانی مدت وجود دارد. از زمان پیدایش، شبکههای بلاکچین در مقیاس بزرگ با مشکل مواجه میشوند، به این معنی که تراکنشها بر اساس فعالیت ممکن است چند دقیقه طول بکشد – اگرنه ساعتها. اگرچه این میتواند در ابتدا یک مشکل باشد، اما پروژههایی مانند اتریوم 2.0 به دنبال حل آن هستند. بهعلاوه، تراکنشهایی که چند ساعت طول میکشد همچنان بسیار سریعتر از روزهایی است که برای جابهجایی وجوه سنتی طول میکشد.
آینده قراردادهای هوشمند
قراردادهای هوشمند بدون شک مسیر پیشروی قراردادهای سادهای که پس از اجرای پیششرطها قابلاجرا هستند؛ است. قراردادهایی مثل قولنامه ملک که پیشپرداخت میتواند درست پس از امضا پرداخت شود.
پلتفرمهای مختلف قراردادهای هوشمند باعث صرفهجویی در وقت و هزینه کسبوکارها در سراسر جهان میشوند و همچنین نحوه تعامل آنها در زنجیره تأمین و با مشتریان خود را متحول میکنند. در نتیجه، مداخله انسانی حداقلی، افراد و تصمیمگیرندگان مهم را از برخورد با امور اداری و تشریفات پیشپاافتاده رها میکند و به آنها اجازه میدهد تا بر کارهای روزانه خود تمرکز کنند. به این دلیل است که قرارداد هوشمند، جلوی کساد را میگیرد.
قراردادهای هوشمند در حال حاضر توسط بسیاری از بانکها و سازمانهای بیمه برای عملیات روزانه استفاده میشود. در نتیجه، قراردادهای هوشمند هم اکنون حاضر هستند و در حال آزمایش در سناریوهای دنیای واقعی هستند، و زمان زیادی طول نخواهد کشید تا بخشی از زندگی روزمره و روال ما شوند. صرفنظر از بحث قبلی، هنوز راه درازی تا زمانی که همه چیز توسط یک قرارداد هوشمند اداره شود، وجود دارد.
دیدگاهتان را بنویسید
می خواهید در گفت و گو شرکت کنید؟خیالتان راحت باشد :)