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

۱۵ خرداد ۱۳۹۹۴٬۸۵۶بازدید۳دقیقه مطالعه
از قرارداد هوشمند چه استفاده هایی می‌شود؟

اولین کاربرد مهم قرارداد هوشمند (Smart Contract) در سال ۲۰۱۷ و به شکل توکن‌ها جلوه کرد. بسیاری از ۱۰۰ ارز دیجیتال برتر در آن زمان، توکن‌هایی بر بستر بلاک چین اتریوم بودند.

برای مثال، ترون و بایننس کوین هر دو قبل از آن که بلاک چین‌های مختص به خود را توسعه دهند، توکن‌هایی بر بستر اتریوم بودند.

چگونه می‌توان با استفاده از قرارداد هوشمند توکن ایجاد کرد؟

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

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

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

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

نمونه‌ای از کد توکن با قرارداد هوشمند

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

ما می‌خواهیم که دارندگان توکن مورد نظر بتوانند توکن‌های خود را به سایر آدرس‌ها انتقال دهند؛ بنابراین به تابع انتقال نیاز داریم. همچنین می‌خواهیم بدانیم که هر آدرس چه مقدار توکن در اختیار دارد.

قرارداد هوشمند بدین شکل خواهد بود:

قرارداد هوشمند اتریوم بلاک چین کیف پول استاندارد erc20

  • کانستراکتور (Constructor یا تابع سازنده) در خط ۱۲ پارامترها را دریافت می‌کند و کوین مورد نظر را ایجاد می‌کند.
  • طی ساخت توکن، خط ۱۷ تمام توکن‌ها را به اجرا کننده قرارداد ارسال می‌کند.
  • استفاده از ()balanceOf در خط ۲۰ نشان می‌دهد که آدرس مورد نظر چه مقدار توکن در اختیار دارد.
  • تابع ()transfer ابتدا بررسی می‌کند که هر دو آدرس معتبر باشند، سپس بررسی می‌کند که کالر (caller یا فراخواننده) تابع، توکن‌های کافی برای ارسال داشته باشد. سپس با کاهش دادن مقدار توکن‌های در اختیار ارسال کننده و افزایش آن مقدار به دریافت کننده، انتقال را در خط های ۲۹ و ۳۰ انجام می‌دهد.

کد کیف پول

در مقاله‌های گذشته، قرارداد هوشمندی نوشتیم که می‌توانست اتر را حفظ، دریافت و ارسال کند. اما نمی‌توانست توکن‌های را انتقال دهد؛ زیرا همانطور که اشاره کردیم، آدرس قرارداد هوشمند توکن باید برای آن قرارداد شناخته شده باشد.

کد زیر، قرارداد اصلی MyWallet از مقاله قبلی است.

قرارداد هوشمند اتریوم بلاک چین کیف پول استاندارد erc20

عملکرد و تابع انتقال توکن جدید خود را به آن اضافه می‌کنیم.

قرارداد هوشمند اتریوم بلاک چین کیف پول استاندارد erc20

خط ۸ متغیر جدیدی به اسم tokenAddress را نشان می‌دهد که هنگام ایجاد کردن کیف پول در کانستراکتور قرار دادیم.

همچنین مشخصات فنی قرارداد MyToken را در خط ۳ وارد کردیم.

خط ۲۴ تابع جدیدی به اسم ()sendToken را نشان می‌دهد که از مشخصات فنی MyToken استفاده می‌کند تا tokenAddress را بارگذاری کند و تابع ()transfer را فراخوانی کند.

اکنون کیف پول ما می‌تواند اتر و توکن ما را حفظ، دریافت و ارسال کند.

استاندارد قرارداد هوشمند ERC-20

برای اطمینان از این که تمام کیف پول‌های اتریوم می‌توانند به میزان نامحدود توکن نگهداری کنند، یک استاندارد کدنویسی وجود دارد من توکن‌ها باید رعایت کنند.

این استاندارد، ERC20 نام دارد و حداقل پیش نیازهای ضروری برای توابع و متغیرهایی را بیان می‌کند که توکن شما باید داشته باشد تا توسط کیف پول های ERC-20 پشتیبانی شود.

تشبیهی از بلاک چین و توکن‌های اتریوم

اگر بلاک چین اتریوم را بدن انسان در نظر بگیریم، اتر خون آن است. تمام تراکنش‌ها هزینه‌ای به صورت اتر دارند. این هزینه ها به صورت گس (Gas) پرداخت می‌شود که بخش کوچکی از اتر است.

با توجه به این تشبیه، توکن‌های ERC20 همانند لباس هستند. این توکن‌ها اساسا متکی به بدن و خون مورد نظر هستند اما نکته‌ای متفاوت را ارائه می‌دهند؛ مکانیزم مورد استفاده برای انتقال اتر از یک آدرس به آدرس دیگر با مکانیزم مورد استفاده برای انتقال توکن‌های ERC20 متفاوت است، زیرا این توکن‌ها بخش مشابهی از یک بدن نیستند. این توکن‌ها، قرارداد هوشمند هستند که بر بستر بلاک چین اجرا می‌شوند.

منبع:میهن بلاکچین

امتیاز دادن به خبر

با لایک کردن هر خبر می‌توانید کوین بیشتری جایزه بگیرید

مطالب مرتبط

تحلیل کاربران

زارع

۱۶ خرداد ۱۳۹۹

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

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

Mhdesadegh

۱۶ خرداد ۱۳۹۹

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

انسانها همواره در حفظ و نگهداری اموال و دارایی‌های خود چه از نقدی و غیر نقدی ویا منقول و غیر منقول راههای بسیار گوناگونی را امتحان کرده که برخی با موفقیت وبرخی ناموفق بوده واین رویه همچنان ادامه داره که با راه اندازی قراردادهای هوشمند مطمئنان از استقبال خوبی برخوردار خواهد شد.

saeed5649

۱۸ تیر ۱۳۹۹

غیر حضوری

این معاملات معمولا رو به افزایش است و برای کاهش زنان بسیار کاربرد دارد اما برای اعتمینان بین طرفین مانند معاملعه حضوری اعتبار ندارد

ardomanish

۱۶ خرداد ۱۳۹۹

امنیت

هرچی روبه جلوتر بریم امنیت فیزیکی و اقتصادی ارزهای دیجیتال بالاتر میروند به این ترتیب ارزهای دیجیتال رفته رفته اختصاصی تر رفتار می کنند

Bagro

۱۵ خرداد ۱۳۹۹

امنیت و کاربرد

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

hamid1355

۱۶ خرداد ۱۳۹۹

جهانی شفاف و عیان

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

ali60

۲۰ تیر ۱۳۹۹

ثبات وتعهد

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

monib

۱۶ خرداد ۱۳۹۹

قرارداد

قرارداد دیجیتالی یا الکترونیکی چیز خوبی میتونه باشه برای اینده و باید مزیت این قراردادها هم در نظر گرفت

mashizi

۱۷ خرداد ۱۳۹۹

قرارداد

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

saadatiff

۱۵ خرداد ۱۳۹۹

قراردادهوشمند

قراردادهای هوشمند,درقانون تجارت الکترونیک امده,که ممکنه قابل دستکاری یاانکارباشه,بنظرم هرتکنولوژی که روبه پیشرفت وهوشمندی بره عالیه ولی بشرط برقراری تامین امنیت وثبت یکسری قوانین

taherbagheri

۱۶ خرداد ۱۳۹۹

همتون خفه

داداش من قرارداد هدشمند مشکلی توش نیست حالا هر سیستمی شما ایرانی ها خوب بلدین روی هر پروژه ای که پول میده اسم بذارین نمیتونی بگو من نمیتونم تموم شد رفت قرارداد هوشمند کلاهبرداری نیست نتورک هم کلاهبرداری نیست فقط وقتی تو هیچ چی نمیدونی فقط بلدی زود یه نظر بدی که صرفا از بقیه عقب نمونی یه خودی نشون بدی این وسط میخوام بدونی که هرکاری که بخوام تو زندگیم انجام بدم به صورت تیمی انجام میدم چون ایمان دارم به این روش که خیلیاتون فکر میکنین کلاهبرداریه روی دابل وی برچسب های متفاوتی زدین ولی جالله بگم دابل وی داره کارشو میکنه از جمله ترون داره کترشو میکنه یه عده دارن سود میکنن تو روز به روز داری مثل عقب مانده ها رفتار میکنی ایرانی نیستین مگه شما من شمارو خیلی خوب میشناسم جالبه بگم ۹۹ درصد ملت ایران فقیر موندن چون فکر میکنن همه چی کلاهبرداریه

farzad_mh11

۱۵ خرداد ۱۳۹۹

پر فایده اما مستعد کلاهبرداری.

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

farid1351

۹ تیر ۱۳۹۹

کاربر بی تربیت

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

abbas63

۱۵ خرداد ۱۳۹۹

هوشمند

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

alireza.hoeen

۲۱ خرداد ۱۳۹۹

قرارداد هوشمند

قرارداد هوشمند خیلی خوبه امنیت کیف پول را میبره بالا با توجه به اینکه دزدی یا هکر ها هر روز پیش رفته میشن باید امنیت کیف پول ها هم بر بالاتر

fatemeh13771998

۱۶ خرداد ۱۳۹۹

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

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

Bist1234

۱۶ خرداد ۱۳۹۹

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

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

asadyan

۱۵ خرداد ۱۳۹۹

قرارداد

قردادهای دیجیتالی و الکترونیکی چیز خوبی میتونه باشه و باید تمام مزیت های این قرارداد هارو در نظر گرفت

Dreamh

۲۰ خرداد ۱۳۹۹

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

با ایجاد این قرارداد های هوشمند یک سری تغییرات ایجاد میشود و اینکه هم خوب است و هم منفی اول از همه نکته منفی اینکه کلاهبردار امکان داره یان و نکته مثبت که ارتباط ها در این اوضاع بیماری کم میشود و در مصرف وقت صرفه جویی میشود

ma2167

۶ تیر ۱۳۹۹

قرارداد هوشمند

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

ro_Hosin

۱۵ خرداد ۱۳۹۹

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

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

m.esi

۱۵ خرداد ۱۳۹۹

قرار داد هوشمند

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