معرفی
نیک سابو اولین بار در دهه 1990 قراردادهای هوشمند را توصیف کرد. در آن زمان ، او قرارداد هوشمند را ابزاری تعریف کرد که با ترکیب پروتکل ها با رابط های کاربری ، شبکه های رایانه ای را رسمی و ایمن می کند.
سابو در مورد استفاده بالقوه از قراردادهای هوشمند ، ایده هایی در زمینه های مختلف از جمله توافق نامه های سیستم های اعتباری ، پردازش پرداخت ها و مدیریت حقوق داشت.
در دنیای ارزهای دیجیتال ، ممکن است ما یک قرارداد هوشمند را به عنوان یک برنامه که با بلاکچین اجرا می شود ، تعریف کنیم. به طور معمول ، قراردادهای هوشمند به عنوان یک توافق نامه دیجیتالی کار می کنند که توسط مجموعه خاصی از قوانین اجرا می شوند. این قوانین توسط کد رایانه از پیش تعریف شده است و توسط همه گره های شبکه و اجرا می شود.
قراردادهای هوشمند ، امکان ایجاد پروتکل هایی را فراهم می کنند که دو طرف می توانند از طریق بلاکچین تعهداتی را انجام دهند ، بدون اینکه نیازی به شناخت و اعتماد به یکدیگر داشته باشند. آنها می توانند مطمئن باشند که در صورت عدم تحقق شرایط ، قرارداد اجرا نمی شود.
به غیر از این ، استفاده از قراردادهای هوشمند می تواند نیاز به واسطه ها را برطرف کند و هزینه های عملیاتی را به میزان قابل توجهی کاهش دهد. اگرچه پروتکل بیت کوین سالهاست که از قراردادهای هوشمند پشتیبانی می کند ، اما این قراردادها توسط سازنده و بنیانگذار اتریوم ، Vitalik Buterin محبوب شده اند.
البته لازم به ذکر است که هر بلاکچین ممکن است روش متفاوتی برای اجرای قراردادهای هوشمند ارائه دهد. این مقاله روی قراردادهای هوشمندی که در دستگاه مجازی Ethereum (EVM) اجرا می شوند و بخشی اساسی از بلاکچین اتریوم هستند ، تمرکز خواهد داشت.
قرارداد هوشمند چگونه کار می کند؟
به زبان ساده ، یک قرارداد هوشمند به عنوان یک برنامه تعیین کننده عمل می کند و یک وظیفه خاص را در صورت تحقق برخی شرایط ، انجام می دهد.
اما علی رغم اصطلاحات رایج ، قراردادهای هوشمند مانند قراردادهای حقوقی نیستند. این قراردادها فقط قطعه ای کد هستند که روی سیستم توزیع شده (بلاکچین) اجرا می شوند. در شبکه اتریوم ، قراردادهای هوشمند وظیفه اجرا و مدیریت عملیات بلاکچین را دارند و هنگام تعامل کاربران (آدرس ها) با یکدیگر انجام می شوند.
هر آدرسی که قرارداد هوشمند نباشد ، یک حساب خارجی (EOA) نامیده می شود. بنابراین ، قراردادهای هوشمند توسط کد رایانه کنترل می شود و EOA ها توسط کاربران کنترل می شوند.
اصولاً قراردادهای هوشمند اتریوم از یک کد قرارداد و دو کلید عمومی ساخته شده اند. اولین کلید عمومی کلید ارائه شده توسط سازنده قرارداد است. کلید دیگر نشان دهنده خود قرارداد است و به عنوان یک شناسه دیجیتال منحصر به فرد برای هر قرارداد هوشمند عمل می کند.
استقرار هر قرارداد هوشمند از طریق یک معامله بلاکچین انجام می شود و فقط در صورت تماس با EOA (یا با سایر قراردادهای هوشمند) فعال می شود.
ویژگی ها
یک قرارداد هوشمند اتریوم اغلب مشخصات زیر را دارد:
توزیع شده: قراردادهای هوشمند در همه گره های شبکه اتریوم تکثیر و توزیع می شوند. این یکی از تفاوتهای عمده با سایر راه حلهای مبتنی بر سرورهای متمرکز است. قراردادهای هوشمند فقط با توجه به برآورده شدن شرایط ، اقداماتی را انجام می دهند که برای آنها طراحی شده اند. همچنین مهم نیست که چه کسی آن را اجرا کند ، نتیجه همیشه یکسان خواهد بود.
خود مختاری: قراردادهای هوشمند می توانند انواع کارها را به صورت خودکار انجام دهند و مانند یک برنامه جداگانه اجرا شوند. در بیشتر موارد اگر قرارداد هوشمند منعقد نشود ، اصطلاحا کارها خواب خواهند ماند و هیچ عملیاتی انجام نمی شود.
غیرقابل تغییر: قراردادهای هوشمند پس از استقرار قابل تغییر نیستند. تنها درصورتی که قبلاً یک عملکرد خاص اجرا شده باشد ، می توان آنها را حذف کرد.
قابل تنظیم: قبل از استقرار ، قراردادهای هوشمند را می توان به طرق مختلف کدگذاری کرد. بنابراین می توان از آنها برای ایجاد انواع مختلفی از برنامه های غیرمتمرکز (DApps) استفاده کرد.
بی اعتمادی: دو یا چند طرف می توانند از طریق قراردادهای هوشمند بدون شناخت و اعتماد به یکدیگر با هم تعامل داشته باشند. علاوه بر این فناوری بلاکچین از صحت داده ها اطمینان حاصل می کند.
شفافیت: از آنجا که قرارداد هوشمند مبتنی بر بلاکچین عمومی است ، کد منبع آن نه تنها تغییرناپذیر نیست ، بلکه برای همه قابل مشاهده است.
مزایا و موارد استفاده
به عنوان کد قابل برنامه ریزی ، قراردادهای هوشمند بسیار قابل تنظیم هستند و می توانند به طرق مختلف طراحی شوند و ارائه خدمات را انجام دهند. به عنوان برنامه های غیرمتمرکز ، قراردادهای هوشمند ممکن است شفافیت بیشتری داشته باشند و هزینه های عملیاتی را کاهش دهند.
بسته به نوع اجرا ، آنها می توانند کارایی را افزایش دهند و هزینه های دیوان سالاری را کاهش دهند. قراردادهای هوشمند به ویژه در شرایطی که شامل انتقال یا مبادله وجوه بین دو یا چند طرف باشد ، مفید هستند.
یک قرارداد هوشمند می تواند برای استفاده های بسیار متنوعی طراحی شود. برخی از این موارد عبارت است از ایجاد دارایی های توکن دار ، سیستم های رأی گیری ، کیف پول های رمزنگاری شده ، مبادلات غیرمتمرکز ، بازی ها و برنامه های تلفن همراه.
قرارداد هوشمند همچنین می تواند همراه با سایر راه حل های بلاکچین در زمینه های مراقبت های بهداشتی ، امور خیریه ، زنجیره تأمین ، حاکمیت و دیفای یا امور مالی غیرمتمرکز (DeFi) ایفای نقش کند.
محدودیت ها
قرارداد هوشمند از کد رایانه ای ساخته شده است. این کد خطرات زیادی را به همراه دارد زیرا کد در معرض آسیب پذیری و اشکال است. در حالت ایده آل ، باید توسط برنامه نویسان باتجربه نوشته و پیاده سازی شود ، به ویژه هنگامی که شامل اطلاعات حساس یا مبالغ زیاد باشد.
برخی معتقدند که سیستم های متمرکز می توانند بیشتر راه حل ها و عملکردهای ارائه شده توسط قراردادهای هوشمند را ارائه دهند. تفاوت اصلی این است که قراردادهای هوشمند به جای یک سرور متمرکز ، بر روی شبکه توزیع شده P2P در حال اجرا هستند.
از آنجا که قرارداد هوشمند مبتنی بر یک سیستم بلاکچین است، تمایل دارد که غیر قابل تغییر باشد. تغییرناپذیر بودن در بعضی شرایط می تواند عالی باشد ، اما در برخی موارد بسیار بد است.
به عنوان مثال ، هنگامی که یک سازمان خودمختار غیرمتمرکز (DAO) به نام DAO در سال 2016 هک شد ، میلیون ها اتر (ETH) به دلیل نقص در کد قرارداد هوشمند آنها به سرقت رفت. از آنجا که قرارداد هوشمند آنها تغییرناپذیر بود ، توسعه دهندگان قادر به اصلاح کد نبودند.
محدودیت دیگر قراردادهای هوشمند مربوط به وضعیت حقوقی نامشخص آنهاست. نه تنها به این دلیل که یک قرارداد هوشمند در بیشتر کشورها در یک منطقه خاکستری قرار دارد ، بلکه به این دلیل که متناسب با چارچوب قانونی فعلی نیست.
انتقاد
برخی از علاقه مندان به بلاکچین ، قراردادهای هوشمند را راه حلی می دانند که به زودی جایگزین بخش بزرگی از سیستم های اداری ما خواهند شد.
قرارداد هوشمند مطمئناً یک فناوری جالب است. اما توزیع شدگی ، قطعی بودن ، شفاف بودن و تا حدی تغییرناپذیر بودن می تواند در برخی شرایط باعث جذابیت کمتر آن شود.
اساساً ، انتقاد اصلی این است که قراردادهای هوشمند راه حل مناسبی برای بسیاری از مشکلات دنیای واقعی نیستند. در حقیقت ، برخی از سازمان ها بهتر است از گزینه های معمولی مبتنی بر سرور استفاده کنند.
وقتی سرورهای متمرکز با قراردادهای هوشمند مقایسه می شوند ، به نسبت راحت تر و ارزان تر هستند و از نظر سرعت و ارتباط بین شبکه ای بهره وری بالاتری دارند.
سخن پایانی
شکی نیست که قراردادهای هوشمند تأثیر زیادی در دنیای ارزهای رمزنگاری شده دارند و قطعاً انقلابی در فضای بلاکچین ایجاد کردند. گرچه ممکن است کاربران نهایی با قرارداد هوشمند تعامل مستقیم نداشته باشد ، اما این موارد طیف گسترده ای از برنامه ها از خدمات مالی گرفته تا مدیریت زنجیره تامین را در آینده پشتیبانی می کنند.
قرارداد هوشمند و بلاکچین در کنار هم این توانایی را دارند که تقریباً همه حوزه های جامعه ما را درگیر کنند. اما فقط زمان مشخص خواهد کرد که آیا این فناوری های پیشگام قادر به غلبه بر بسیاری از موانع در مقیاس بزرگ هستند یا خیر.