تعریف: یک قرارداد هوشمند (Smart Contract)، مانند هر قراردادی، شرایط یک توافق را شامل میشود. اما برخلاف قراردادهای سنتی، شرایط قراردادهای هوشمند، به صورت کدِ در حال اجرا، بر روی بلاکچینی مانند اتریوم، اجرا میشوند. قراردادهای هوشمند به توسعهدهندگان این امکان را میدهد تا برنامههایی بسازند که از امنیت، قابلیت اطمینان و دسترسی بلاکچین بهره میبرند و در عین حال عملکرد پیچیدهی همتا به همتا (peer-to-peer) را ارائه میدهند. همه چیز از وام و بیمه گرفته تا لجیستیک و بازی.
درست مانند هر قرارداد، قراردادهای هوشمند شرایط یک توافق یا معامله را مشخص میکنند. با این حال، چیزی که قراردادهای هوشمند را «هوشمند» میکند، این است که این شرایط بهعنوان کدی که روی یک بلاکچین اجرا میشود، تنظیم و اجرا میگردند، نه روی کاغذی که روی میز وکیل باشد. قراردادهای هوشمند ایدهی اصلی بیتکوین را گسترش می دهند: ارسال و دریافت پول بدون «واسطه مورد اعتماد» مانند یک بانک. این ویژگی امکان خودکارسازی ایمن و غیرمتمرکز سازی تقریباً هر نوع معامله یا تراکنش را، صرف نظر از اینکه چقدر پیچیده باشد، ممکن میکند. از آنجایی که آنها بر روی یک بلاکچین مانند اتریوم اجرا میشوند، امنیت، قابلیت اطمینان و دسترسی بدون مرز را ارائه میدهند.
چرا قرارداد هوشمند اهمیت دارد؟
قراردادهای هوشمند به توسعهدهندگان اجازه میدهد تا طیف گستردهای از برنامهها و توکنهای غیرمتمرکز را بسازند. آنها در همه چیز از ابزارهای مالی جدید گرفته تا لجیستیک و تجربیات بازی، استفاده میشوند و مانند هر تراکنش رمزنگاری دیگری روی یک بلاکچین ذخیره میشوند. هنگامی که یک برنامهی قرارداد هوشمند به بلاکچین اضافه شود، به طور کلی نمیتوان آن را تغییر داد (اگرچه استثناهایی وجود دارد).
برنامههای مبتنی بر قراردادهای هوشمند اغلب به عنوان «برنامههای غیرمتمرکز» یا «dApps» شناخته میشوند. این برنامهها شامل فناوری مالی غیرمتمرکز (یا DeFi) هستند که هدف آن تغییر صنعت بانکداری است. اپلیکیشنهای دیفای به دارندگان ارزهای دیجیتال اجازه میدهند تا در تراکنشهای مالی پیچیدهای مانند پسانداز، وام یا بیمه، شرکت کنند، بدون اینکه بانک یا مؤسسه مالی دیگری از هر نقطهای در دنیا قطع شود. برخی از محبوبترین برنامههای کاربردی قرارداد هوشمند فعلی عبارتند از:
- Uniswap: یک صرافی غیرمتمرکز که به کاربران این امکان را میدهد تا از طریق قرارداد هوشمند، انواع خاصی از رمزارزها را بدون هیچ مرجع مرکزی تعیین کنندهی نرخ مبادله، معامله کنند.
- Compound: پلتفرمی که از قراردادهای هوشمند استفاده میکند و به سرمایهگذاران اجازه میدهد تا سود کسب کنند و همچنین میتوانند فوراً، بدون نیاز به بانک واسط، وام دریافت کنند.
- USDC: ارز دیجیتالی که از طریق قرارداد هوشمند به دلار آمریکا متصل میشود و یک USDC را به ارزش یک دلار آمریکا تبدیل میکند. USDC بخشی از دسته جدیدتری از پول دیجیتال است که به عنوان استیبلکوین (Stable Coin) شناخته میشود.
چگونه میتوان از این ابزارهای مبتنی بر قرارداد هوشمند استفاده کرد؟
تصور کنید مقداری اتریوم در دست دارید که میخواهید با USDC معامله کنید. میتوانید مقداری اتریوم را در Uniswap قرار دهید. این پلتفرم از طریق قرارداد هوشمند میتواند به طور خودکار بهترین نرخ ارز را برای شما پیدا کند، معامله را انجام دهد و USDC شما را برای شما ارسال کند. سپس میتوانید مقداری از USDC خود را در Compound قرار دهید تا به دیگران وام دهید و نرخ بهره تعیین شده بهصورت الگوریتمی را دریافت کنید. همهی اینها بدون استفاده از بانک یا مؤسسه مالی دیگر انجام میشود.
در امور مالی سنتی، مبادلهی ارزها پرهزینه و زمانبر است و برای افراد آسان و مطمئن نیست که داراییهای نقدی خود را به افراد غریبه در آن سوی دنیا قرض دهند. اما قراردادهای هوشمند هر دوی این سناریوها و طیف وسیعی از سناریوها را ممکن میسازد.
این مطلب را هم مطالعه نمایید: چگونگی پل زدن از بلاکچین لایه ۱ به لایه ۲
قرارداد هوشمند چگونه کار میکند؟
قراردادهای هوشمند برای اولین بار در دههی ۱۹۹۰ توسط یک دانشمند کامپیوتر و وکیل به نام نیک سابو (Nick Szabo) پیشنهاد شد. او یک قرارداد هوشمند را با یک دستگاه فروش خودکار مقایسه کرد. ماشینی را تصور کنید که قوطیهای نوشابه را به قیمت یک چهارم دلار میفروشد. اگر یک دلار در دستگاه قرار دهید و یک نوشابه را انتخاب کنید، دستگاه، نوشیدنی را بعلاوهی ۷۵ سنت از باقیماندهی پولتان به شما تحویل میدهد. یا اینکه از شما خواسته میشود انتخاب دیگری کنید و یا اینکه دلار خود را پس بگیرید و فرایند را لغو کنید. این نمونهای از یک قرارداد هوشمند ساده است. درست همانطور که یک دستگاه نوشابه میتواند فروش را بدون واسطهی انسانی خودکار کند، قراردادهای هوشمند میتوانند تقریباً هر نوع مبادلهای را خودکار کنند.
پلتفرمهای قرارداد هوشمند
در حال حاضر، اتریوم محبوبترین پلتفرم قراردادهای هوشمند است. اما بسیاری دیگر از بلاکچینهای ارزهای دیجیتال (از جمله EOS، Neo، Tezos، Tron، Polkadot و Algorand) میتوانند آنها را اجرا کنند. یک قرارداد هوشمند میتواند توسط هر کسی ایجاد و در یک بلاکچین مستقر شود. کد آنها شفاف و قابل تأیید عمومی است. به این معنی که هر فرد علاقهمند می تواند دقیقاً ببیند که یک قرارداد هوشمند هنگام دریافت داراییهای دیجیتال از چه منطق و قوانینی پیروی میکند.
زبانهای برنامه نویسی مورد استفاده
قراردادهای هوشمند در انواع زبانهای برنامهنویسی (از جمله Solidity، Web Assembly و Michelson) نوشته میشوند. در شبکهی اتریوم، کد هر قرارداد هوشمند در بلاکچین ذخیره میشود و به هر فرد علاقهمند اجازه میدهد تا کد و وضعیت فعلی آن را بررسی کند تا عملکرد آن را تأیید نماید.
مراحل اجرایی
هر کامپیوتر در شبکه (یا گره (Node)) یک کپی از تمام قراردادهای هوشمند موجود و وضعیت فعلی آنها را در کنار بلاکچین و دادههای تراکنش، ذخیره میکند.
هنگامی که یک قرارداد هوشمند وجوهی را از یک کاربر دریافت میکند، کد آن توسط تمام گرههای شبکه اجرا میشود تا در مورد نتیجه و جریان ارزش حاصله به توافق برسند. این همان چیزی است که به قراردادهای هوشمند اجازه میدهد تا بدون هیچ مرجع مرکزی ایمن اجرا شوند. حتی زمانی که کاربران در حال انجام تراکنشهای مالی پیچیده با اشخاص ناشناس هستند.
به طور کلی، برای اجرای یک قرارداد هوشمند در شبکهی اتریوم، باید هزینهای به نام «Gas fee» بپردازید. به این دلیل که این کارمزدها زنجیرهی بلاکی را فعال نگه میدارد.
قراردادهای هوشمند پس از استقرار بر روی یک بلاکچین، به طور کلی نمیتوانند تغییر یابند، حتی توسط سازندهی آنها. (در این قاعده استثنائاتی وجود دارد.) این کمک می کند تا اطمینان حاصل شود که آنها نمیتوانند تغییر یابند یا تقلبی در آن به وجود آید.