قرار داد هوشمند یا اسمارت کانترکت چیست؟ Smart Contract یکی از مفاهیم جذاب در دنیای بلاکچین است که در این مطلب میخواهیم به توضیح کاربرد، مزایا و معایب آن به بیانی ساده بپردازیم.
در ابتدا مختصری از مطلب را بیان میکنیم: قرار داد هوشمند به نوعی پروتکل کامپیوتری است که فعالیتها در شبکه بلاکچین را به صورت خودکار اجرا میکند. این قرار دادها بدون هیچ واسطهای فعالیتها را به انجام میرسانند.
ایده اصلی اجرای اسمارت کانترکتها در سال ۱۹۹۴ برای اولین بار توسط نیک سابو، دانشمند آمریکایی که در حوزههای مختلفی همچون کامپیوتر، اقتصاد، حقوق و رمزنگاری دانش داشت ابداع شد. او نام این فناوری را با توجه به خودکار بودن فعالیتشان انتخاب کرد.
در ادامه با تیم تحلیل ارز هشت همراه باشید، تا این مفهوم بلاکچینی را بررسی کنیم.
قرار داد هوشمند چیست؟
قراردادهای هوشمند به سادگی برنامههایی هستند که در یک زنجیره بلوکی ذخیره میشوند و هنگامی که شرایط تعیینشده برآورده میشوند، اجرا میشوند. به طور معمول، از آنها برای انجام خودکار یک توافق استفاده میشود تا تمامی شرکتکنندگان بتوانند بلافاصله از نتیجه مطمئن شوند. همچنین میتوانند یک گردش کار را خودکار کنند و عمل بعدی را هنگام برآورده شدن شرایط به دنبال داشته باشند.
-
نحوه فعالیت قراردادهای هوشمند:
قراردادهای هوشمند با دنبال کردن اظهارات ساده “اگر/هنگامی که…آنگاه…” که به کد در یک زنجیره بلوکی نوشته میشوند، عمل میکنند. یک شبکه از کامپیوترها اقدامات را اجرا میکند هنگامی که شرایط پیشفرض برآورده و تایید میشوند.
این اقدامات ممکن است شامل ثبت یک وسیله نقلیه، ارسال اطلاعیهها یا صدور یک بلیت و یا هر چیز دیگری باشد. زمانی که معامله کامل میشود، زنجیره بلوک بهروزرسانی میشود. این به معنای این است که معامله قابل تغییر نیست و تنها افرادی که مجوز مشاهده نتایج را دارند، میتوانند آنها را ببینند.
در یک قرارداد هوشمند، میتوان شرایطی را که لازم است برآورده شوند تا شرکتکنندگان مطمئن شوند وظیفه بهخوبی انجام خواهد شد، باید مشخص شود. برای تعیین شرایط، شرکتکنندگان باید تعیین کنند چگونه معاملات و دادههای آنها در زنجیره بلوک نمایش داده میشوند. آن ها باید بر روی قوانین “اگر/هنگامی که…آنگاه…” ، توافق کنند، همه استثناهای ممکن را بررسی کنند و یک چارچوب برای حل اختلافات تعریف کنند.
سپس قرارداد هوشمند میتواند توسط یک توسعهدهنده برنامه نویسی شود. در حال حاضر سازمانهایی که از زنجیره بلوک برای کسبوکارشان استفاده میکنند؛ قالبها، رابطهای وب و ابزارهای دیگر آنلاین را فراهم کردهاند تا ساختار قراردادهای هوشمند را سادهتر کنند.
تاریخچه قراردادهای هوشمند:
قراردادهای هوشمند برای اولین بار در سال 1994 توسط نیک سابو، یک دانشمند کامپیوتر آمریکایی که در سال 1998 یک ارز مجازی به نام “بیت گلد” اختراع کرد دقیقا 10 سال پیش از معرفی بیتکوین! برای مدتی شایعاتی مبنی بر اینکه سابو نیکولاس ویتالی ساتوشی ناکاموتو، مخترع ناشناس بیتکوین باشد بود، اما وی این اخبار را انکار کرد.
سابو قراردادهای هوشمند را به عنوان پروتکلهای تراکنش کامپیوتری تعریف کرد که شرایط یک قرارداد را اجرا میکنند. او میخواست قابلیتهای روشهای تراکنش الکترونیکی مانند POS (نقطه فروش) را به دنیای دیجیتال گسترش دهد.
قراردادهای هوشمند شامل زبان یا اصطلاحات حقوقی و قرارداد بین دو طرف نمیشوند. بلکه در واقع اسکریپتهایی هستند که شامل اظهارات اگر/هنگامی که، توابع، وارد کردن ماژول و دیگر برنامهنویسی است که عملیات مشخصشده در یک قرارداد را بهصورت خودکار انجام میدهند.
قرار داد هوشمند چه کاربردی دارد؟
1-مدیریت توکن ها:
قراردادهای هوشمند توکن برای ایجاد، پیگیری، و اختصاص حقوق مالکیت به توکنهای دیجیتال خاص موجود در شبکههای بلوکچین استفاده میشوند. این قرارداد توکن ویژگیها را به توکنهایی که صادر میشود، اعمال میکند و به دارندگان ویژگیهایی مانند استفاده در یک dApp (توکن کاربردی)، امکان رای دهی در یک پروتکل (توکن حاکمیتی)، سهام در یک شرکت (توکن امنیتی)، حقوق مالکیت به یک دارایی منحصر به فرد جهانی یا دیجیتال (توکن غیر قابل تعویض) و غیره ارائه میدهد.
به عنوان مثال، توکن FIL برای پرداخت خدمات ذخیره سازی غیر متمرکز Filecoin و توکن COMP به کاربران این امکان را میدهد که در حاکمیت پروتکل Compound شرکت کنند.
2- استفاده در DeFi:
توسعه مالی غیر متمرکز (DeFi) از برنامههای کاربردی استفاده میکند که از قراردادهای هوشمند برای بازسازی محصولات و خدمات مالی سنتی مانند بازارهای پول، گزینهها، ارزهای پایدار، صرافیها و مدیریت داراییها استفاده میکنند و همچنین از ترکیب چند ویژگی برای ایجاد ابزارهای مالی جدید از طریق ترکیبپذیری بدون مجوز استفاده میکنند.
3-nft های گیمینگ:
بازیهای مبتنی بر بلوکچین از قراردادهای هوشمند برای اجرای بیتغییر اقدامات درون بازی استفاده میکنند. یک مثال از این دست بازیها، بازی PoolTogether است که یک بازی صرفهجویی بدون افت است که کاربران میزان سپرده مالی مدنظر خود را در یک استخر مشترک قرار میدهند و سپس به بازار پول هدایت میشود تا بهرهوری کسب کند.
پس از گذشت یک دوره زمانی از پیشتعیینشده، کار پایان مییابد و برنده به صورت تصادفی تمام پاداش کسبشده را دریافت میکند. در حالی که همه دیگران میتوانند سپرده اصلی خود را برداشت کنند.
به همین ترتیب، NFTهای با محدودیت میتوانند مدلهای توزیع عادلانه داشته باشند و بازیهای نقشآفرین (RPG) میتوانند از قطرههای جواهرات پیشبینیناپذیر حمایت کنند تا اطمینان حاصل شود که همه کاربران فرصت عادلانهای برای دریافت داراییهای دیجیتال نادر دارند.
بسیاری از پروژهها از تابع تصادفی Chainlink Verifiable Random Function (VRF) استفاده میکنند؛ یک مولد شماره تصادفی (RNG) که از رمزنگاری استفاده میکند تا اثبات کند که غیر قابل تغییر است، به این معنا که فرآیند RNG قابل ارزیابی عمومی است.
مزایا و معایب اسمارت کانترکت ها چیست؟
مزایای قرار دادهای هوشمند:
- کارایی: قراردادهای هوشمند اجرای قراردادها را سریعتر میکنند.
- دقت: امکان خطاهای انسانی وجود ندارد.
- غیرقابل تغییر: برنامهنویسی قابل تغییر نیست و قابلیت اصلاح ندارد.
- حذف نیاز به واسطههای سوم: مانند فناوری زنجیره بلوک، قراردادهای هوشمند نیازی به واسطههای سوم ندارند.
معایب قرار دادهای هوشمند:
- دائمی: اگر خطاهایی وجود داشته باشد، قراردادهای هوشمند قابل تغییر نیستند.
- عامل انسانی: قرار داد هوشمند بب برنامهنویس وابسته است تا کد بهطور صحیح به شرایط قرارداد پاسخ دهد.
- حفرهها: ممکن است در کد حفرههایی وجود داشته باشد که اجازه اجرای قراردادها با نیت های نادرست را بدهند.
تفاوت قرار داد هوشمند با قرار داد سنتی در بلاکچین چیست؟
تفاوتهای میان قراردادهای هوشمند و قراردادهای سنتی در فضای بلاکچین عبارت اند از:
ویژگی | قرار داد هوشمند/قرار داد سنتی |
تراکنشات الکترونیکی: |
قراردادهای هوشمند: اجرای الگوریتمها و شرایط قراردادی به صورت خودکار با استفاده از کد برنامهنویسی در بلاکچین انجام میشود.
قراردادهای سنتی: نیاز به تراکنشهای الکترونیکی و مراحل دستی برای اجرای شرایط قرارداد دارد. |
هزینه و زمان: |
قراردادهای هوشمند: اجرا به صورت فوری و با کاهش هزینههای واسطهگری.
قراردادهای سنتی: نیاز به زمان و هزینه بیشتر برای انجام مراحل دستی و واسطهگری. |
تغییرپذیری: |
قراردادهای هوشمند: پس از اجرا، اکثر قراردادهای هوشمند قابل تغییر نیستند (غیرقابل تغییر).
قراردادهای سنتی: قابلیت تغییر و تعدیل دارند. |
نحوه اجرا: |
قراردادهای هوشمند: اجرا به صورت خودکار و بدون واسطه در بلاکچین انجام میشود.
قراردادهای سنتی: نیاز به واسطههای متعدد برای اجرا و نظارت دارند. |
ردیابی و شفافیت: |
قراردادهای هوشمند: تمامی تراکنشها و تغییرات قابل دسترسی و ردیابی در بلاکچین هستند.
قراردادهای سنتی: برخی از تراکنشها و شرایط ممکن است در اسناد قانونی پنهان باقی بمانند. |
اطمینان از اجرا: |
قراردادهای هوشمند: اجرا بر اساس کد برنامهنویسی و شرایط بلاکچینی بدون نیاز به اطمینان از طرف طرفهای قرارداد.
قراردادهای سنتی: نیاز به اعتماد به واسطهها و نظارت انسانی بیشتر دارند. |
هرکدام از این تفاوتها نشاندهنده ویژگیهای منحصر به فرد هر نوع قرارداد در محیط بلاکچین هستند.
قرار داد هوشمند از چه اجزائی تشکیل شده است؟
در ادامه به معرفی اجزاء قراردادهای هوشمند میپردازیم. این موارد عبارت اند از:
۱. طرفین قرارداد یا امضاکنندگان (Signatories):
طرفین قرارداد هوشمند از امضاهای دیجیتالی برای تایید یا رد کردن یک سری داده استفاده میکنند.
۲. موضوع قرارداد (Contract Subject):
موضوع قرارداد، این است که طرفین بر سر آن به توافق میرسند. برای مثال ممکن است موضوع قرارداد فروش خودرو، اجاره آپارتمان یا پرداخت وام باشد.
۳. شرایط قرارداد (Contract Terms):
شرایط قرارداد، دستوراتی که در صورت تایید آنها، شاهد نهایی شدن یک قرارداد خواهیم بود. برای مثال شرط قرارداد ممکن است این باشد که پس از تحویل خودرو، پول آن به حساب فروشنده منتقل شود.
۴. زبان برنامهنویسی (Programming Language):
زبان برنامهنویسی قرارداد هوشمند کدی منطبق بر شرایط قرارداد نوشته شده است که روی بلاک چین قابل اجرا است. برای مثال زبان برنامهنویسی سالیدیتی (Solidity) که برای نوشتن قراردادهای هوشمند روی بلاک چین اتریوم استفاده میشود.
نظرات