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

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

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

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

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

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

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

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

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

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

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

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

 

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

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

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

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

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

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

 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

اوراکل

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

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

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

 

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

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

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

 

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

انتخابات

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

مدیریت

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

 

مالکیت معنوی

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

بیمه

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

 

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

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

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

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

عامل انسانی

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

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

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

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

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

وضعیت قانونی

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

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

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

 

نتیجه گیری

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

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

منابع:

اینوستوپدیا

ویکیپدیا

اشتراک گذاری:
حامد فولادی
همیشه علاقه به برنامه نویسی داشتم و در این زمینه هرچیزی که نیاز بود رو به خودم یاد دادم. الان به عنوان توسعه دهنده وب و برنامه نویس توی تیم میهن سیگنال فعالیت دارم.

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

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