Smart Contract/قرارداد هوشمند چیست؟ و چطور کار می کند؟

7 فروردین 1403 - خواندن 13 دقیقه - 244 بازدید



قرارداد هوشمند چیست؟ Smart Contract چطور کار می کند؟


قرارداد هوشمند یا اسمارت کانترکت (Smart Contract) کد یا برنامه ای است که در صورت تحقق شرایطی خاص، به طور خودکار و بدون نیاز به واسطه دستوراتی را اجرا می کند.

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

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

در این یادداشت، بدون واردشدن به مفاهیم فنی و پیچیده، قراردادهای هوشمند را با بیانی ساده توضیح می دهیم و با ارائه مثال های معتدد، درباره کاربردهایش می گوییم. همچنین، ریسک ها و چالش های این فناوری را بررسی می کنیم.


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

قرارداد هوشمند یا همان اسمارت کانترکت (Smart Contract) برنامه یا کدی است که روی بلاک چین ذخیره می شود و در صورت رخ دادن شرایط خاص، بدون واسطه و بدون نیاز به تایید کسی اجرا خواهد شد. مفهوم این قراردادها اولین بار توسط نیک زابو (Nick Szabo) در سال ۱۹۹۴ ارائه شد.

قراردادهای هوشمند به نوعی نوشته می شوند که پس از اجرا و تحقق همه طرفین از صحت اجرای آن مطمئن باشند و پای واسطه در قرارداد حذف شود.

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



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

نیک زابو، توسعه دهنده ارز دیجیتال بیت گلد (Bit Gold)، اولین بار مفهوم اسمارت کانترکت را در سال ۱۹۹۴ مطرح کرد. شبکه اتریوم (Ethereum) اولین شبکه مخصوص قراردادهای هوشمند بود که توسط ویتالیک بوترین (Vitalik Buterin) ساخته شد.

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


قرارداد هوشمند چطور کار می کند؟

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

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


1-شرایط به طور کد نوشته می شود و روی بلاکچین ذخیره می شود.

2-وقتی شرایط موجود در کد برآورده شد، دستورات به طور خودکار اجرا می شود.

3-نتیجه اجرای قرارداد روی بلاکچین ذخیره می شود.



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

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

حتی خود برنامه نویس قرارداد هوشمند هم نمی تواند کد قرارداد هوشمند ثبت شده در بلاک چین را تغییر دهد.

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

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

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


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

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

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



تفاوت قرارداد سنتی و Smart Contract

با قراردادهای هوشمند می شود برنامه ها و پروژه هایی را توسعه داد که بدون هیچ گونه واسطه و از کارافتادگی تا ابد به کار خود ادامه دهند. به این برنامه ها برنامه های غیرمتمرکز (Dapp) هم می گویند.



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


مزایای اسمارت کانترکت

خودکارسازی:

قراردادهای هوشمند با کاهش نیاز به واسطه ها، کارایی را افزایش و خطای انسانی را کاهش می دهند.

اعتماد:

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

امنیت: 

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

سرعت:

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

توقف ناپذیری: 

وقتی قرارداد هوشمندی پیاده سازی می شود، قوانین و شرایط موجود در آن قابل تغییر نیست. در همه شرایط، طرفین مجبور هستند به توافق پایبند بمانند.

تمرکززدایی: 

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

قابلیت برنامه نویسی: 

می شود قراردادهای هوشمند را برای انجام طیف گسترده ای از وظایف برنامه نویسی کرد؛ از تراکنش های ساده گرفته تا فرایندهای پیچیده کسب وکاری.


معایب اسمارت کانترکت

پیچیدگی و هزینه: 

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

خطای انسانی: 

احتمال اشتباه یا باگ در کد قرارداد وجود دارد و بنابراین، اگر Smart Contract در بلاک چین ثبت شود، ازآنجاکه تغییرپذیر نیست ممکن است ضررهای مالی قابل توجه ای را متوجه کاربران کند. به عنوان نمونه ای بارز، می توان پروژه DAO در اتریوم را نام برد.

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

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

نبود پذیرش قانونی و حقوقی: 

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

نبود بلوغ کافی: 

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


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

در حال حاضر سالیدیتی (Solidity) بهترین و پرکاربردترین زبان برنامه نویسی برای نوشتن اسمارت کانترکت است. با سالیدیتی می شود برنامه های غیرمتمرکز روی اتریوم، ترون و تعداد دیگری از بلاک چین ها ساخت. در زیر بهترین زبان های برنامه نویسی اسمارت کانترکت ها را می بینید:



سالیدیتی (Solidity) اتریوم، اولنچ، بایننس، ترون، هدرا و پالیگان

راست (Rust) کازماس، پولکادات و سولانا

سی پلاس پلاس (C++) ریپل، ایاس و استلار

کلاریتی (Clarity) استکس

جاوا (Java) اتریوم، بلاک چین آی بی ام و نئو

جاوا اسکریپت (JavaScript) اتریوم، نئو، پولکادات، سولانا

پایتون (Python) اتریوم، نئو و استیم


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

به طور کلی، برای نوشتن کد قراردادهای هوشمند، علاوه بر یادگیری برنامه نویسی، باید روی موضوعات زیر متمرکز باشیم:

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

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

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

پلتفرم: پلتفرم خود را طوری انتخاب کنید که بعدا دست شما را برای توسعه نبندد. مثلا اتریوم محبوب ترین بلاک چین برنامه نویس هاست. به جز این، بلاکچین های زیاد دیگری مانند سولانا، کاردانو و اولنچ می توانند Smart Contract را میزبانی کنند.


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

انواع کاربرد اسمارت کانترکت

امور مالی غیرمتمرکز (دیفای)

واضح ترین کاربرد قراردادهای هوشمند در حوزه مالی دیده می شود که باعث ایجاد حوزه ای به نام دیفای (DeFi) شده است. دیفای به مجموعه خدماتی اشاره دارد که با کمک قراردادهای هوشمند، امور مالی مختلف مانند معامله، تبادلات مالی، وام ، سرمایه گذاری و … را غیرمتمرکز می کند.


انتخابات

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


مدیریت زنجیره تامین

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


احراز هویت

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


بیمه

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


بهترین پلتفرم های قراردادهوشمند

اتریوم (Ethereum): در حال حاضر اتریوم محبوب ترین پلتفرم اسمارت کانترکت دنیای بلاک چین به حساب می آید و صدها برنامه غیرمتمرکز مختلف روی آن ساخته شده و اجرا می شود.

سولانا (Solana): سوالانا که به یکی از «قاتلین اتریوم» مشهور است، در سال های اخیر محبوبیت خوبی میان علاقه مندان به دنیای قراردادهای هوشمند پیدا کرده است. 

پولکادات (Polkadot): یکی دیگر قوی ترین پلتفرم های اسمارت کانترکت هاست که توسط گووین وود (Gavin Wood)، توسعه دهنده اتریوم، ساخته شده است.

اولنچ (Avalanche): امین گون سیرر (Emin Gun Sirer)، سازنده اولنچ، این پلتفرم اسمارت کانترکت را متمایز از سایر نمونه های مشابه ساخته است. اولنچ یک پروژه پیچیده به حساب می آید.

بایننس اسمارت چین: پلتفرم بایننس اسمارت چین که توسط صرافی بایننس ایجاد شده است، طی سال های اخیر سهم قابل توجهی از فضای Smart Contractها را به خود اختصاص داده است و این سهم رفته رفته در حال افزایش است.

تزوس (Tezos): تزوس، یک پلتفرم بلاکچینی است که از قراردادهای هوشمند و برنامه های غیرمتمرکز پشتیبانی می کند. این پلتفرم، به دلیل قابلیت خوداصلاحگری، می تواند به روزرسانی های جدید را بدون نیاز به توقف یا تغییر عملکرد خود، اجرا کند. 

ترون (Tron): ترون، یک پلتفرم بلاک چینی است که برای ایجاد یک شبکه جهانی و غیرمتمرکز برای اشتراک گذاری محتوای دیجیتال، توسط جاستین سان توسعه یافته است.

شبکه تلگرام (The Open Network): اوپن نتورک یا شبکه باز که به اختصار تن (TON) نامیده می شود، یک بلاک چین منحصربه فرد جامعه محور است که تیم تلگرام آن را طراحی کرده است.


سوالات متداول

آیا قرارداد هوشمند هک می شود؟

بله؛ یکی از آسیب پذیری های اسمارت کانترکت ها امکان هک شدن آنهاست که با توجه به تدابیر امنیتی می شود جلوی آن را گرفت.


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

خیر؛ بیت کوین ازقراردادهای هوشمند پشتیبانی نمی کند و نمی شود روی بلاک چین اصلی آن برنامه ای نوشت.


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

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


نتیجه گیری

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

مصطفی لطفی/وکیل دادگستری/پژوهشگر حقوق فناوری های دیجیتال

حقوق دیجیتالقرارداد هوشمندsmart contract