معامله

ساخت وبلاگ

معاملات دستورالعمل های رمزنگاری شده از حساب ها هستند. یک حساب کاربری برای به روزرسانی وضعیت شبکه TRON ، معامله را آغاز می کند. ساده ترین معامله انتقال TRX از یک حساب به حساب دیگر است.

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

فقط پس از بسته بندی معامله توسط Super Node ، و بلوک تأیید می شود ، بالاخره معامله تأیید می شود.

قالب یک معامله به شرح زیر است:

یک معامله ارسالی عمدتا شامل زمینه های زیر است:

  • raw_data. contract - محتوای اصلی معامله ، قرارداد یک لیست است ، اما در حال حاضر فقط یک عنصر استفاده می شود. انواع مختلف معاملات دارای محتوای قرارداد متفاوتی هستند. به عنوان مثال ، برای معامله نوع انتقال TRX ، قرارداد شامل مبلغ انتقال ، آدرس گیرنده و سایر اطلاعات خواهد بود. TRON از انواع مختلفی از قراردادها پشتیبانی می کند ، لطفاً برای جزئیات بیشتر به بخش معاملات زیر مراجعه کنید.
  • raw_data. ref_block_bytes - ارتفاع بلوک مرجع معامله ، با استفاده از بایت های 6 تا 8 (اختصاصی) از ارتفاع بلوک مرجع ، در کل 2 بایت. بلوک مرجع در مکانیسم Tron Tapos استفاده می شود ، که می تواند از پخش مجدد معامله روی چنگال ها که شامل بلوک ارجاع نشده است ، جلوگیری کند. به طور کلی آخرین بلوک جامد به عنوان بلوک مرجع استفاده می شود.
  • raw_data. ref_block_hash - هش بلوک مرجع معامله ، با استفاده از بایت های 8 تا شانزدهم (منحصر به فرد) هش بلوک مرجع ، در مجموع 8 بایت. بلوک مرجع در مکانیسم Tron Tapos استفاده می شود ، که می تواند از پخش مجدد معامله روی چنگال ها که شامل بلوک ارجاع نشده است ، جلوگیری کند. به طور کلی آخرین بلوک جامد به عنوان بلوک مرجع استفاده می شود.
  • RAW_DATA. EXPIRATION - زمان انقضا معامله ، که فراتر از آن معامله دیگر بسته بندی نمی شود. اگر معامله با فراخوانی API Java-Tron ایجاد شود ، زمان انقضا آن به طور خودکار توسط گره به مقدار اضافه کردن 60 ثانیه به زمان بندی آخرین بلوک گره تنظیم می شود. فاصله زمان انقضا را می توان در پرونده پیکربندی گره اصلاح کرد ، حداکثر مقدار نمی تواند بیش از 24 ساعت باشد.
  • raw_data. data - یادداشت معامله.
  • RAW_DATA. Timestamp - Timestamp Transaction ، به عنوان زمان ایجاد معامله تعیین می شود.
  • raw_data. fee_limit - حداکثر هزینه انرژی مجاز برای اجرای معامله قرارداد هوشمند. فقط استقرار و ایجاد معاملات قرارداد هوشمند باید تعیین شود ، دیگران نه.
  • امضا - امضای فرستنده برای معامله. این ثابت می کند که معامله فقط می تواند از فرستنده انجام شود و به طرز کلاهبرداری ارسال نشده است.

در TRON انواع مختلفی از معاملات مانند معاملات انتقال TRX ، معاملات انتقال TRC10 ، استقرار معاملات قرارداد هوشمند ، ایجاد معاملات قرارداد هوشمند ، معاملات TRX و غیره وجود دارد.

برای ایجاد انواع مختلف معاملات ، باید با API های مختلف تماس بگیرید. به عنوان مثال ، نوع معامله استقرار قرارداد هوشمند CreateSmartContract است ، برای ایجاد معامله باید با API Wallet/DeployContract تماس بگیرید و نوع معامله Staking TRX FreezeBalanceContract است ، برای ایجاد معاملات باید با API Wallet/FreezeBalance تماس بگیرید.

برای انواع بیشتر معاملات ، لطفاً برای اطلاعات بیشتر به API های HTTP ، به : انواع معاملات در TRON مراجعه کنید ، لطفاً به API HTTP مراجعه کنید

معامله در مراحل زیر در چرخه زندگی خود می گذرد:

  1. ایجاد و امضای معامله.
  2. معامله به شبکه Tron پخش می شود ، پس از تصویب تأیید و اجرای توسط گره ، در یک استخر معامله گنجانده می شود.
  3. گره تولید بلوک معامله را از استخر معامله می گیرد ، آن را در یک بلوک جدید شامل می شود و سپس بلوک را به شبکه Tron پخش می کند.
  4. معامله "تأیید" خواهد شد. تأیید اینکه آیا معامله تأیید شده است بستگی به این دارد که آیا بلوکی که معامله در آن گنجانده شده است تأیید شده است. مکانیسم تأیید بلوک Tron این است که پس از تولید بلوک ، 19 گره فوق العاده مختلف بلوک های بعدی را بر اساس این بلوک تولید می کنند ، سپس بلوک تأیید می شود.

انواع کتابخانه ها و ابزارها برای ایجاد معاملات در دسترس هستند. موارد زیر TronWeb را برای ایجاد یک معامله انتقال TRX به عنوان نمونه ای برای نشان دادن نحوه ایجاد معامله می گیرد:

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

فرآیند تولید امضای معامله

  1. هش معامله را محاسبه کنید.
  2. هش معامله را با کلید خصوصی فرستنده امضا کنید.
  3. امضای تولید شده را به نمونه معامله اضافه کنید.

بیشتر SDK ها فرآیند تولید امضای معاملات فوق را پیاده سازی می کنند و آنها را در رابط کاربری برای توسعه دهندگان قرار می دهند. با استفاده از TronWeb به عنوان نمونه ، کاربران می توانند مستقیماً با روش علامت تماس بگیرند تا امضای معامله را تکمیل کنند.

نمونه امضای با استفاده از TronWeb از TronWeb برای امضای معامله ایجاد شده در بالا استفاده کنید:

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

برای پخش یک معامله امضا شده با استفاده از TronWeb:

تأیید اینکه آیا معامله تأیید شده است بستگی به این دارد که آیا بلوکی که معامله در آن گنجانده شده است تأیید شده است. مکانیسم تأیید بلوک Tron این است که پس از تولید بلوک ، 19 گره فوق العاده مختلف بلوک های بعدی را بر اساس این بلوک تولید می کنند ، سپس بلوک تأیید می شود.

گره java-tron فراهم می کند /Walletsolidty /* API ، که برای کاربران راحت است که از معاملات تأیید شده پرس و جو کنند. تفاوت بین /Walletsolidty /* و /Wallet /* در این است که معامله پرسیده شده توسط /کیف پول /* نشان می دهد که در زنجیره بوده است اما لزوماً تأیید نشده است. معامله ای که توسط /Walletsolidty /* پرس و جو شده است نشان می دهد که در زنجیره ای بوده و جامد شده است ، یعنی معامله تأیید شده است.

برای معاملات مختلف , روشهای مختلفی برای تعیین اینکه آیا تأیید شده است وجود دارد:

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

برچسب : نویسنده : Mihayloo بازدید : <-PostHit-> تاريخ : سه شنبه 23 اسفند 1401 ساعت: 12:43