قراردادهای هوشمند شهروندان درجه یک در Blockchain Ethereum هستند. آنها بخش مهمی از توسعه اتریوم هستند. در این راهنما ، ما یک مرور کلی در مورد نحوه عملکرد قراردادهای هوشمند در blockchain Ethereum خواهیم دید. این شامل نحوه راه اندازی Ethereum IDE و سپس روند نوشتن و استقرار یک قرارداد هوشمند است.
یک قرارداد هوشمند چیست؟
قراردادهای هوشمند شهروندان درجه یک در Blockchain Ethereum هستند. آنها بخش مهمی از توسعه اتریوم هستند. در این راهنما ، ما یک مرور کلی در مورد نحوه عملکرد قراردادهای هوشمند در blockchain Ethereum خواهیم دید. این شامل نحوه راه اندازی Ethereum IDE و سپس روند نوشتن و استقرار یک قرارداد هوشمند است.
یک قرارداد هوشمند چیست؟ مروری بر نحوه عملکرد قراردادهای هوشمند در اتریوم
قراردادهای هوشمند شهروندان درجه یک در Blockchain Ethereum هستند. آنها بخش مهمی از توسعه اتریوم هستند. در این راهنما ، ما یک مرور کلی در مورد نحوه عملکرد قراردادهای هوشمند در blockchain Ethereum خواهیم دید. این شامل نحوه راه اندازی Ethereum IDE و سپس روند نوشتن و استقرار یک قرارداد هوشمند است.
قرارداد هوشمند چیست؟

قراردادهای هوشمند دقیقاً مانند قراردادهای موجود در دنیای واقعی است. تنها تفاوت این است که آنها دیجیتالی هستند. در حقیقت ، یک قرارداد هوشمند یک برنامه رایانه ای است که در یک blockchain ذخیره می شود. قراردادهای هوشمند قطعاتی از کد هستند که هنگام برآورده شدن شرایط از پیش تعیین شده توسط احزاب درگیر ، اجرا می شوند. به عنوان مثال ، یک قرارداد هوشمند که وقتی شخصی فیات را واریز می کند ، یک نشانه را صادر می کند. قراردادهای هوشمند به معاملات ایمن و قابل اعتماد اجازه می دهند تا بدون مشورت با یک مقام مرکزی ، بین احزاب ناشناس جابجا شوند. قراردادهای هوشمند در اتریوم به صورت استحکام و ویپر نوشته شده است. استحکام یک زبان با محوریت سطح بالا است که تحت تأثیر C ++ ، JavaScript و Python قرار دارد و برای ادغام با دستگاه مجازی Ethereum (EVM) طراحی شده است. Vyper یک زبان مبتنی بر قرارداد آزمایشی است که با الهام از پایتون است. ماشینهای مجازی یک لایه انتزاع بین اجرای کد و دستگاه اجرا ایجاد می کنند. در هر بلوک معین ، فقط یک حالت واحد از blockchain وجود دارد. blockchain Ethereum وضعیت خود را با کمک EVM (دستگاه مجازی Ethereum) حفظ می کند. EVM این کار را با تعریف قوانین برای محاسبه یک حالت معتبر جدید از بلوک به بلوک انجام می دهد. برای نشان دادن این در یک مدل ریاضی ، می توانیم Y را به عنوان یک عملکرد انتقال حالت در نظر بگیریم. این تابع را می توان به صورت y (s ، t) = s 'نوشت: s حالت معتبر قدیمی است ، t مجموعه ای از انتقال های معتبر جدید است که به بلوک بعدی اضافه می شود ، و S "حالت معتبر جدید است. این عملکرد حالت معتبر قدیمی را به خود اختصاص می دهد و مجموعه ای از معاملات معتبر جدید برای تولید یک حالت معتبر جدید به عنوان یک خروجی. می توانید اطلاعات بیشتری در مورد EVM و نحوه عملکرد ایالت اتریوم در این وبلاگ جامع در EVM بخوانید. در بالا فنی EVM بود. اکنون ، درک کنیم که چگونه به طور عملی کار می کند. EVM یک محیط ماسهبازی ایجاد می کند که بایت کد قراردادهای هوشمند را اجرا می کند. این بدان معنی است که کد دستگاه کاملاً از شبکه ، سیستم فایل یا فرآیند روی دستگاه میزبان جدا شده است. برای هر دستورالعمل اجرا شده در EVM ، یک سیستم هزینه اجرای را پیگیری می کند. این هزینه مرتبط با اجرای دستورالعمل در یک واحد گاز اندازه گیری می شود. کاربر مایل به اجرای این دستورالعمل مجبور است مقداری اتر را برای پرداخت هزینه بنزین رزرو کند. در اینجا درباره هزینه های گاز و گاز بیشتر بدانید. EVM کامل است. این امر با فعال کردن سیستمی که به جای شارژ هر معامله مالی مانند بیت کوین ، هر دستورالعمل نرم افزاری را اجرا می کند ، به این امر دست می یابد.
شبکه Ethereum turing کامل به این معنی است که می توان آن را یک کامپیوتر توزیع شده در سراسر جهان به همسالان در نظر گرفت. قرارداد هوشمند چگونه کار می کند؟ 0.8.1; هر وقت کسی بخواهد خانه بفروشد ، با یک کارگزار مشورت می کند. کارگزار مقداری از کل مبلغ را برای پردازش معامله و واسطه با خریدار و فروشنده می گیرد. بیایید بگوییم که ما کارگزار را از بین می بریم و به جای آن یک قرارداد هوشمند ایجاد می کنیم. این برنامه ریزی شده است به گونه ای که هر زمان که مبلغی بیشتر از یک شماره خاص برای ملک ارائه شود ، خانه را به خریدار می فروشد ، حقوق را منتقل می کند و پول را به فروشنده منتقل می کند. این واسطه را از این روند حذف می کند. از آنجا که معامله به طور مستقیم بین دو طرف صورت می گیرد ، کل فرآیند ارزان تر و ایمن تر است. قراردادهای هوشمند در blockchain ذخیره می شوند ، به این معنی که آنها خصوصیات خاصی را به ارث می برند. خارج از خواص ، دو مورد از این نکته هستند- تغییر ناپذیری و توزیع جهانی. تغییرپذیری به معنای پس از استقرار قرارداد هوشمند ، هیچ کس نمی تواند با آن دستکاری کند. و توزیع جهانی به این معنی است که همه افراد در شبکه blockchain بازده قرارداد را تأیید می کنند. اگر کسی سعی کند قرارداد را تغییر دهد ، دیگران در شبکه آن را نامعتبر می کنند ، که باعث می شود دستکاری تقریباً غیرممکن باشد. قراردادهای هوشمند چگونه مستقر می شوند؟ قراردادهای هوشمند برای اولین بار در هنگام استقرار قرارداد به Bytecode تبدیل می شوند. این کد بایت سپس در blockchain ذخیره می شود و یک آدرس به آن اختصاص می یابد. آدرس قرارداد بر اساس آدرس شخص ایجاد قرارداد (فرستنده) و تعداد معاملات خالق ارسال شده (غیر CE) تعیین می شود. آدرس فرستنده و NONCE RLP رمزگذاری شده و با الگوریتم Keccak-256 رمزگذاری شده و هشدار داده شده است. قراردادهای هوشمند ، که به شدت در استحکام نوشته شده اند ، در درجه اول با استفاده از Ethereum Remix IDE مستقر و آزمایش می شوند. Remix IDE یک IDE مبتنی بر مرورگر منبع باز برای قراردادهای هوشمند Ethereum است. بیایید سعی کنیم یک قرارداد را با استفاده از Remix IDE مستقر کنیم. ما قرارداد خود را در Ropsten TestNet مستقر خواهیم کرد. برای این کار ، ما به ETH آزمون احتیاج داریم. برای ایجاد یک کیف پول ETH ، و برخی از ETH ETH برای شروع کار به پسوند مرورگر Metamask نیاز خواهید داشت. با رفتن به شیر آب روپستن می توانید ETH تست دریافت کنید. شما باید شبکه تست Ropsten را در کیف پول Metamask خود انتخاب کرده و آدرس کیف پول را در قسمت متن در شیر آب قرار دهید. سپس روی "ارسال من تست اتر" کلیک کنید. به Ethereum Remix IDE بروید و یک پرونده استحکام جدید ایجاد کنید- به عنوان مثال ، «Contract. Sol». کد زیر را در اسکریپت استحکام جدید خود بچسبانید: // SPDX-license-identififier: MIT = 0; استحکام پراگما آزمون قرارداد() uint256 // SPDX-license-identififier: MIT += 1; > استحکام پراگما تابع() uint256 عمومی شمردن (قراردادهای هوشمند چگونه مستقر می شوند؟) باکتری // SPDX-license-identififier: MIT; > >
چشم انداز
بازگرداندن
uint256
A green tick will be added to the compiler tab on the left menu on a successful compilation of the contract. Now to deploy the contract, click on the third icon from the left menu, and select injected Web3 from the dropdown under “Environment,” and then click on “Deploy”(make sure to select Ropsten testnet on MetaMask before Deploying the contract). Approve the transaction from MetaMask.
Now that your contract is deployed, you can locate it under the "Deployed Contracts" section.
Smart contracts can also be deployed using truffle or other Ethereum libraries.
برگشت
شمردن
توضیح کد فوق. خط 1: مشخص کردن نوع مجوز SPDX ، که علاوه بر استحکام ^0. 6. 8 است.
هر زمان که کد منبع یک قرارداد هوشمند در دسترس عموم باشد ، این مجوزها می توانند به رفع/جلوگیری از مشکلات حق چاپ کمک کنند. اگر نمی خواهید نوع مجوز را مشخص کنید ، می توانید از مجوز ویژه ای بدون مجوز استفاده کنید یا به سادگی کل نظر را پرش کنید (این منجر به خطا نمی شود ، فقط یک هشدار).
فارکس وکسب درامد...
ما را در سایت فارکس وکسب درامد دنبال می کنید
برچسب :
نویسنده : احمد قانع پور
بازدید : 31
تاريخ : شنبه
31 تير
1402 ساعت: 12:36