قرارداد هوشمند چیست و چگونه کار میکند؟ + ویدئو

۱۵ اردیبهشت ۱۳۹۹
ویدئو آموزش مفاهیم قرارداد هوشمند

یکی از تکنولوژی‌های مهمی که به طور چشم‌گیری توانایی بلاک چین را افزایش می‌دهد، قراردادهای هوشمند هستند. در حالی که بیت‌کوین و دیگر ارزهای دیجیتال برای ایجاد یک ارز دیجیتال توسعه یافتند، اتریوم و شبکه‌های لایه‌ی اول دیگر برای اجرای برنامه‌های غیر متمرکز طراحی شدند. در این مقاله، به زبان ساده توضیح می‌دهیم که قراردادهای هوشمند چیست و چرا انقلابی است؟

قراردادهای هوشمند چیست؟

قراردادهای هوشمند، قطعات ساده‌ای از کد کامپیوتری هستند که برای ایجاد توافق بین طرفین قرارداد نوشته می‌شوند. آن‌ها شرایط و منطق داخلی دارند که نتیجه آن‌ها را تعیین می‌کنند. این قراردادها به صورت خودکار اجرا می‌شوند زمانی که شرایط مورد نیاز برآورده شده باشد (توابع “اگر این، آن” راه اندازی می‌شوند). به عنوان مثال، کد می‌تواند برای دو طرف ایجاد شود و به صورت خودکار اجرا شود زمانی که هر دو طرف نقش خود را در توافق فعال کرده‌اند.

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

ویژگی‌های کلیدی قراردادهای هوشمند عبارتند از:

  • کارایی، سرعت و دقت: این قراردادها به صورت دیجیتال و خودکار اجرا می‌شوند هنگامی که شرایط مورد نیاز برآورده شده باشد.
  • اعتماد و شفافیت: در شبکه بلاک چین با دفتر رکورد توزیع‌شده، هیچ دخالتی از طرف سوم وجود ندارد و معاملات رمزنگاری شده و غیرقابل تغییر هستند.
  • امنیت: فناوری بلاک چین امن است زیرا رکوردها رمزنگاری شده‌اند و یک هکر باید یک زنجیره کل را تغییر دهد تا یک رکورد را تغییر دهد.
  • صرفه‌جویی: بدون واسطه، زمان و هزینه‌ها را صرفه‌جویی می‌کند.

کاربردهای قراردادهای هوشمند

اگر با قراردادهای هوشمند آشنا نیستید، ممکن است کمی پیچیده به نظر برسند، اما در حقیقت تفاوت زیادی با توافقنامه‌های مکتوب سنتی ندارند.

در اینجا چند مورد از کاربردهایی را می‌بینید که قراردادهای هوشمند می‌توانند بهتر از نسخه‌های کاغذی عمل کنند:

قراردادهای هوشمند و قانون

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

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

پس از برنامه‌ریزی، قرارداد هوشمند تمام شرایط توافق‌نامه را در شبکه غیرمتمرکز اجرا می‌کند و خوشبختانه، تحت تأثیر تفاوت‌های زبانی قرار نمی‌گیرد.

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

قراردادهای هوشمند و حساب‌های بانکی

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

ویدئو آموزشی قرارداد هوشمند چیست

 

اما برای درک بهتر قرارداد هوشمند، ابتدا بهتر است که قرارداد معمولی را بشناسیم.

قرارداد معمولی چیست؟

قرارداد معمولی را حتما خیلی خوب می شناسید، در واقع تعهد بین دو یا چند نفر است.

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

بنابراین برای قراردادهای معمولی ما همیشه نیاز به یک یا چند واسطه امین داریم. این واسطه می تواند شخص، سرور کامپیوتر و یا هر شرکتی باشد.

قرارداد هوشمند و قرارداد معمولی چه تفاوتی دارند؟

 مقایسه قرارداد سنتی و قرارداد هوشمند- برای مشاهده سایز اصلی کلیک کنید

مقایسه قرارداد سنتی و قرارداد هوشمند- برای مشاهده سایز اصلی کلیک کنید

 

به کارگیری این فناوری باعث حذف واسطه ها میشود.

به بیان دیگر، قرارداد هوشمند به صورت یک کد روی بلاکچین فعال شده و بدون نیاز به واسطه ها می تواند شرایط توافق بین طرفین را بررسی و اجرا نماید.

بلاکچین باعث تحول قرارداد ها شده است

بلاکچین باعث تحول قرارداد ها شده است

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

با استفاده از این قراردادها می توان برنامه هایی را ساخت که بدون دخل و تصرف تا ابد کارکنند. به این برنامه ها برنامه های غیر متمرکز  گفته می شود.

 

طرز کار قرارداد هوشمند

قرارداد هوشمند بر روی بلاکچین ثبت می شود. به دلیل ماهیت توزیع شده بلاکچین، این قرارداد میان همه ی اعضای بلاک چین  به اشتراک گذاشته می شود. به دلیل همین غیرمتمرکز بودن، امکان تغییر یا توقف قرارداد وجود ندارد.

همچنین بخوانید |  آشنایی با بلاکچین

روش پیاده سازی قرارداد هوشمند

ابتدا برنامه نویس باید کد قرارداد هوشمند را بنویسد. چندین زبان برنامه نویسی برای قراردادهای هوشمند استفاده می شود. به عنوان مثال برای برنامه نویسی قراردادهای هوشمند اتریومباید از زبان سالیدیتی استفاده کرد. امروزه از پایتون که یک زبان سطح بالاست هم استفاده میشود.

سپس کدهای ساخته شده به صورت یک تراکنش روی بلاکچین ثبت می شود.

مثالی برای درک بهتر قرارداد های هوشمند

مثالی برای درک بهتر قرارداد های هوشمند

تعامل با یک قرارداد ثبت شده هم به صورت یک تراکنش ورودی انجام می شود و بعد اعضای بلاک چین با استفاده از ماشین مجازی اتریوم ، قرارداد و ورودی آن را اجرا می کنند. اگر کارمزد قرارداد به میزان کافی باشد تراکنش تایید می شود.

ماشین مجازی اتریوم به عنوان فضایی مجازی برای اجرای قراردادها عمل می کند.

برای ایجاد یک قرارداد هوشمند به چه چیزهایی نیاز دارم؟

موراد متعددی وجود دارند مثل:

موضوع قرارداد و دسترسی

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

شرایط قرارداد

شرایط قرارداد هوشمند در ادامه عملیات است که اگر شرایط موجود باشد باعث اجرای قرارداد می شود که باید با برنامه نویسی معلوم شده و همه شرکت کنندگان آن را بپذیرند.

اوراکل

اوراکل یعنی چیزی که اطلاعات خارجی را به قرارداد می‌دهد تا قرارداد آن‌ها را پردازش کند.

پلتفرم انحصاری

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

 

کاربرد قراردادهای هوشمند در زندگی واقعی

موارد استفاده از قراردادهای هوشمند-براش مشاهده سایز اصلی کلیک نمایید

موارد استفاده از قراردادهای هوشمند-براش مشاهده سایز اصلی کلیک نمایید

 

هزاران ایده ناب را می‌توان با این شکل قراردادها عملی کرد. در هر جایی که بخواهیم نیاز به اعتماد کردن را از بین ببریم، این قراردادها می‌توانند کارآمد باشند. برخی از آن‌ها که تاکنون اجرایی شده‌اند :

انتخابات

انتخابات یکی از خوزه های کاربردی در این زمینه است. مثلا نتایج انتخابات در بلاک چین قرار میگیرد و بین نود ها توزیع شده و کلیه داده ها رمز نگاری شده و شفافند. پس تقلب در انتخابات معنی ندارد.

مدیریت

قراردادهای هوشمند می‌توانند فرایندهای روتینی را هر روزه به شکلی دقیق اجرا کنند.
مثلا می‌توان قراردادی برای پرداخت حقوق کارمندان وابسته به ساعات فعالیتشان ایجاد کرد که نیاز به اعتماد به حسابداران نباشد.

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

مالکیت معنوی

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

بیمه

با قراردادهای هوشمند می‌توان نیاز به واسطه‌ها را در سیستم‌های سنتی بیمه از بین برد. پرداخت خودکار خسارت، دریافت حق بیمه و تمدید بیمه چیزیست که شرکت‌های بیمه روی آن کار می‌کنند.
همچنین از قراردادهای هوشمند می‌توان در سیستم‌هایی مثل بانکداری، حمل و نقل، ردیابی و اینترنت اشیا استفاده کرد.

 

مشکلات قراردادهای هوشمند

معایب قرارداد های هوشمند-براش مشاهده سایز اصلی کلیک نمایید

معایب قرارداد های هوشمند-براش مشاهده سایز اصلی کلیک نمایید

با وجود مزایای فوق‌العاده قراردادهای هوشمند هنوز کامل نیستند. بزرگترین مشکلاتی که قراردادهای هوشمند در سطح فعلی با آن‌ها مواجه اند عبارتند از :

عامل انسانی

کد قراردادها توسط برنامه‌نویسان نوشته می‌شود، بنابراین احتمال اشتباه در کد وجود دارد. اگر قرارداد هوشمند در بلاک چین ثبت شود، دیگر نمی‌توان تغییر داد و باگ هم قابل رفع شدن نیست.
به عنوان نمونه می‌توان پروژه DAO در اتریوم را نام برد. وجود یک مشکل امنیتی در این کد باعث شد تا بیش از ۵۰ میلیون دلار اتریوم به سرقت برود و توسعه‌دهندگان مجبور شوند برای برگشت دادن سرمایه‌ها، هارد فورک انجام دهند و اتریوم جدیدی به وجود آمد و اتریوم قبلی اتریوم کلاسیک نام گرفت.

مشکل اوراکل‌ها

ابهام اوراکل ها

ابهام اوراکل ها

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

وضعیت قانونی

با توجه به اینکه قرارداد های هوشمند توسط دولت ها به رسمیت شناخته نمی شوند. اگر  دولتی تصمیم به تصویب قوانینی برای قرارداد های هوشمند بگیرند مسائل جدیدی به وجود خواهد آمد. مثلا مالکیت یک خانه روی قرارداد های هوشمند ،برای دولت ها قابل قبول نیست.

هزینه های پیاده سازی

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

آینده‌ای روشن برای قراردادهای هوشمند

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

در قراردادهای سنتی، بندهایی مثل قوه قهریه وجود دارد که در شرایط غیرمترقبه انعطاف‌پذیری می‌دهد، اما در قراردادهای هوشمند، کد بدون توجه به این شرایط اجرا می‌شود.

با وجود این مشکلات، دلیلی ندارد که نتوان آن‌ها را حل کرد. پژوهشگران در دانشگاه‌ها مثل کورنل تک دارند روی راه‌حل‌هایی کار می‌کنند تا این قراردادها را بخشی از زندگی روزمره کنند. وکلا هم می‌توانند با برنامه‌نویسان همکاری کنند تا الگوهای قرارداد هوشمند برای کاربردهای تجاری بسازند.

جدیدترین روندها در قراردادهای هوشمند (۲۰۲۴)

  1. حساب‌های قرارداد هوشمند (خلاصه حساب): این فناوری خط بین حساب‌های کاربری و قراردادهای هوشمند را محو می‌کند، کار با قراردادها را ساده‌تر می‌کند و امنیت و تجربه کاربری را بهبود می‌بخشد.
  2. قراردادهای هوشمند حفظ حریم خصوصی: این نوع قراردادها داده‌های حساس را هنگام انجام تراکنش‌ها محافظت می‌کنند و از تکنیک‌های رمزنگاری پیشرفته برای حفظ محرمانگی استفاده می‌کنند.
  3. قراردادهای هوشمند با اثبات بدون دانش (ZKP): این قراردادها امکان تأیید تراکنش‌ها را بدون فاش کردن اطلاعات زمینه‌ای می‌دهند و بالاترین سطح از حریم خصوصی و امنیت را تضمین می‌کنند.

نتیجه‌گیری

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

نظرتان را درباره‌ی مقاله «قرارداد هوشمند چیست و چگونه کار میکند؟ + ویدئو» با ما درمیان بگذارید.

منبع:coinbureau
2 نفر این مطلب را پسندیدند.
آیا این مطلب برای شما مفید بود؟
رای شما ثبت شد!
اگر بازخوردی درباره این مطلب دارید یا پرسشی دارید که بدون پاسخ مانده است، آن را از طریق بخش نظرات مطرح کنید.
ثبت نظر
حامد فولادی
همیشه علاقه به برنامه نویسی داشتم و در این زمینه هرچیزی که نیاز بود رو به خودم یاد دادم. الان به عنوان توسعه دهنده وب و برنامه نویس توی تیم میهن سیگنال فعالیت دارم.

‫2 نظر

  • کی پس میدین به مردم این پولارو

  • دیدگاهتان را بنویسید

    نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *