چرا آدرس‌ها از EQ به UQ تغییر کرد؟،تغییر آدرس‌ها از EQ به UQ در شبکه TON نتیجه تصمیمات فنی برای بهبود عملکرد، امنیت و مقیاس‌پذیری این شبکه است. این تغییر به منظور رفع برخی مشکلات ساختاری و بهینه‌سازی فرایندهای شبکه صورت گرفته و هدف آن فراهم آوردن یک ساختار آدرس‌دهی بهتر و کارآمدتر برای کاربران و قراردادهای هوشمند است.

لیست عناوینی که در این مقاله برای شما زوم ارزی عزیز آماده کرده ایم:

چرا آدرس‌ها از EQ به UQ تغییر کرد؟

در شبکه‌های بلاک‌چینی، آدرس‌ها نقش بسیار مهمی در شناسایی و ارتباط با سایر کاربران و قراردادهای هوشمند دارند. یکی از شبکه‌هایی که اخیراً تغییراتی در ساختار آدرس‌های خود اعمال کرده، شبکه TON (The Open Network) است. در گذشته، آدرس‌ها در این شبکه با پیشوند EQ شناخته می‌شدند، اما به‌طور ناگهانی این پیشوند به UQ تغییر پیدا کرد. این تغییر ممکن است به نظر برخی کاربران گیج‌کننده باشد، اما در حقیقت دلایل فنی و عملیاتی مختلفی پشت این تصمیم وجود دارد که می‌تواند بر عملکرد و امنیت شبکه تأثیرگذار باشد.


اساس کار شبکه TON: تمرکز بر قراردادهای هوشمند

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

تفاوت آدرس‌های شبکه TON با آدرس‌های EVM در این نکته است که در ماشین مجازی اتریوم (EVM)، آدرس‌های کیف پول‌ها کاملاً از قراردادهای هوشمند جدا هستند.

در شبکه TON، اصطلاحات مختلفی مانند قرارداد هوشمند، حساب و بازیگر به‌طور متناوب برای توصیف یک نهاد استفاده می‌شوند. این نهاد، که همان قرارداد هوشمند است، در شبکه TON ویژگی‌هایی مانند آدرس، کد، داده‌ها و موجودی دارد و می‌تواند بسته به پیام‌های ورودی واکنش‌های مختلفی نشان دهد. پس از اجرای کد، ویژگی‌های قرارداد تغییر کرده و پیام‌های جدیدی تولید می‌شود که شامل مراحل زیر است:

دریافت پیام ورودی

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

تغییر ویژگی‌های قرارداد هوشمند

ارسال پیام‌های جدید

قرارداد به حالت انتظار می‌رود تا رویداد جدیدی رخ دهد.

این توالی عملیات به عنوان «تراکنش» شناخته می‌شود که به ترتیب مشخص و بدون تداخل اجرا می‌شوند. در ادامه برخی مفاهیمی که در شبکه تون تعرفی می‌شوند را معرفی می‌کنیم:

زنجیره حساب (Account Chain)

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

زنجیره شاردها (Shard Chains)

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

در شبکه TON، ممکن است چندین بلاکچین با قوانین مختلف به طور همزمان فعالیت کنند و با ارسال پیام‌ها به یکدیگر ارتباط برقرار نمایند. اگر نیاز به سفارشی‌سازی قوانین شاردچین‌ها باشد، می‌توان یک Workchain ایجاد کرد. برای مثال، یک Workchain می‌تواند برای اجرای قراردادهای هوشمند مبتنی بر EVM (ماشین مجازی اتریوم) طراحی شود. ایجاد Workchain فرآیندی پیچیده و هزینه‌بر است که نیاز به تأیید از سوی نودهای شبکه دارد.

در شبکه TON، می‌توان تا ۲^۳۲ Workchain و ۲^۶۰ شارد داشت. اما در حال حاضر تنها دو Workchain اصلی به نام‌های MasterChain و BaseChain در این شبکه فعال هستند.

مسترچین (MasterChain)

MasterChain یک بلاکچین ویژه است که نقش هماهنگی و همگام‌سازی در شبکه را بر عهده دارد. بلاک‌های MasterChain شامل اطلاعاتی در مورد آخرین وضعیت تمامی شاردچین‌ها هستند. این اطلاعات به ناظران کمک می‌کند تا وضعیت کلی شبکه را در یک نقطه خاص بررسی کرده و به توافقی در مورد وضعیت چندزنجیره‌ای (Multichain) برسند.

در نتیجه، در شبکه TON، زنجیره‌های حساب، شاردچین‌ها، ورکچین‌ها و مسترچین به ایجاد یک شبکه بلاکچینی مقیاس‌پذیر و پویایی کمک می‌کنند که قادر است حجم بالایی از تراکنش‌ها و حساب‌ها را مدیریت کند. در حال حاضر، تنها MasterChain (با شناسه Workchain = -1) و گاهی Workchain پایه (شناسه Workchain = 0) در بلاکچین TON فعال هستند. هر دوی این Workchain‌ها دارای آدرس‌های ۲۵۶ بیتی هستند، بنابراین شناسه Workchain یا ۰ یا -۱ است و آدرس درون Workchain نیز دقیقاً ۲۵۶ بیت می‌باشد.


مسیریابی پیام‌ها در شبکه‌های بلاکچینی: نقش حساب‌ها و ارتباطات آن‌ها

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

شناسه حساب (Account ID)

تمامی شناسه‌های حساب در بلاکچین TON از آدرس‌های ۲۵۶ بیتی در Masterchain و Basechain (یا Workchain پایه) استفاده می‌کنند. در واقع، شناسه حساب‌ها (account_id) به‌عنوان تابع هش برای قراردادهای هوشمند تعریف می‌شود، به‌ویژه از الگوریتم SHA-256. هر قرارداد هوشمند که در بلاکچین TON اجرا می‌شود، دو مؤلفه اصلی را ذخیره می‌کند:

کد کامپایل‌شده

منطق قرارداد هوشمند که به شکل بایت‌کد کامپایل شده است.

وضعیت اولیه

مقادیر قرارداد در زمان استقرار آن در بلاکچین.

برای استخراج دقیق آدرس قرارداد، لازم است که هش مربوط به جفت (کد اولیه، وضعیت اولیه) محاسبه شود.

وضعیت آدرس‌ها

هر آدرس در شبکه TON می‌تواند یکی از وضعیت‌های زیر را داشته باشد:

nonexist (وجود ندارد)

آدرسی که هیچ تراکنشی نداشته و داده‌ای برای آن ذخیره نشده است. همچنین ممکن است قرارداد هوشمند مرتبط با آن حذف شده باشد. در ابتدای کار، تمامی آدرس‌ها در این وضعیت قرار دارند.

uninit (غیرفعال یا اولیه)

آدرسی که داده‌هایی مانند موجودی و اطلاعات متا دارد، اما هنوز قرارداد هوشمندی در آن ذخیره نشده است. این وضعیت زمانی ایجاد می‌شود که یک آدرس قبلاً وجود نداشته و توکن‌هایی به آن ارسال شده باشد.

active (فعال)

آدرسی که دارای کد قرارداد هوشمند، داده‌های دائمی و موجودی است. در این وضعیت، آدرس می‌تواند عملیات مختلفی را انجام دهد و داده‌های دائمی خود را تغییر دهد. یک آدرس زمانی به این حالت وارد می‌شود که در حالت uninit بوده و پیام ورودی با پارامتر state_init دریافت کرده باشد.

frozen (فریز شده)

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


آدرس‌های قابل بازگشت و غیرقابل‌بازگشت: چه تاثیری بر امنیت و تراکنش‌ها دارند؟

اگر آدرس گیرنده نتواند تراکنش را پذیرفته و اجرا کند (مثلاً به دلیل عدم وجود قرارداد هوشمند یا بروز مشکلی در مسیر)، در آدرس‌های bounceable تراکنش به فرستنده بازگشت داده می‌شود، البته با کسر هزینه‌های انتقال و گس. این نوع آدرس‌ها معمولاً برای قراردادهای هوشمند سفارشی استفاده می‌شود که در صورت عدم ارسال تراکنش، پول به حساب کاربر باز می‌گردد. در مقابل، اگر آدرس non-bounceable باشد، حتی اگر تراکنش انجام نشود، پول به فرستنده باز نمی‌گردد و به آدرس گیرنده اضافه می‌شود.

در شبکه TON، زمانی که قصد دارید دارایی‌ها یا اطلاعاتی را به آدرسی ارسال کنید که ممکن است هنوز فعال نباشد یا قرارداد هوشمند در آن نصب نشده باشد، دو نوع آدرس تعریف شده است:

Bounceable Address: این آدرس‌ها به گونه‌ای طراحی شده‌اند که اگر گیرنده (مثل قرارداد هوشمند یا کیف پول) وجود نداشته باشد یا در دسترس نباشد، تراکنش برگشت می‌خورد و دارایی‌ها یا اطلاعات از دست نمی‌روند. این ویژگی باعث می‌شود که دارایی‌ها گم نشوند.

Non-Bounceable Address: در این نوع آدرس، حتی اگر گیرنده موجود نباشد یا آدرس فعال نباشد، تراکنش ممکن است برگشت داده نشود و در نتیجه دارایی‌ها از دست می‌روند.

آدرس‌های bounceable در یکی از به‌روز‌رسانی‌های شبکه TON برای قراردادهای هوشمند معرفی شدند تا در صورت بروز مشکلی در قرارداد یا آدرس، تراکنش برگشت بخورد و دارایی‌ها از بین نروند. از طرف دیگر، برای کیف پول‌ها، آدرس‌های non-bounceable معرفی شدند تا از بروز مشکلاتی مثل بازگشت تراکنش‌های غیرضروری جلوگیری شود. بنابراین، برای محافظت از دارایی‌ها در شبکه TON، استفاده از آدرس‌های مناسب در شرایط مختلف ضروری است. آدرس‌های bounceable برای قراردادهای هوشمند و آدرس‌های non-bounceable برای کیف پول‌ها استفاده خواهند شد.


تغییر آدرس‌های TON از EQ به UQ: تحلیل فنی و کاربردی

حال که با دیدگاهی کلی درباره آدرس‌ها در شبکه TON آشنا شدید، به سراغ سوال اصلی می‌رویم! آدرس‌هایی که قبلاً در شبکه TON با فرمت EQ نمایش داده می‌شدند، پس از به‌روز‌رسانی شبکه به فرمت UQ تغییر کرده‌اند. آدرس‌های جدید با UQ آغاز می‌شوند و چهار حرف آخر آن‌ها تغییر یافته‌اند. با این حال، آدرس‌های قدیمی همچنان فعال خواهند بود و به همان کیف پول‌ها اشاره خواهند کرد. این تغییر هیچ تأثیری بر امنیت وجوه موجود در کیف پول شما نخواهد داشت.

آدرس قدیمی:
EQCcBxQZCco…dDLBRv9VYE6Nl

آدرس جدید:
UQCcBxQZCco…dDLBRv9VYE_6g

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

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

پس از این تغییر، اگر شما همچنان وجوهی را به آدرس EQ قدیمی که فردی برای شما ارسال کرده، ارسال کنید، دو حالت ممکن است پیش بیاید:

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

احتمال کمتر این است که کیف پول هرگز برای پرداخت‌ها استفاده نشده باشد. در این صورت، کیف پول TONKeeper کوینی به آن آدرس ارسال نخواهد کرد و باید از گیرنده بخواهید که آدرس جدید UQ را به شما بدهد.


سوالات متداول

  • چرا آدرس‌ها از EQ به UQ تغییر کردند؟

تغییر آدرس‌ها به منظور بهبود عملکرد شبکه و تطبیق بهتر با نیازهای امنیتی و مقیاس‌پذیری شبکه TON انجام شد.

  • آیا تغییر از EQ به UQ بر امنیت کیف پول‌ها تأثیر می‌گذارد؟

خیر، این تغییر هیچ تأثیری بر امنیت وجوه موجود در کیف پول‌ها نخواهد داشت.

  • چه تفاوتی بین آدرس‌های EQ و UQ وجود دارد؟

آدرس‌های UQ برای کیف پول‌ها مناسب‌تر هستند، در حالی که آدرس‌های EQ بیشتر برای قراردادهای هوشمند به کار می‌روند.

  • آیا آدرس‌های EQ قدیمی همچنان فعال خواهند بود؟

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

  • آدرس‌های EQ چه ویژگی‌هایی داشتند که نیاز به تغییر داشتند؟

آدرس‌های EQ برای قراردادهای هوشمند مناسب بودند، اما برای کیف پول‌ها کارایی کمتری داشتند و نیاز به تغییر داشتند.

  • آیا ارسال به آدرس‌های EQ قدیمی باعث از دست رفتن دارایی‌ها می‌شود؟

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

  • آیا تغییر به UQ تاثیری بر قراردادهای هوشمند خواهد داشت؟

بله، این تغییر باعث می‌شود که آدرس‌های UQ به طور بهینه‌تری برای کیف پول‌ها و قراردادهای هوشمند استفاده شوند.

  • آیا بعد از تغییر به UQ، آدرس‌های قدیمی همچنان مورد استفاده قرار می‌گیرند؟

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

  • چرا آدرس‌های UQ برای کیف پول‌ها بهتر هستند؟

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

  • آیا لازم است کاربران آدرس‌های جدید UQ را در تمامی تراکنش‌ها وارد کنند؟

بله، بهتر است که کاربران آدرس‌های جدید UQ را برای اطمینان از ارسال صحیح تراکنش‌ها استفاده کنند.


سخن پایانی

با به‌روزرسانی جدید شبکه TON، فرمت آدرس‌ها از EQ به UQ تغییر یافته است. این تغییر به منظور بهبود امنیت و کارایی کیف پول‌ها و قراردادهای هوشمند انجام شده است. در فرمت EQ، که بیشتر برای قراردادهای هوشمند مناسب است، اگر قرارداد هوشمند هنوز فعال نشده باشد، تراکنش‌ها به فرستنده بازمی‌گردند. اما در فرمت UQ، که برای کیف پول‌ها طراحی شده، هیچ کوینی بازگشت نمی‌یابد. این تغییرات هیچ تأثیری بر امنیت وجوه کاربران نخواهد داشت و آدرس‌های قدیمی همچنان معتبر باقی می‌مانند.

در نهایت، این تغییرات برای بهینه‌سازی تعاملات در شبکه بلاکچین TON انجام شده‌اند. بنابراین، برای ارسال دارایی‌ها، باید از آدرس‌های مناسب استفاده کنید تا از بروز مشکلات احتمالی جلوگیری شود.

ممنون که تا پایان مقاله”چرا آدرس‌ها از EQ به UQ تغییر کرد؟“همراه ما بودید


بیشتر بخوانید

source

توسط blogcheck.ir