با پیدایش بیت کوین و ارزهای دیجیتال دیگر، کاربران زیادی به دنیای کریپتو روی آوردند. این مسئله باعث شد که درک مفاهیم و اصطلاحات حوزه رمز ارزها اهمیت فراوانی پیدا کند. یکی از همین اصطلاحات مربوط به مفهوم خروجی خرجنشده تراکنش (unspent transaction output) یا UTXO است. خروجی خرج نشده تراکنش در بیت کوین در هنگام انجام تراکنشهای BTC کاربرد زیادی دارد؛ بااینحال، معمولاً این مفهوم باعث ایجاد سردرگمی در کاربران میشود.
در حالت کلی، UTXO در زمینه حسابداری ارزهای دیجیتال به کار میرود. ازآنجاییکه حسابداری رمز ارزها با امور مالی سنتی تفاوتهایی دارد، درک این مفهوم برای کاربران ضروری است. به همین خاطر، در این مقاله از اکسبیتو، قصد داریم که UTXO را بهطور کامل برای شما شرح دهیم.
UTXO چیست؟
برخی از افراد بهاشتباه گمان میکنند که «خروجی خرجنشده» رسیدی است که کاربران بابت تراکنشهای انجامنشده دریافت خواهند کرد؛ بااینحال، این تصور اشتباهی محسوب میشود. در واقع، خروجی خرجنشده تراکنش (unspent transaction output) یا UTXO به مقداری از بیت کوین اشاره دارد که پس از انجام یک تراکنش، هنوز خرج نشده است. برای درک بهتر، فرض کنید که شما یک اسکناس 1000 تومانی دارید و میخواهید با آن یک کتاب بخرید. درصورتیکه قیمت کتاب 500 تومان باشد، شما باید اسکناس 1000 تومانی را بدهید و پس از پایان خرید، یک سکه 500 تومان پس بگیرید. این سکه 500 تومانی همان خروجی خرجنشده شما است؛ درحالیکه بهصورت سکه درآمده و دیگر نمیتوان آن را با اسکناسهای 1000 تومانی دستهبندی کرد.
خروجی خرج نشده تراکنش در بیت کوین نیز چنین حالتی دارد و نمیتوان آن را بهعنوان BTC در نظر گرفت. هر UTXO تکهای بریدهشده از کوین BTC است که امکان خرج کردن دوباره آن وجود ندارد. بهخاطر همین، گاهی به خروجی خرجنشده، "Dust UTXO" هم میگویند. منظور از Dust در دنیای کریپتو، مقدار ناچیزی از یک کوین یا توکن است. این خروجیهای خرجنشده تحت مالکیت کلیدهای خصوصی کاربران قرار گرفته و از یکدیگر متمایز میشوند. بلاک چین بیت کوین از مفهوم UTXO برای ردیابی و حسابرسی کوینها استفاده میکند. بهاینترتیب، این شبکه مطلع میشود که کدام کوینها در تراکنشها هزینه شدهاند و ازاینطریق، مشکل «دوبار خرج کردن» (Double Spend) برطرف خواهد شد.
UTXO چگونه کار میکند؟
خروجیهای خرجنشده تراکنش (unspent transaction output) یا UTXOها توکنهای بومی غیرقابل تقسیمی در بلاک چین هستند که برای ردیابی تراکنشها استفاده میشوند. در واقع، بلاک چین مالکیت UTXO را ثبت میکند و شبکه وظیفه ردیابی آن را بر عهده دارد. اگرچه مفهوم خروجی خرج نشده تراکنش در خرید و فروش بیت کوین مطرح شده است؛ اما UTXO به این شبکه محدود نمیشود و بلاک چینهای لایت کوین (Litecoin)، نئون (Neon) و... نیز از همین روش برای حسابرسی بهره میبرند.
در مدل UTXO، تراکنشهای جدید از خروجیهای خرجنشده تراکنشهای قبلی استفاده میکنند؛ درحالیکه خود آنها نیز خروجیهای خرجنشده جدیدی را تولید خواهند کرد. خروجی خرج نشده تراکنش در بیت کوین و سایر شبکهها روشی بسیار کاربردی برای سازماندهی دفترکل توزیعشده است. یکی از اهداف اصلی UTXO جلوگیری از مشکل خرج کردن دوباره محسوب میشود. زمانی که خروجیهای خرجنشده تراکنشهای قبلی به کیف پول برمیگردند، شبکه این مسئله را ردیابی کرده و جلوی تخلفات و فروش دوباره کوینها را میگیرد. علاوهبر آن، با استفاده از UTXO، میتوان پروتکل جدیدی را ایجاد کرد و وایت پیپر بهخصوصی را برای این دارایی در نظر گرفت.
حالا برای اینکه نحوه عملکرد خروجی خرج نشده در بیت کوین را بهتر درک کنید، بیایید تا این قضیه را با یک مثال شفاف توضیح دهیم. فرض کنید که 55 دلار در کیف پول خود داشته باشید؛ این مقدار دارایی نشان میدهد که شما مالک نمونههایی از UTXO در کیف پول خود هستید. یعنی شما میتوانید دارای یازده اسکناس 5 دلاری، پنجاه و پنج اسکناس 1 دلاری، پنج اسکناس 10 دلاری و یک اسکناس 5 دلاری و نمونههای دیگر باشید. در نتیجه، در مورد خروجی خرجنشده هم وضعیت به همین صورت است و مجموع دستهبندیهای UTXO، کل دارایی موجود در کیف پول شما را نشان میدهد.
آیا UTXO ها و اسکناسهای ارز فیات یکسان هستند؟
یکی از دغدغههای کاربران کریپتو، درک تفاوت بین UTXO و اسکناس ارز فیات است. برخی از افراد گمان میکنند که شاید هردوی این موارد یکسان باشند و فقط در سیستمهای متفاوتی به کار گرفته میشوند. البته مثالهایی هم که در بخشهای قبلی برای روشن شدن مفهوم زدیم، به این طرز فکر دامن میزنند. بااینحال، اشکالاتی در مثالهای قبلی وجود دارند که بیان آنها به روشن شدن مسئله کمک میکند:
- در مثالهای قبلی، به کارمزد تراکنشها توجهی نشده بود. در واقع، شما برای پردازش هر تراکنش، باید کارمزد شبکه را بپردازید. در نتیجه، وقتی شما یک UTXO را دریافت میکنید، این خروجی خرجنشده برابر با مبلغ اصلی منهای مقدار تراکنش و کارمزد آن خواهد بود. البته کارمزدهای تراکنشها، در شبکههای مختلف، با یکدیگر تفاوت دارند.
- نکتهی بعدی مربوط به ارزش اسکناسهای ارز فیات است. این ارزها توسط دولتها صادر میشوند و عرضهی معینی دارند. همچنین، ارزش آنها نسبت به قیمت ارزهای دیجیتال پایدارتر است. در سوی مقابل، مقادیر UTXO میتوانند عرضهی متفاوتی داشته باشند و ارزش آنها نیز در معرض نوسانات بازار قرار میگیرد.
در نتیجه، اگرچه UTXO و اسکناس ارز فیات به یکدیگر شباهتهایی دارند، اما نمیتوان آنها را دقیقاً مانند هم به حساب آورد. همچنین، مدل UTXO از مزایای امیدوارکنندهای بهره میبرد که یکی از آنها انعطافپذیری است. برای مثال، شما میتوانید هزار BTC را تنها در یک خروجی خرجنشده تراکنش قرار دهید، درحالیکه برای مقدار زیادی ارز فیات، به تعداد فراوانی اسکناس نیاز خواهید داشت.
آیا مدل UTXO انعطاف پذیر است؟
انعطافپذیری خروجی خرجنشده تراکنش (unspent transaction output) ویژگیهای منحصربهفردی را برای کاربران فراهم میکند. با استفاده از UTXO، کاربران میتوانند کد مخصوصی را برای خروجی خرجنشده بنویسند تا ارزهای دیجیتال را در ارزشهای کمتر هم دستهبندی کنند. ازاینطریق، توسعهدهندگان قادر هستند که دادهها را در دستههای کوچکتری بگنجاندند و آنها را در بلاک چین قرار دهند. ازاینرو، همکاری میان توسعهدهندگان نقش مهمی در آینده UTXO داشته و این مسئله به بهبود وضعیت تراکنشهای آتی کمک خواهد کرد.
اصولاً مدل UTXO، نسبت به روشهای حسابرسی سنتی، انعطافپذیری بالاتری دارد. همچنین، خروجی خرج نشده تراکنش در بیت کوین و سایر شبکهها نقشی اساسی را در تعیین وضعیت بلاک چین ایفا میکند. البته به این نکته توجه داشته باشید که تنها در صورت انجام تراکنش، به UTXOها دسترسی دارید و اگر هیچ تراکنشی را پردازش نکنید، طبیعتاً خروجی خرجنشدهای هم در کیف پول شما ذخیره نمیشود.
ارزش مدلهای UTXO در چیست؟
تا اینجای مقاله، مدل UTXO و نحوه عملکرد آن در بلاک چین را توضیح دادیم؛ بااینحال، نکته مهم درباره خروجی خرج نشده تراکنش در بیت کوین و سایر شبکهها، مربوط به ارزشی است که میآفریند. به همین خاطر، در این بخش، به ارزش مدلهای UTXO خواهیم پرداخت.
قراردادهای هوشمند زبان آگنوستیک
در حالت کلی، وقتی راهحلی مستقل از ویژگیهای زبانی باشد، به آن «زبان آگنوستیک» (Language Agnostic) گفته میشود. قراردادهای هوشمندِ مبتنی بر مدل UTXO پیشرفت بزرگی در فناوری بلاک چین به حساب میآیند. این قراردادها بهطور کامل مستقل از زبان هستند و به خروجیهای خرجنشده اجازه میدهند تا مکانیزمهای اجماع منحصربهفردی را ایجاد کنند.
پشتیبانی از صرافیهای غیرمتمرکز و مبادلات اتمی
یکی دیگر از کاربردهای مهم UTXO مربوط به صرافیهای غیرمتمرکز میشود. مدل خروجی خرجنشده تراکنش میتواند از مبادلات اتمی (Atomic Swap) پشتیبانی کند. ازاینطریق، امکان پردازش معاملات ارزهای دیجیتال، بدون نیاز به اشخاص ثالث و واسطهها، فراهم میشود. در واقع، خروجیهای خرجنشده تراکنشها نگرانیهای مربوط به مشکلات موجود در صرافیهای غیرمتمرکز را برطرف کرده و انجام معاملات آنها را تسهیل میکنند.
مزایای مربوط به مقیاسپذیری
یکی دیگر از مزایای خروجی خرج نشده تراکنش در بیت کوین و سایر شبکهها مربوط به مشکل مقیاپذیری است. در واقع، UTXO میتواند امکان پردازش موازی تراکنشها را فراهم کرده و یا با افزایش حجم تراکنش، همه دادهها را در یک دسته بگنجاند. این ویژگیها بهطور قابل توجهی باعث بهبود مقیاس پذیری بلاک چین میشوند.
حریم خصوصی و امنیت
علاوهبر مزایای ذکرشده، مدل UTXO میتواند کیفیت حریم خصوصی کاربران را افزایش دهد. در واقع، آدرسهای جدیدی که به خروجیهای خرجنشده تراکنشها اختصاص پیدا میکنند، عملاً ردیابی کاربران را غیرممکن خواهند کرد. از سوی دیگر، اگر کاربران تمایل داشته باشند، میتوانند تراکنشهای خود را از طریق UTXO بهصورت آشکار انجام دهند. این ویژگی امکان احراز هویت را در سیستمهای مختلف فراهم میکند. ازآنجاییکه مدل UTXO جلوی خرج کردن دوباره را میگیرد، هیچ کاربر متخلفی نمیتواند خودش را بهجای دیگران معرفی کند.
بلاک چینهای بر پایه UTXO چه تفاوتی با سایر بلاک چینها دارند؟
اصولاً شبکههای بلاک چین از دو روش مدل خروجی خرجنشده تراکنش (UTXO) و موجودی حساب (Account Balance) برای ردیابی وجوه و تراکنشها استفاده میکنند. برای مثال، بیت کوین از مدل UTXO در این زمینه کمک میگیرد و اتریوم از روش موجودی حساب بهره میبرد.
بهوسیلهی مدل خروجی خرج نشده تراکنش در بیت کوین، تراکنشها به بخشهای مختلفی (ورودی و خروجی) تقسیم میشوند. ازاینطریق، تمام خروجیهای خرجنشده کاربران در کیف پولهایشان ذخیره خواهند شد. در عوض، اتریوم بر اساس رویکرد «حساب/موجودی» (Account/Balance) کار میکند. بر اساس این مدل، موجودی حساب باید بهاندازه مبلغ معامله باشد تا امکان خرج کردن آن فراهم شود.
بهطور کلی، اغلب توسعهدهندگان مدل خروجی خرجنشده تراکنش (unspent transaction output) را ایمنتر میدانند. در ضمن، UTXO، نسبت به روش موجودی حساب، به فضای ذخیرهسازی کمتری نیاز دارد که این مسئله باعث بهبود عملکرد شبکه بلاک چین میشود.
سخن پایانی
دنیای رمز ارزها پُر از رمزورازهایی است که اگر با آنها آشنا نباشید، احتمال دارد که در هنگام فعالیت با مشکل مواجه شوید. یکی از همین رویکردهای منحصربهفرد در فناوری بلاک چین، مربوط به مفهوم خروجی خرجنشده تراکنش (UTXO) است. مدل UTXO نهتنها به حسابرسی تراکنشها کمک میکند، بلکه بسیاری از مشکلات و محدودیتهای رایج بلاک چینها را برطرف میسازد. ازاینرو، در این مقاله، سعی کردیم که توضیحات کاملی را درباره خروجی خرج نشده تراکنش در بیت کوین و سایر شبکهها ارائه دهیم.