
فرق قرارداد معمولی با قرارداد هوشمند، مثل قرارداد اجاره خانه یا اجاره ماشین و غیره است که به صورت یک نسخه فیزیکی بین طرفین قرارداد اجرا میشود تا به شرط اجرا شدن شرایط در یک طرف، طرف مقابل نیز ملزم به اجرای تعهدات مندرج در قرارداد باشد پس برای اجرای یک قرارداد معمولی نیاز به افراد واسطه داریم به عنوان مثال در قرارداد اجاره خانه نیاز به یک بنگاه دار خواهیم داشت، ضمن اینکه باید فرد مورد اطمینانی نیز باشد.
قرارداد هوشمند یک کد هوشمند است که توسط یک یا چند برنامه نویس نوشته شده که وابسته به فناوری بلاک چین است چون روی آن پیادهسازی میشود و اجرای آن هیچ فرد واسطهای نیاز ندارد پس نیازی به اعتماد داشتن هم نیست و همچنین از نظر امنیت نیز قرارداد هوشمند برخلاف قرارداد معمولی به هیچ وجه قابل دستکاری و تغییر نیست حتی کسی که کد آن را نوشته هم نمیتواند تغییر دهد.
دلیل تغییر ناپذیر بودن قرارداد هوشمند این است که وقتی توسط کلاینت یا نرم افزار رسمی متصل به بلاک چین، بر روی بلاک چین ثبت شد بین تمام کاربران که اصطلاحا نود (Node) یا گره نام دارد و تعداد آن میلیونی است به اشتراک گذاشته میشود و لذا به هیچ وجه قابل تغییر نیست چرا که برای تغییر آن باید تک تک نسخههای به اشتراک گذاشته شده نیز تغییر کنند. کسانی هم که مایل به نوشتن و ثبت قرارداد هوشمند علاقهمند هستند باید زبان برنامه نویسی شبکه اتریوم یعنی سالیدیتی (Solidity) را بلد باشند.
در قرارداد هوشمند که کد آن نوشته شده تعیین میگردد که در صورت محرز شدن شرایط دو طرف قرارداد امکان انجام تراکنش یا سایر موارد تعیین شده برقرار شود در غیر این صورت اجرا نخواهد شد. برای اجرا شدن قرارداد هوشمند نیز هر کاربر به کمک ماشین مجازی اتریوم که به آن EVM (Ethereum Virtual Machine) گفته میشود، قرارداد را اجرا خواهند کرد که به شکل تراکنش است و باید در ازای کارمزد معین تأیید شود.
قرارداد هوشمند جایگزینی فوقالعاده برای قراردادهای معمولی
ساخت یک قرارداد هوشمند نیازمند چه مواردی است؟
تا بدین جا مشخص کردم که ماهیت قرارداد هوشمند اتریوم چیست و برای نوشتن و اجرای آن نیاز به اطلاع از زبان برنامهنویسی سالیدیتی، کلاینت و تایید تراکنش ثبت قرارداد هوشمند توسط نودها داریم اما این تمام موارد لازم نیست. سایر موارد مهمی که باید مشخص و معین باشند عبارتند از:
1- عنوان قرارداد: قرارداد هوشمند باید به موردی که مدنظر قرارداد است دسترسی داشته باشد و عنوان نیز کاملاً شفاف باشد به عنوان مثال تعیین میگردد که در ازای مقدار مشخصی پول به خدماتی خاص اجازهی دسترسی داده خواهد شد که باید این دسترسی نیز به خوبی مهیا باشد.
2- شرایط: شرایط و دنباله اتفاقاتی که در قرارداد هوشمند رخ میدهد تا اصل و هدف قرارداد اجرا گردد باید کاملا مشخص باشد که این کار بر عهدهی برنامه نویس است.
3- Oracle: منبع خارجی است که اطلاعات را به منظور پردازش شدن به قرارداد هوشمند میدهد. مثلا اوراکل شاید اداره آمار باشد.
4- پلتفرم: در حال حاضر اتریوم بهترین گزینه و پلتفرم برای اجرای کلیه انواع قرارداد هوشمند است.
قرارداد هوشمند را در کجا میتوان استفاده کرد؟
1-رایگیری: در زمان رایگیری میتوان آرای شمارش شده را طی یک قرارداد هوشمند در بلاک چین اتریوم ثبت کرد که دسترسی و تغییر دادن آن غیر ممکن است.
2- مدیریت: قرارداد هوشمند اتریوم نه تنها دفتر کل معتبری ارائه میکند بلکه بخاطر شفافیت عملکرد، دقت زیاد و عملکردی خودکار بسیاری از تأخیرهای کاری و اختلافات داخلی را نیز نداشته و به محض انجام شدن پیش شرطها، موضوع قرارداد اجرا میشود و نیاز به هیچ کاغذ بازی هم نیست.
3- حق نشر و چاپ: شما میتوانید به جای اینکه فایل یا کتاب خود را در بستر اینترنت فعلی برای فروش بگذارید که نسخههای غیر قانونی رایگان آن نیز به وفور پیدا شوند آن را در قرارداد هوشمند بگنجانید و به عنوان مثال مشخص کنید که تنها در صورت پرداخت معینی از ارز دیجیتال یا توکن مدنظر، اجازه دسترسی به فایل داده خواهد شد.
4- صنعت خودرو و بیمه: امروزه که همه چیز در حال خودکار و رباتی شدن هستند میتوان از قرارداد هوشمند نیز در خودروها استفاده کرد تا دقیقاً مشخص شود که به عنوان مثال در یک تصادف سنسور ماشین مقصر بوده یا رانندگان و اینکه شرکت بیمه هم کاملا مطلع شود که برای پرداخت خسارت دقیقاً باید چه کاری انجام دهد و آیا بیمه باید پولی پرداخت کند یا خیر؟
5- املاک: با کمک قرارداد هوشمند میتوانید بدون نیاز به ثبت قرارداد فیزیکی و اعتماد کردن به بنگاهدار، به ثبت قرارداد بپردازید تا در صورت ازای پرداخت معینی پول، قرارداد اجرا شود و هزینه ماهانه اجاره و پرداخت آن ثبت گردد.
قرارداد هوشمند با امنیت و قابلیت اعتماد بسیار بالا
مزایای استفاده از قرارداد هوشمند
قرارداد هوشمند دارای مزایای گستردهای است که استفاده از آن چنین فوایدی را به همراه دارد:
1- خودکار بودن: شما به عنوان کسی که قصد دارید قرارداد هوشمند تعیین کنید نیازی به فرد واسط، قانونگذار یا وکیل ندارید تا آن را تأیید کرده و یا بر آن نظارت کند. ضمن اینکه به دلیل نداشتن افراد حدواسط امکان دستکاری و تغییر در متن قرارداد هوشمند وجود ندارد.
2- اعتمادپذیری بالا: مدارک شما با رمزنگاری بسیار قوی بین تمامی اعضاء به اشتراک گذاشته میشود لذا امکان گم شدن مدارک نیز اصلا وجود ندارد.
3- امنیت: با وجود رمزنگاری بی نظیر و بسیار قدرتمند امکان هک شدن و سرقت اطلاعات و داده صفر است لذا هیچ نگرانی بابت آن وجود ندارد.
4- سرعت: معمولاً برای انجام قراردادهای معمولی باید کاغذ بازیهای زیادی انجام شود تا بتواند مدارک را بررسی کرد اما قرارداد هوشمند یک کد نرم افزاری کاملاً خودکار است و لذا پردازش اطلاعات و مدارک به سرعت انجام میشوند.
5- صرفه جویی در هزینه: قرارداد هوشمند به دلیل حذف افراد واسطه در هزینههای ثبت قرارداد نیز به شدت مقرون به صرفه عمل میکند.
معایب قرارداد هوشمند
قرارداد هوشمند با داشتن مزایای بسیار خالی از عیب نیست که در این بخش به معایب آن اشاره خواهیم کرد:
1- برنامه نویسی با نیروی انسانی: با اینکه افراد حدواسط در اجرای قرارداد هوشمند دخالتی ندارند و پس از آن نیز به هیچ وجه قابل تغییر نیست اما به دلیل اینکه متن قرارداد و اجرای آن توسط برنامه نویسان انجام خواهد شد به همین دلیل امکان رخداد اشتباه در برنامه نویسی وجود دارد و حتی برخی اشتباهات شاید بسیار سنگین تمام شوند.
2- هک شدن اوراکل: در مطالب قبلی بیان کردیم که اوراکل به عنوان بخشی است که اطلاعات را برای پردازش در اختیار قرارداد هوشمند قرار میدهد پس در صورتی که اوراکل هک شود اطلاعات نیز اعتبار خود را از دست میدهند.
3- قانونی بودن همگانی: فعلاً در دنیا قرارداد هوشمند به رسمیت کامل شناخته نشده که بخاطر اجرایی نشدن آن در دستگاههای دولتی است لذا پذیرفتن آن با پیدایش مسائل جدیدی خواهد بود.
4- هزینههای اجرایی: با اینکه شما پولی بابت مشارکت افراد حدواسط پرداخت نخواهید کرد ولی برنامه نویسی آن توسط افراد برنامهنویس نیازمند پرداخت هزینههای سنگین است.
اتریوم بهترین پلتفرم برای اجرای قرارداد هوشمند
منابع:
1- https://solidity.readthedocs.io/en/v0.4.24/introduction-to-smart-contracts.html
2- https://blockgeeks.com/guides/smart-contracts
3- https://cointelegraph.com/ethereum-for-beginners/what-are-smart-contracts-guide-for-beginners
4- https://arzdigital.com/smart-contracts-explained