تحلیل مختصری از RGB: یک پروتکل قرارداد هوشمند مقیاسپذیر و محرمانه ساخته شده بر پایه بیتکوین
پیشزمینه
عملکرد بیتکوین از زمان راهاندازی این ارز رمزنگاری شده در سال ۲۰۰۹ به دقت زیر نظر بوده است. از آنجایی که این شبکه تنها میتواند هفت تراکنش در ثانیه را پردازش کند، امکان قراردادهای هوشمند مقیاسپذیر را فراهم نمیکند. ارتقای SegWit محدودیت اندازه بلوک بیتکوین را به ۴ مگابایت افزایش داد (۱ مگابایت برای دادههای تراکنش و ۳ مگابایت برای دادههای شاهد)؛ با این حال، محدودیت همچنان پابرجاست. در همین حال، با افزایش نفوذ بیتکوین، چالش مقیاسپذیری حادتر شده است. مقیاسپذیری همچنان یک چالش اساسی در اکوسیستم بیتکوین است. امروزه، متخصصان در حال بررسی راهحلهایی با رویکردهای مختلف هستند که عمدتاً شامل موارد زیر میشود:
- زنجیرههای جانبی از جمله Liquid، Stacks، Rootstock و غیره؛
- کانالهای حالت مانند شبکه Lightning که برخی تراکنشهای بسیار مکرر را خارج از زنجیره پردازش میکنند؛
- راهحلهای مقیاسپذیری غیرقابل ارتقا مانند RGB و Bitcoin Script که کد بیتکوین را تغییر نمیدهند؛
- راهحلهای مقیاسپذیری مبتنی بر ارتقا از جمله Drivechain (BIP300/301) که نیاز به حمایت قوی ماینرها دارند و از طریق انشعابهای سخت به مقیاسپذیری دست مییابند.
از میان رویکردهای مختلف، برخی از راهحلهای اولیه مقیاسپذیری مجدداً مورد توجه قرار گرفتهاند. به طور قابل توجهی، Nostr، پروتکلی که در اواخر سال ۲۰۲۲ محبوب شد، به پذیرش گسترده شبکه Lightning کمک کرد. در همین حال، Ordinals در اوایل سال ۲۰۲۳ رونق گرفت. به عنوان یک راهحل قرارداد هوشمند مبتنی بر بیتکوین و شبکه Lightning که کامل بودن تورینگ، مقیاسپذیری و حفاظت قوی از حریم خصوصی را ارائه میدهد، RGB نسخه جدیدی (v0.10) را در آوریل منتشر کرد.
تکامل RGB
منشأ RGB را میتوان به سال ۲۰۱۶ ردیابی کرد، زمانی که پیتر تاد مفهوم مهر تکاستفاده و اعتبارسنجی سمت مشتری را معرفی کرد. بر اساس این مفاهیم حیاتی، RGB در سال ۲۰۱۸ پیشنهاد شد.
در سال ۲۰۱۹، اورلوفسکی، یکی از توسعهدهندگان اصلی RGB، توسعه RGB را هدایت کرد و بسیاری از اجزایی را که در نهایت پروتکل RGB را تشکیل میدهند، ایجاد کرد. علاوه بر این، تأسیس انجمن LNP/BP در سوئیس به ارائه استانداردهای مربوطه کمک کرد.
پس از تلاشهای گسترده توسعه، RGB نسخه v0.10 خود را در آوریل ۲۰۲۳ منتشر کرد.
درباره طراحی RGB
این نحوه دستیابی RGB به مقیاسپذیری و محرمانگی است:

اعتبارسنجی سمت مشتری
اکثر بلاکچینهای عمومی موجود تحت یک مدل اجماع جهانی عمل میکنند، که در آن تمام گرهها تمام تراکنشها را اعتبارسنجی میکنند، اطلاعات تراکنش را با یکدیگر به اشتراک میگذارند و یک وضعیت جهانی یکپارچه را حفظ میکنند.
با این حال، این مدل چندین چالش را به همراه دارد، از جمله:
- محدودیتهای مقیاسپذیری که اعتبارسنجی تمام تعاملات قرارداد را پرهزینه میکند؛
- هزینههای بالا که منجر به عملیات متمرکز گره میشود؛
- فقدان حریم خصوصی به دلیل اطلاعات باز تراکنش.
اعتبارسنجی سمت مشتری (CSV) رویکردی جایگزین را پیشنهاد میکند: این روش تنها نیاز دارد که لایه اجماع تعهدات رمزنگاری مرتبط با رویدادهای دفتر کل را برآورده کند، در حالی که اطلاعات واقعی رویداد (دفتر کل) را خارج از بلاکچین ذخیره میکند. این رویکرد، که از کار پیتر تاد نشأت میگیرد، "اعتبارسنجی سمت مشتری" نامیده میشود. CSV دادههای تراکنش را خارج از زنجیره منتقل میکند، جایی که اطلاعات دقیق ذخیره و تأیید میشود و تنها حداقل اطلاعات در بلاکچین ثبت میشود. علاوه بر این، دادههای تراکنش فقط بین فرستنده و گیرنده خارج از زنجیره منتقل میشود. به عنوان مثال، در یک تراکنش دنیای واقعی، اعتبارسنجی تنها زمانی لازم است که کیف پول و طرفین درخواست دسترسی به دادههای قرارداد را داشته باشند.
ویژگیهای کلیدی CSV:
- اطلاعات دقیق تراکنش خارج از زنجیره ذخیره میشود و فقط در سمت مشتری اعتبارسنجی میشود؛
- فقط تعهدات به دادههای تراکنش در زنجیره ذخیره میشود؛
- اعتبارسنجی فقط برای تراکنشهایی اعمال میشود که کاربران باید از آنها آگاه باشند.
در RGB، مکانیسم اعتبارسنجی برای انتقال دارایی به طور قابل توجهی با بیتکوین متفاوت است. در شبکه بیتکوین، گرهها همیشه در حال دانلود و اعتبارسنجی بلوکها و تراکنشهای مخزن حافظه هستند، که به آنها اجازه میدهد آخرین وضعیت مجموعه UTXO را به دست آورند. هنگام مواجهه با یک تراکنش جدید، اعتبارسنجهای بیتکوین اعتبار تاریخچه آن را با بررسی وجود تمام ورودیها در جدیدترین مجموعه UTXO بررسی میکنند.
از سوی دیگر، RGB به پخش جهانی همه تراکنشها برای ایجاد معادلی از مجموعه UTXO بیتکوین متکی نیست. این بدان معناست که هنگام دریافت یک پرداخت ورودی، یک کلاینت RGB نه تنها باید تأیید کند که آخرین انتقال وضعیت معتبر است، بلکه باید همین اعتبارسنجی را برای تمام انتقالهای وضعیت قبلی تا وضعیت اولیه در قرارداد صدور انجام دهد. این اعتبارسنجی از پایین به بالای تاریخچه تراکنش در RGB همچنین در برابر حملات خرج دوباره محافظت میکند.
RGB با اعتبارسنجی فقط تراکنشهای مرتبط، مقیاسپذیری را بهبود میبخشد. با این حال، این رویکرد ممکن است منجر به مشکلات مرتبط با دسترسی ضعیف به دادهها شود، که ممکن است برای بهینهسازی اعتبارسنجی پرداخت به اشتراکگذاری دادهها نیاز داشته باشد.

مهر و مومهای یکبار مصرف مبتنی بر بیتکوین
مهر و مومهای فیزیکی یکبار مصرف، بستهای پلاستیکی با شماره منحصر به فرد هستند که معمولاً برای تشخیص دستکاری در طول ذخیرهسازی و حمل و نقل استفاده میشوند. به عنوان مثال، به ما اجازه میدهد بدانیم آیا درب یک کانتینر حمل و نقل در طول حمل باز شده است یا خیر. مهر و مومهای دیجیتالی یکبار مصرف یک مهر دیجیتالی را روی یک پیام میبندند تا اطمینان حاصل شود که فقط یک بار میتواند استفاده شود، که فروش مجدد همان دارایی توسط فروشندگان را غیرممکن میسازد.
به جای استفاده از یک نهاد مورد اعتماد برای تأیید باز و بسته شدن مهر و مومهای دیجیتالی، میتوان از خروجیهای تراکنش مصرف نشده (UTXO) بیتکوین به عنوان مهر و موم استفاده کرد. یک UTXO را میتوان به عنوان مهر و مومی دید که هنگام ایجاد بسته میشود و هنگام خرج شدن باز میشود. با توجه به قوانین اجماع بیتکوین، یک خروجی فقط یک بار میتواند خرج شود؛ بنابراین، مهر و موم فقط یک بار میتواند باز شود. به این ترتیب، مهر و مومهای یکبار مصرف برای ارتباط UTXOهای بیتکوین با وضعیتهای قرارداد خارج از زنجیره استفاده میشوند، که اجرای انتقال وضعیت بعدی را از طریق معاملات RGB خارج از زنجیره (بستن مهر و موم) امکانپذیر میکند. مشابه مهر و مومهای فیزیکی یکبار مصرف که برای ایمنسازی کانتینرهای حمل و نقل استفاده میشوند، یک مهر و موم دیجیتالی یکبار مصرف یک شیء منحصر به فرد است که به طور دقیق یک قطعه اطلاعات را مهر و موم میکند تا از خرج دوباره جلوگیری کند.
در اینجا یک تشبیه ساده آورده شده است: میتوانیم UTXOها را به عنوان مجموعهای از چکها در نظر بگیریم که هر کدام مبلغ متفاوتی دارند. هنگام پرداخت، شما در واقع با یک چک نقد نشده به کسی پرداخت میکنید. علاوه بر این، هر ماندهای که از چک باقی بماند، به صورت یک چک جدید به شما برمیگردد. در این سناریو، مهر و مومهای یکبار مصرف، سوابق انتقال خاصی را به جعبه اطلاعات اضافی چک اضافه میکنند. از آنجایی که یک چک فقط یک بار قابل نقد شدن است، این رویکرد از خرج دوباره جلوگیری میکند.
بیایید ببینیم این فرآیند بین آلیس، باب و دیو چگونه کار میکند:
- در ابتدا، آلیس یک دارایی RGB (مثلاً تتر USDT یا USDT) با عرضه کل 100 میلیون صادر کرده و اطلاعات تعهد را در جعبه اطلاعات اضافی یک چک معتبر (چک A) اضافه کرده است. چاپگر چک نیازی به در نظر گرفتن این اطلاعات اضافی ندارد و چک A میتواند هر مبلغی داشته باشد، به شرطی که متعلق به آلیس باشد و هنوز نقد نشده باشد.
- وقتی آلیس میخواهد 10 میلیون USDT به باب منتقل کند، او باید چک A را نقد کند و در جعبه اطلاعات اضافی مشخص کند که 10 میلیون USDT به یک چک جدید (چک B) متعلق به باب منتقل میشود و 90 میلیون USDT به یک چک جدید دیگر (چک C) متعلق به آلیس منتقل میشود که حاوی 90 میلیون USDT باقیمانده است.
- اگر باب بخواهد 10 میلیون USDT به دیو منتقل کند، او باید چک B را نقد کند و در جعبه اطلاعات اضافی ذکر کند که 10 میلیون USDT به یک چک جدید (چک D) متعلق به دیو منتقل میشود.
- همین فرآیند برای هر انتقال بعدی تکرار میشود. به طور دقیقتر، دارنده قبلی بخشی از مبلغ را به گیرنده جدید تأیید میکند و گیرنده سپس کل تاریخچه انتقالهای دارایی را تأیید میکند. مشابه چکهای در گردش، هر انتقال یک چک جدید ایجاد میکند و هر چک فقط یک بار قابل نقد شدن است (UTXO). در همین حال، چکهای قدیمی (UTXOها) نامعتبر میشوند و اطمینان حاصل میشود که وضعیت فقط میتواند به جلو حرکت کند و نه به عقب، که این امر نیز از خرج دوباره جلوگیری میکند. به این ترتیب، سوابق روی زنجیره به طور قابل اعتمادی تغییرات وضعیت یک دارایی رمزنگاری شده را منعکس میکنند.

RGB از مدل مهر و موم تک استفاده مبتنی بر بیت کوین که در بالا توضیح داده شد استفاده می کند، به این معنی که وقتی یک تراکنش RGB رخ می دهد، فرستنده یک انتقال وضعیت از قرارداد تعریف کننده حقوق منتقل شده ایجاد می کند. بیایید مورد توکن ها را در نظر بگیریم. ابتدا، صادر کننده یک قرارداد وضعیت اولیه را تعیین می کند که جزئیات قرارداد مانند نام دارایی، عرضه کل و UTXO با حق جابجایی عرضه را تعریف می کند. سپس، هنگامی که دارایی ها برای اولین بار منتقل می شوند، مالک اولین UTXO می تواند یک انتقال وضعیت ایجاد کند که تعیین می کند کدام UTXO جدید اکنون مالک دارایی خواهد بود. RGB با استفاده از مکانیسمی که UTXO ها فقط یک بار می توانند خرج شوند، انتقال وضعیت را انجام می دهد، که به آن امکان می دهد به طور قابل اعتماد انتقال دارایی های رمزنگاری شده و تغییرات در حقوق مالکیت را تعریف و ردیابی کند.
RGB تمام اطلاعات تراکنش را خارج از شبکه بیت کوین نگه می دارد و آنها را منحصراً بین فرستندگان و گیرندگان منتقل می کند. در همین حال، داده های تعهد به UTXO های بیت کوین لنگر می اندازند. هنگامی که یک UTXO خرج می شود، دیگر نمی تواند به همان روش دوباره خرج شود، که نشان دهنده تغییر در قرارداد است.

RGB از بلاکچین بیت کوین برای محافظت در برابر خرج دوباره استفاده می کند، و این کار با تعهد هر انتقال وضعیت RGB در داخل تراکنش بیت کوین که UTXO مالک حقوق در حال انتقال را خرج می کند، انجام می شود. چندین انتقال وضعیت می تواند در یک تراکنش بیت کوین گنجانده شود، اما هر انتقال وضعیت فقط یک بار می تواند ارسال شود (در غیر این صورت خرج دوباره امکان پذیر خواهد بود). برای امکان داشتن چندین انتقال وضعیت در یک تعهد، انتقال های وضعیت چندین بار تجمیع می شوند و سپس از طریق Taproot یا OP_RETURN به تراکنش بیت کوین ارسال می شوند. اگر چندین تعهد در یک تراکنش بیت کوین وجود داشته باشد، تنها اولین مورد برای قوانین اعتبارسنجی RGB مرتبط خواهد بود و بقیه نادیده گرفته می شوند، که هر تلاشی برای خرج دوباره را بی فایده می کند. ویژگی های کلیدی RGB
مقیاسپذیری
- در مقایسه با پروتکلهای جایگزین که تمام منطق را روی زنجیره نگه میدارند، CSV دادهها را خارج از زنجیره نگه میدارد و هزینهها و فشار محاسباتی را کاهش میدهد؛
- RGB بدون نیاز به تغییر کد یا تراکنشهای پیچیده روی زنجیره، به راحتی در بیتکوین در دسترس است؛
- RGB از شبکه لایتنینگ پشتیبانی میکند.
حریم خصوصی
- اشخاص ثالث نمیتوانند تراکنشهای RGB یا مهر و مومهای تک استفاده آن را مشاهده کنند؛
- RGB دارای UTXOهای کور است. یک UTXO کور شامل هش الحاق بین UTXO و یک راز کور کننده تصادفی است. به این ترتیب، فرستنده نمیداند داراییها به کجا رفتهاند و گیرنده جدید فقط زمانی میتواند UTXO کور را تأیید کند که دارایی را خرج کند؛
- RGB همچنین از یک مکانیسم دانش صفر به نام Bulletproof استفاده میکند. تحت این مکانیسم، مالکان دارایی قادر خواهند بود تمام UTXOهایی را که قبلاً مالک یک دارایی بودهاند ببینند، اما نمیتوانند مقدار دارایی منتقل شده در هر انتقال وضعیت را ببینند.
کاربردها و موارد استفاده متنوع RGB
طرحوارهها
صادرکنندگان میتوانند از طرحوارههای RGB استفاده کنند که به عنوان الگوهای قراردادهایی عمل میکنند که میتوانند برای موارد استفاده خاص هدف قرار گیرند.
در اینجا چند مثال آورده شده است:
- انتشار داراییهای قابل تعویض RGB20
- انتشار داراییهای غیرقابل تعویض RGB21
- هویتهای دیجیتال غیرمتمرکز RGB22
- گزارش تاریخچه منحصر به فرد قابل تأیید برای دادههای قابل حسابرسی RGB23
- سیستم نام دامنه جهانی غیرمتمرکز RGB24
- انتشار داراییهای کلکسیونی RGB25
هر کسی آزاد است بدون نیاز به اجازه از توسعهدهندگان RGB، طرحواره خود را برای کاربردهای مختلف توسعه دهد. با این حال، انتظار میرود که بیشتر موارد استفاده با چند طرحواره اصلی پوشش داده شوند.
AluVM
RGB از AluVM، یک ماشین مجازی RISC مبتنی بر رجیستر که به طور ویژه طراحی شده است، استفاده میکند. AluVM کامل تورینگ است و میتواند وضعیت جهانی را با همان تضمینهای دسترسی سیستمهای مبتنی بر بلاکچین موجود اداره کند. مشابه EVM، AluVM دارای معماری است که یک گره RGB را بر روی شبکه لایتنینگ قرار میدهد و یک کلاینت RGB را در گرههای RGB جای میدهد.
کاملاً سازگار با شبکه لایتنینگ
با اتصال کانالهای پرداخت توکنهای خاص به شبکه لایتنینگ، داراییهای RGB میتوانند همان تجربه کاربری و فرضیات امنیتی را مانند پرداختهای معمولی شبکه لایتنینگ ارائه دهند. این امر پرداختهای کم هزینه، سریع و پایدار را تضمین میکند و ممکن است به کل اکوسیستم، از جمله کاربران، توسعهدهندگان و اپراتورهای گره لایتنینگ سود برساند.
مقایسه با راه حلهای دیگر
RGB در مقابل TARO
TARO (اکنون داراییهای Taproot)، یک پروتکل Taro پشتیبانی شده توسط Taproot، در آوریل 2022 توسط Lightning Labs پس از جذب 70 میلیون دلار در دور سرمایهگذاری سری B معرفی شد.
هر دو RGB و TARO بر روی CSV ساخته شدهاند. از آنجا که این دو طراحیهای مشابهی دارند، برخی حتی استدلال میکنند که TARO از RGB الهام گرفته است. با این حال، اکنون به نظر میرسد که آنها بر جنبههای مختلفی تمرکز دارند: TARO بر توکنها تمرکز میکند، در حالی که RGB هدف اجرای توابع قرارداد هوشمند را دارد.
مقایسه با سایر راه حلهای بیتکوین
برخلاف Drivechain که بر اساس BIP300 و BIP301 است و نیاز به فورکهای سخت دارد، RGB با فناوری موجود بیتکوین و فورکهای نرم احتمالی آینده سازگار است، بدون نیاز به تغییرات در لایه پایه بیتکوین.
Ordinals تمام دادهها را در بلاکچین ثبت میکند، در حالی که RGB فقط تعهدات داده را در زنجیره نگه میدارد. با توجه به امنیت ارائه شده توسط UTXOها، RGB فضای حداقلی را در زنجیره مصرف میکند و ادغام بیدرنگ با شبکه لایتنینگ را امکانپذیر میسازد.
RGB در مقابل Rollup
Rollup یک راه حل مقیاسپذیری اتریوم است که به کاربران امکان میدهد وجوه را در قراردادهای هوشمند اتریوم سپردهگذاری کنند و سپس با سایر کاربران در همان Rollup تراکنش انجام دهند. این تراکنشها به طور دورهای جمعآوری شده و به بلاکچین ارسال میشوند.

- علاوه بر این، RGB یک بلاک چین مستقل نیست. چالشها: اکوسیستم RGB هنوز در مراحل اولیه خود قرار دارد. اگرچه زیرساختها در حال حاضر موجود هستند، این اکوسیستم تنها تعداد محدودی از برنامههای کاربردی پایه را ارائه میدهد و ممکن است مدتی طول بکشد تا RGB ابزارهای توسعهدهندگان و پایگاه کاربری خود را گسترش دهد.
- کلاینتهای RGB دادههای عظیمی را ذخیره میکنند و اگر دادههای خارج از زنجیره برای اعتبارسنجی از دست برود، هزینه کردن غیرممکن خواهد بود. بنابراین، فقط کلید نیست که باید ذخیره شود. علاوه بر این، برخلاف بیتکوین و سایر سیستمهای اجماع جهانی، کلاینتهای RGB نیازی به دیدن یا اعتبارسنجی تمام تراکنشها در سطح جهانی ندارند. در عوض، آنها فقط باید تراکنشهایی را که مربوط به کیف پولهایشان است اعتبارسنجی کنند. این امر به طور قابل توجهی حجم دادهای را که هر کلاینت باید اعتبارسنجی کند کاهش میدهد و کل سیستم را مقیاسپذیرتر میکند. اگرچه اعتبارسنجی دادههای عظیم هنگام دریافت پرداختها ممکن است مشکلساز به نظر برسد، زیرا اعتبارسنجی کند به معنای تراکنشهای کند است، این مسئله فقط زمانی مشکلساز میشود که تاریخچه تراکنش طولانی باشد. در چنین مواردی، لایههای جدید دسترسی به دادهها مورد نیاز خواهند بود که به کلاینتها اجازه میدهد داوطلبانه دادههای انتقال وضعیت قراردادهای خاص را به اشتراک بگذارند. به این ترتیب، دریافتکنندگان آینده میتوانند از قبل شروع به اعتبارسنجی بخشی از تاریخچه تراکنش کنند.
- برای توکنهای CSV محبوب، پذیرش گسترده ممکن است هزینه اعتبارسنجی را افزایش دهد.
- RGB یک توسعه مبتنی بر جامعه است و به تحقیقات دقیق تیم متکی است، که به معنای پیشرفت کند و تبلیغات بازار محدود است.
منحنی یادگیری توسعهدهندگان: علاوه بر دانش بیتکوین، توسعهدهندگان همچنین باید در مورد انتقالهای وضعیت و قراردادهای RGB اطلاعات کسب کنند.
پروژههای اکوسیستم
DIBA
وبسایت: https://diba.io/
DIBA یک بازار (ان اف تی)NFT بیتکوین است که از پروتکل قرارداد هوشمند RGB استفاده میکند.
Cosminmart
وبسایت: https://www.cosminmart.com/
کوزمینمارت یک اکوسیستم مبتنی بر پروتکل RGB است و عملکردهایی از جمله کیف پول، بازار، لانچپد و مرورگر را ارائه میدهد.
مایسیتادل
وبسایت: https://mycitadel.io/
مایسیتادل دارای طیف گستردهای از عملکردها، از جمله امضای چندگانه، شرایط خرج کردن زمانبندی شده، تاپروت و غیره است.
بیتماسک
وبسایت: https://bitmask.app/
بیتماسک یک افزونه کیف پول است.
درباره کویناکس
کویناکس که در سال 2017 تأسیس شده است، یک صرافی ارز دیجیتال جهانی است که متعهد به آسانتر کردن معاملات ارزهای دیجیتال است. این پلتفرم طیف وسیعی از خدمات، از جمله معاملات نقدی و مارجین، معاملات آتی، سواپ، بازارساز خودکار (AMM حساب)، و خدمات مدیریت مالی را برای بیش از 5 میلیون کاربر در بیش از 200 کشور و منطقه ارائه میدهد. کویناکس که با هدف اولیه ایجاد یک محیط ارز دیجیتال برابر و محترمانه تأسیس شده است، متعهد به از بین بردن موانع مالی سنتی با ارائه محصولات و خدمات آسان برای استفاده است تا معاملات ارزهای دیجیتال را برای همه در دسترس قرار دهد.
منابع
https://hackernoon.com/top-4-directions-of-bitcoin-ecosystem-scalability
https://docs.rgb.info/
https://github.com/RGB-WG/blackpaper/blob/master/README.md
https://docs.lightning.engineering/the-lightning-network/taproot-assets
https://docsend.com/view/he8x9erkjmphphvn