قراردادهای هوشمند برنامههای خودکاری هستند که در صورت برآوردهشدن شرایط از پیش تعریفشده اجرا و در بلاکچین ذخیره میشوند. این قراردادها نسخههای دیجیتال قرارداد کاغذی استاندارد هستند که شرایط توافقنامه آنها در خطوط کد نوشته شده است. این قراردادها بهطور خودکار معاملات را در صورت رعایت شرایط خاص، بدون نیاز به کمک شخص ثالث، برای مدیریت یا تأیید تراکنش انجام میدهند. این شخص ثالث میتواند سازمانی دولتی، وکیل یا هر نهاد دیگری باشد. برای مثال، در قراردادهای کاغذی سنتی، یک سند شرایط بین دو طرف را مشخص میکند که با قانون قابلاجراست. اگر یکی از طرفین، برای مثال الف، شرایط را نقض کند، طرف ب میتواند طرف الف را به دلیل رعایتنکردن قرارداد به دادگاه بکشد. از آنجا که در قرارداد هوشمند، اینگونه قراردادها بهصورت کد نوشته میشوند، بنابراین، شرایط قرارداد بهطور خودکار و بدون دخالت و بدون وجود شخص ثالث اجرا میشود.
قراردادهای هوشمند چگونه کار میکنند؟
چرخه عمر قراردادهای هوشمند چهار مرحله متوالی دارد: ایجاد، استقرار، اجرا و تکمیل.
1. ایجاد: قبل از هر معامله، طرفین قرارداد شرایط قرارداد را تعیین میکنند مانند قراردادهای سنتی که طرفین تعهدات خود را پای برگه مینویسند. پس از نهایی شدن شرایط و ضوابط قرارداد، این قرارداد جهت اجرا به کد برنامهنویسی قرارداد هوشمند ترجمه میشوند. اساساً، کد تعدادی از عبارات شرطی مختلف را نشان میدهد که سناریوهای احتمالی یک تراکنش آینده را توصیف میکند. «اگر «شرط» درست است، «پس» دستور» اجرا میشود، در حالی که اگر شرط نادرست باشد، دستور else اجرا میشود.
2. استقرار: هنگامی که قرارداد هوشمند ایجاد میشود، طرفین میتوانند با اعمال امضای دیجیتال خود در قرارداد، با شرایط و ضوابط موافقت کنند. امضای دیجیتال یک فن رمزنگاری است که شخص را به دادههای دیجیتال وصل میکند. سپس قرارداد هوشمند در شبکه بلاکچین ذخیره میشود و نمیتوان آن را تغییر داد یا اصلاح کرد. هرگونه اصلاح یا تجدیدنظر در قرارداد، مستلزم ایجاد قرارداد جدید است. به همین دلیل، باید به نوشتن و آزمون کد توجه ویژهای شود تا از ایجاد اشکالهایی در قرارداد جلوگیری شود که هرگز برطرف نمیشوند.
به دلیل ذخیره قراردادهای هوشمند در بلاکچین، آنها غیرمتمرکز میشوند. یعنی قراردادهای هوشمند با ماشین یا انسان کنترل نمیشوند.
علاوه بر این، در این مرحله، هرگونه انتقال به نشانی کیف پول دریافتی قرارداد هوشمند مسدود میشود. برای مثال، هر قرارداد هوشمند بین خریدار و تأمینکننده امضا میشود. طبق قرارداد، انتقال وجه از کیف پول خریدار به تأمینکننده، تنها زمانی انجام میشود که خریدار کالا را از تأمینکننده دریافت کند. در نتیجه، هر نوع انتقال وجه در کیف پول تأمینکننده مسدود خواهد شد. گرههای شبکه (که در قسمتهای قبل بهعنوان اعضای شبکه بلاکچین شناختهایم) بهعنوان بدنه حاکم عمل میکنند که تأیید میکنند آیا شرایط ازپیش تعریفشده برای اجرای قرارداد برآورده شده است یا خیر؟
3. اجرا: پس از استقرار قراردادهای هوشمند، تمام گرههای بلاکچین در شبکه، شرایط قرارداد را نظارت و ارزیابی میکنند. پس از برآوردهشدن شرایط ازپیش تعریفشده، قرارداد خودبهخود اجرا میشود. وجه بهصورت سکه، از کیف پول خریدار خارج و به تأمینکننده منتقل میشود (بهعنوان تعهد مبادله کالا). در نتیجه، گرههای موجود در بلاکچین، تراکنش اجراشده را اعتبارسنجی میکنند تا از تحقق شرایط قرارداد اطمینان حاصل شود. فرایند تأیید را سازوکارهای اجماع اثبات کار یا اثبات سهام انجام میدهند. در انتها، تراکنشهای تأییدشده و وضعیت بهروزشده قراردادهای هوشمند در بلاکچین ذخیره میشوند.
4. تکمیل: با توجه به شرایط ازپیشتعریفشده در قرارداد هوشمند، پس از دریافت کالا توسط خریدار از فروشنده، کیف پول فروشنده باز میشود. بنابراین، وجه از خریدار به کیف پول تأمینکننده منتقل میشود. این مرحله نشاندهنده تکمیل قرارداد هوشمند است که سپس بسته و در بلاکچین ثبت میشود.
توجه به این نکته حائز اهمیت است که یک توالی از تراکنشها در مراحل استقرار، اجرا و تکمیل قرارداد هوشمند انجام شده است. بنابراین، هر سه مرحله به نوشتن دادهها در بلاکچین نیاز دارند.
مزایای قراردادهای هوشمند
1. اعتماد: یکی از مهمترین مزایایی که قراردادهای هوشمند نسبت به قراردادهای سنتی دارند، این است که زمانی که شرایط توافق برآورده میشوند، بهطور خودکار اجرا میشوند. نیازی نیست منتظر بمانید شخص ثالثی آنها را اجرا کند. به عبارت دیگر، قراردادهای هوشمند نیاز به اعتماد را برطرف میکند.
2. شفافیت: یکی دیگر از ویژگیهای قراردادهای هوشمند که آنها را بسیار حیاتی میکند، شفافیتی است که با خود به همراه دارند. همانطور که قبلاً بحث شد، قراردادهای هوشمند حاوی فهرست دقیقی از شرایط و ضوابط مورد توافق طرفین درگیر هستند. این تنظیم ازپیشتوافقشده، با پیشنهاد و تصویب شرایط و ضوابط توسط خود طرفین، احتمال بروز مسائل و اختلافات در مراحل بعدی را از بین میبرد.
این شرایط و ضوابط برای هر طرف درگیر در معامله قابلمشاهده است. بنابراین، شفافیت در سامانه ایجاد میشود. مسائل مربوط به شکافهای ارتباطی نیز با اجرای قراردادهای هوشمند کاهش مییابند، زیرا تنها یک نسخه از واقعیت وجود دارد که در شبکه قابلمشاهده برای همه است.
3. تغییرناپذیری: قراردادهای هوشمند تغییرناپذیرند، به این معنی که کد و شرایط آنها پس از استقرار در بلاکچین قابلتغییر یا بهروزرسانی نیستند. علاوه بر این، آنها در سراسر سامانه بلاکچین توزیعشده ذخیره و تکرار میشوند. بنابراین قابلردیابی و ممیزی هستند. در نتیجه میتوان از رفتارهای مخرب مانند کلاهبرداری مالی، تا حد زیادی کاست. اگر میخواهید قرارداد هوشمند موجود را تغییر دهید، باید نسخه جدیدی از آن را ایجاد کنید.
بازده زمانی بهتر: یکی دیگر از مزایای قابلتوجه اجرای قراردادهای هوشمند، بهرهوری بهتر است. در نظام سنتی، با انجام کارهای اداری، معمولاً چند روز طول میکشد تا یک درخواست پردازش شود و در مراحل فرایند، اسناد و مدارک تکراری غیرضروری زیادند. علاوه بر این، دخالت تعداد زیادی واسطه، فرایند را پیچیدهتر، دست و پاگیرتر و وقتگیرتر میکند. اما با اجرای قراردادهای هوشمند، تمامی این مراحل زائد و غیرضروری حذف میشوند و از زمان صرفشده برای تکمیل تراکنشها به میزان قابلتوجهی کاهش میدهد.
4. ایمنی و امنیت: قراردادهای هوشمندِ همراه با بلاکچین، ضد دستکاری، قابلاعتماد و ایمن هستند. ویژگی امنیت و ایمنی، ارزش و اعتماد بیشتری را در معاملات مرتبط به ارمغان میآورد.
پینوشتها
1. C++
2. Smart Contarct