رفتن به محتوای اصلی
ثبت گزارش
ثبت گزارش

قرارداد هوشمند (smart contract) چیست و چگونه کار می‌کند؟

قرارداد هوشمند (smart contract) چیست و چگونه کار می‌کند؟

احتمالاً دستگاه‌های فروش خودکار یا وندینگ ماشین‌ها (vending machine)  را دیده‌اید. دستگاهی که طبق یک قرارداد مشخص پولی را از شما گرفته و محصول موردنظر را به شما تحویل می‌دهد. این ماشین‌ها با حذف واسطه‌ها هزینه خرید را برای شما کاهش داده‌اند و همچنین محدودیتی نیز ندارند و شما می‌توانید هر ساعت از شبانه‌روز از آن‌ها خرید کنید. این‌یک نمونه ساده از یک قرارداد هوشمند است.

برای درک بهتر عملکرد قرارداد هوشمند باید به درک صحیح‌تری از فناوری بلاک چین دست پیدا کنیم. تصور کنید با دوستان خود به سفر می‌روید. در این سفر هرکدام اقلامی را خریداری می‌کنید و هرکس که چیزی می‌خرد به بقیه اعضا اعلام کرده و آن‌ها نیز مبلغ، جنس و خریدار را هرکدام به‌صورت جداگانه یادداشت می‌کنند. حال به پایان سفر رسیده و قصد تسویه‌حساب دارید. همگی به یادداشت‌های خود رجوع کرده و می‌بینید که کدام شخص بیشتر و کدام شخص کمتر هزینه کرده است. ازآنجایی‌که هرکس به‌صورت مجزا هزینه‌ها را یادداشت کرده امکان تقلب وجود ندارد (مگر اینکه بیش از ۵۰درصد اعضا به‌صورت هماهنگ شده دست به تقلب بزنند). حال افرادی که هزینه کمتری کرده‌اند مابه‌التفاوت را به افرادی که بیشترین هزینه‌ها را داشته‌اند، می‌پردازند. این‌یک مثال ساده از کاری است که بلاک چین انجام می‌دهد.

بلاک چین یک کتابخانه دیجیتالی غیرمتمرکز و توزیع‌شده‌ است که برای ضبط معاملات در میان رایانه‌های بسیاری استفاده می‌شود تا نتوان بدون تغییر تمام بلوک‌های بعدی و بدون همکاری شبکه مقادیر ثبت‌شده را با استفاده از پس‌انداز تغییر داد. به‌عبارت‌دیگر بلاک چین شبکه‌ای از رایانه‌های به‌هم‌پیوسته است که این رایانه‌ها به‌طور مستمر بر اعمال یکدیگر نظارت می‌کنند و هیچ‌گونه تغییری در شبکه بلاک چین بدون تأیید اکثریت اعضا امکان‌پذیر نیست.

در قرارداد هوشمند از غیرمتمرکز بودن و همین‌طور نظارت همگانی بلاک چین استفاده می‌شود تا اعضا بتوانند با خیال آسوده به انعقاد قرارداد بپردازند. هنگامی‌که شما قراردادی را در یک بلاک قرار می‌دهید این قرارداد دیگر قابل‌تغییر نخواهد بود. چراکه هرگونه تغییرات باید به تأیید اکثریت اعضا برسد و این اتفاق امکان تقلب در قرارداد را تقریباً به صفر می‌رساند.

مثال خرید خانه را در نظر بگیرید. در حالت عادی به تمام کاغذبازی‌‌هایی که پیش‌تر در مورد آن صحبت کردیم، نیاز دارید. اما تحت یک قرارداد هوشمند تنها لازم است مفاد قرارداد را به زبان برنامه‌نویس وارد کرده و درون زنجیره بلاک قرار دهید. از آن زمان شما مالک خانه هستید و هیچ‌کس نمی‌تواند در این مالکیت تغییری به وجود آورد.

در هر قرارداد هوشمند سه بخش وجود دارد:

بخش اول امضا کنندگان هستند. در هر قرارداد باید دو یا چند طرف وجود داشته باشد تا قرارداد مابین آن‌ها منعقد شود. امضاکنندگان با توافق بر سر مفاد قرارداد ابتدا آن را تأیید کرد و سپس درزمانی که شرایط قرارداد به‌طور کامل احصا شد یک‌بار دیگر امضاکنندگان اتمام قرارداد را تأیید کرده و قرارداد تکمیل می‌شود.

بخش دوم موضوع توافق است. موضوع توافق تنها می‌تواند یک شیء (object) باشد که در محیط قرارداد هوشمند وجود دارد. همچنین قرارداد هوشمند باید دسترسی بدون مانع و مستقیم به شی‌ء موردتوافق را داشته باشد. مثلاً اگر قرار است درازای قراردادی، یک اپلیکیشن به فرد تحویل داده شود. شبکه قرارداد هوشمند باید به فایل اپلیکیشن دسترسی داشته باشد.

بخش سوم شرایط توافق است. هر قرارداد باید شرایط خاصی را دربربگیرد. این شرایط باید به‌صورت ریاضی به‌طور کامل نوشته‌شده و با یک‌زبان برنامه‌نویسی که مخصوص قرارداد هوشمند است، توصیف شود. این شرایط شامل الزامات طرفین قرارداد و همین‌طور پاداش‌ها، تنبیهات و سایر شرایط موجود در قرارداد است.

کلمات کلیدی :