قرارداد هوشمند چیست؟
درست مانند هر قراردادی، قراردادهای هوشمند (smart contracts) هم شرایط یک توافق یا معامله را مشخص می کنند. با این حال، چیزی که قراردادهای هوشمند را «هوشمند» میکند، این است که این مفاد و شرایط به عنوان کد روی یک بلاک چین تنظیم و اجرا میشود، نه روی کاغذ. قراردادهای هوشمند ایده اصلی پشت بیت کوین را گسترش می دهند یعنی ارسال و دریافت پول بدون هیچ واسطه ای تا امکان خودکارسازی و غیرمتمرکز کردن ایمن تقریبا هر نوع معامله یا تراکنش را، صرف نظر از اینکه چقدر پیچیده باشد، ممکن سازد و از آنجایی که آن ها بر روی یک بلاک چین مانند اتریوم اجرا می شوند، امنیت، اطمینان و دسترسی بدون مرز را ارائه می دهند.
چرا قراردادهای هوشمند مهم هستند؟
قراردادهای هوشمند به توسعه دهندگان اجازه می دهد تا طیف گسترده ای از برنامه ها و توکن های غیرمتمرکز را بسازند. آن ها در همه چیز از ابزارهای مالی جدید تا صنعت بیمه، بنگاههای معاملاتی، ماشینهای خودران، علوم پزشکی و درمانی، قوانین کپیرایت، قراردادهای تجاری و اقتصادی میان دولتها و بسیاری دیگر که ممکن است تاکنون به آن ها پی نبرده باشیم، استفاده میشود و مانند هر تراکنش رمزنگاری دیگری روی یک بلاک چین ذخیره می شوند. هنگامی که یک برنامه قرارداد هوشمند به بلاک چین اضافه شد، به طور کلی نمی توان آن را معکوس یا تغییر داد (هرچند استثناهایی وجود دارد).
برنامههای مبتنی بر قراردادهای هوشمند اغلب به عنوان «برنامههای غیرمتمرکز» یا dapps شناخته میشوند و شامل فناوری مالی غیرمتمرکز یا DeFi میشوند که هدف آن تغییر صنعت بانکداری است. اپلیکیشنهای DeFi به دارندگان ارزهای دیجیتال اجازه میدهند تا در تراکنشهای مالی پیچیده مانند پسانداز، وام یا بیمه شرکت کنند. برخی از محبوبترین برنامههای کاربردی قرارداد هوشمند عبارتند از:
Uniswap: یک صرافی غیرمتمرکز که به کاربران این امکان را می دهد تا از طریق قرارداد هوشمند، انواع خاصی از رمزارزها را بدون هیچ تعیین کننده نرخ مبادله ای، معامله کنند.
Compound: پلتفرمی که از قراردادهای هوشمند استفاده میکند تا به سرمایهگذاران اجازه میدهد سود کسب کنند و وامگیرندگان فورا بدون نیاز به بانک وام دریافت کنند.
USDC: ارز دیجیتالی که از طریق قرارداد هوشمند به دلار آمریکا متصل می شود و یک USDC را به ارزش یک دلار آمریکا تبدیل می کند. UDDC بخشی از دسته جدیدتری از پول دیجیتال است که به عنوان استیبل کوین شناخته می شود.
بنابراین چگونه از این ابزارهای مبتنی بر قرارداد هوشمند استفاده می کنید؟ تصور کنید مقداری اتریوم در دست دارید که میخواهید با USDC معامله کنید. میتوانید مقداری اتریوم را در Uniswap قرار دهید، که از طریق قرارداد هوشمند، میتواند به طور خودکار بهترین نرخ را برای شما پیدا کند، معامله را انجام دهد و سپس USDC را برای شما ارسال کند. سپس میتوانید مقداری از USDC خود را در Compound قرار دهید تا به دیگران وام دهید و نرخ بهره تعیین شده بهصورت الگوریتمی را دریافت کنید. همه این ها بدون استفاده از بانک یا مؤسسه مالی صورت می گیرد.
در قراردادهای سنتی، مبادله ارزها پرهزینه و زمان بر است و برای افراد آسان یا مطمئن نیست که دارایی های نقدی خود را به افراد غریبه در آن سوی دنیا قرض دهند. اما قراردادهای هوشمند هر دوی این سناریوها و طیف وسیعی از سناریوها را ممکن میسازد.
قراردادهای هوشمند چگونه کار می کنند؟
قراردادهای هوشمند برای اولین بار در دهه ۱۹۹۰ توسط یک دانشمند کامپیوتر و وکیل به نام نیک سابو Nick Szabo پیشنهاد شد. معروف است که سابو یک قرارداد هوشمند را با یک دستگاه خودکار فروش اجناس (vending machine) مقایسه می کند. ماشین فروش اجناسی را تصور کنید که قوطی های نوشابه را به قیمت ۲۵ سنت می فروشد. اگر یک دلار در دستگاه قرار دهید و یک نوشابه را انتخاب کنید، برای دستگاه از پیش تعریف شده است که یا نوشیدنی شما را به همراه ۷۵ سنت دیگر تحویل دهد یا (اگر موجودی قوطی های نوشابه تمام شده است) از شما خواسته می شود که انتخاب دیگری انجام دهید و یا یک دلار خود را پس بگیرید. این نمونه ای از یک قرارداد هوشمند ساده است. درست همانطور که یک دستگاه فروش نوشابه می تواند فروش را بدون واسطه انسانی خودکار کند، قراردادهای هوشمند می توانند تقریبا هر نوع مبادله ای را خودکار کنند.
در حال حاضر، اتریوم محبوبترین پلتفرم قراردادهای هوشمند است، اما بسیاری دیگر از بلاکچینهای ارزهای دیجیتال از جمله EOS، Neo، Tezos، Tron، Polkadot و Algorand میتوانند آنها را اجرا کنند. یک قرارداد هوشمند می تواند توسط هر کسی ایجاد و در یک بلاک چین مستقر شود. کد آن ها شفاف و قابل تأیید عمومی است، به این معنی که هر طرف می تواند دقیقا ببیند که یک قرارداد هوشمند هنگام دریافت دارایی های دیجیتال از چه منطقی پیروی می کند.
قراردادهای هوشمند در انواع زبان های برنامه نویسی از جمله Solidity، Web Assembly و Michelson نوشته می شوند. در شبکه اتریوم، کد هر قرارداد هوشمند در بلاک چین ذخیره میشود و به هر طرف اجازه میدهد تا کد قرارداد و وضعیت فعلی آن را بررسی کند تا عملکرد آن را تأیید کند.
هر کامپیوتر در شبکه یا نود “node” یک کپی از تمام قراردادهای هوشمند موجود و وضعیت فعلی آن ها را در کنار بلاک چین و داده های تراکنش ذخیره می کند.
هنگامی که یک قرارداد هوشمند وجوهی را از یک کاربر دریافت میکند، کد آن توسط تمام نودهای شبکه اجرا میشود تا در مورد نتیجه و جریان ارزش حاصله به توافق برسند. این همان چیزی است که به قراردادهای هوشمند اجازه می دهد تا بدون هیچ مرجع مرکزی اجرا شوند، حتی زمانی که کاربران در حال انجام تراکنش های مالی پیچیده با اشخاص ناشناس هستند.
برای اجرای یک قرارداد هوشمند در شبکه اتریوم، به طور کلی باید هزینه ای به نام gas بپردازید (به این دلیل که این کارمزدها بلاک چین را فعال نگه می دارد).
قراردادهای هوشمند پس از استقرار در بلاک چین، به طور کلی نمی توانند تغییر یابند، حتی توسط سازنده آن ها. (در این قاعده استثناهایی وجود دارد.) این کمک می کند تا اطمینان حاصل شود که نمی توان آن ها را سانسور یا خاموش کرد.
نتیجه گیری
یک قرارداد هوشمند، مانند هر قراردادی، شرایط یک توافق را تعیین می کند. اما برخلاف قراردادهای سنتی، شرایط قرارداد هوشمند به صورت کد در حال اجرا بر روی بلاکچینی مانند اتریوم اجرا میشوند. قراردادهای هوشمند به توسعه دهندگان این امکان را می دهد تا برنامه هایی بسازند که از امنیت، اطمینان و دسترسی بلاک چین بهره می برند و در عین حال عملکرد پیچیده همتا به همتا (peer-to-peer) را ارائه می دهند.