پلاسما و پلاسما کش (Plasma Cash) چیست؟

پلاسما (Plasma)، انتقال دارایی‌‌های درون زنجیره (On Chain) بلاک چین را به خارج از زنجیره (Off Chain) فراهم می‌‌کند. این الگو حجم اطلاعات ثبت شده در زنجیره اصلی یا‌‌ روت (root chain) را با آفلودینگ تراکنش‌‌ها در زنجیره‌‌های پلاسما کاهش می‌دهد و راه حلی برای رفع مشکل مقیاس پذیری بلاک چین ارائه می‌کند.

0 84

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

هر زنجیره پلاسما پیام‌‌های مربوط به ترتیب تراکنش‌‌ها را درون یک هش که در زنجیره اصلی ذخیره شده، فشرده می‌‌کند. بیت کوین و اتریوم نمونه‌‌هایی از زنجیره‌‌های اصلی هستند؛ بلاک چین‌‌‌‌هایی که امنیت بالاتری دارند و تضمین‌‌کننده‌‌ تمرکز زدایی هستند (امنیت و پویایی). در این پست، از اتریوم به عنوان زنجیره‌‌ اصلی برای تمام مثال‌‌هایمان استفاده کرده‌ایم.

دو شاخه‌‌ اصلی طراحی پلاسما Plasma MVP و Plasma Cash نام دارند. ابتدا چند مفهوم را بررسی می‌کنیم و سپس یک مرور ساده برای کاربر پیشرفته خواهیم داشت. پس از آن، به طور دقیق‌تر هر مولفه‌‌ را توضیح می‌دهیم.

قبل از شروع، لیست واژگان را مرور کنیم:

پلاسما و پلاسما کش (Plasma Cash) چیست؟

درخت مرکل sparse (تنک): یک درخت مرکل بی‌‌نقص با اندازه‌‌ی ثابت، درخت sparse نامیده می‌‌شود، زیرا بیشتر برگ‌‌های آن خالی هستند.

فرجام (finality) اقتصادی: چیزی که ضمانت می‌‌کند عملیات برگشت‌‌پذیر نیست

UTXO: مربوط به خروجی تراکنش‌‌های خرج نشده است. هر تراکنش باید ورودی‌‌هایی از یک مجموعه UTXO معتبر را داشته باشد. خروجی‌‌های هر تراکنش به بخشی از مجموعه جدید UTXO تبدیل می‌‌شوند. بیت کوین هم از مدل UTXO استفاده می‌‌کند.

خیلی خب، بیایید شروع کنیم.

1-اجرای قرارداد پلاسما بر روی مین نت

پلاسما و پلاسما کش (Plasma Cash) چیست؟

نهاد‌‌هایی مثل صرافی‌‌ها که می‌‌خواهند ظرفیت تراکنش بالا و تاخیر کمی داشته باشند (حتی یک فرجام اقتصادی آنی) از اجرای زنجیره‌‌ پلاسما و اجرای این عملیات سود خواهد برد. مالک یک قرارداد در شروع آن نقش دارد.

2-اپراتور پلاسما یک بلوک می‌‌سازد

پلاسما و پلاسما کش (Plasma Cash) چیست؟

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

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

3-کانیه، که یک کاربر جدید است، در قرارداد پلاسما ETH سپرده‌‌گذاری می‌‌کند و در ازای آن، به او PETH اختصاص داده می‌‌شود

پلاسما و پلاسما کش (Plasma Cash) چیست؟

در هر دو طراحی پلاسمای اصلی می‌‌توان هر توکنی را سپرده‌‌گذاری کرد و آن توکن را در زنجیره‌‌ی پلاسما دریافت نمود. در نتیجه اگر کانیه ETH سپرده‌‌گذاری کند، PETH دریافت خواهد کرد! اگر BTC سپرده‌‌گذاری کند، PBTC خواهد داشت. (اختصاص پلاسما کش به شکل بهتری از دارایی‌‌های ERC721، مانند کریپتوکیتیز، حمایت می‌‌کند اما همه‌‌ ویژگی های پلاسما هر نوع توکنی را حمایت نمی‌‌کنند).

4-کانیه به دونالد پول می‌‌فرستد، و دونالد هنوز وارد قرارداد هوشمند پلاسما نشده است

کانیه تنها به ارسال پول به اعضای فعلی شبکه پلاسما محدود نیست. او همچنین می‌‌تواند به دونالد که یک وال اتریوم است پول بفرستد.

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

پلاسما و پلاسما کش (Plasma Cash) چیست؟

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

5. دونالد دو گزینه پیش رو دارد: ادامه خرج کردن PETH یا ایجاد یک معامله خروج برای بازخرید ETH در زنجیره اصلی.

دونالد نیازی به ارسال پیام به اپراتور برای عضویت در قرارداد پلاسما به منظور تبدیل کردن PETH به ETH ندارد. دونالد می‌‌خواهد بلافاصله توکن‌‌هایش را ناشناس کند، در نتیجه او نمی‌‌خواهد به تراکنش PETH ادامه دهد. او برای اثبات مالکیت خود یک تاریخچه از توکن دریافت می‌‌کند و آن را به همراه درخواست خروج در قرارداد پلاسما قرار می‌‌دهد. تراکنش خروج او شامل کارمزد و اوراق قرضه به عنوان یک سپرده‌‌ی بهادار ضد کلاهبرداری (against lying) می‌‌شود. همه چیز بررسی می‌‌شود و کسی نمی‌‌تواند دونالد را به چالش بکشد، و او در زنجیره‌‌ی اصلی، PETHاش را در ازای ETH بازخرید می‌‌کند.

پلاسما و پلاسما کش (Plasma Cash) چیست؟

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

تراکنش‌‌ها

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

با این حال، اگر یک کوین چندین و چند بار معامله شود، تاریخچه‌‌ی کوین آن قدر بزرگ می‌‌شود که معامله‌‌ی آن امکان‌‌پذیر نخواهد بود. یک پیشنهاد برای حل این مشکل، چک پوینت (checkpoint) است. هنگامی که یک چک پوینت نهایی شود، کلاینت‌‌ها می‌‌توانند اثبات مورد نیاز را از آن چک پوینت به بعد انجام دهند. به این ترتیب اندازه اثبات ها به جای اینکه به طور خطی افزایش یابد، ثابت می‌‌ماند. چک پوینت های پلاسما کش بر پایه مجموع امضا‌‌های کریپتواکانمیک (cryptoeconomic) ساخته شده اند که تضمین می‌کند یک کوین تحت مالکیت شخص X در ارتفاع Y قرار دارد.

متاسفانه اگر بخواهیم واحدهای دلخواه کوچک از توکن‌‌ها را در پلاسما کش ارسال کنیم، کار بسیار سخت می‌‌شود (Plasma Debit یا کانال‌‌های حالت راه حل این مشکل هستند). وقتی تابع سپرده فراخوانی می‌‌شود، کاربر یک واحد برای چیزی که می‌‌خواهد سپرده‌‌گذاری کند اختصاص می‌‌دهد. با این که این ویژگی، پلاسما کش برای ارسال نوع غیر قابل تعویض ERC721 مناسب است، اما مدل Plasma MVP UTXO برای مدیریت واحدهای دلخواه مناسب‌‌تر است.

خروجی (Exit)

یک چالش خروج وقتی مطرح می‌‌شود که یک برداشت به این شکل باشد:

  1. خروج یک کوین ازقبل‌‌خرج‌‌شده
  2. خروج مجدد یک کوین
  3. خروج یک کوین با یک تاریخچه نامعتبر

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

اگر زنجیره پلاسما هک شود

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

اپراتورهای پلاسما

نقش اصلی اپراتور پلاسما جمع‌‌آوری تراکنش‌‌ها در بلوک‌‌ها و انتشار یک ریشه مرکل برای هر بلوک پلاسما در زنجیره اصلی است.

در طراحی‌‌های پیچیده‌‌تر، می‌‌توان تاییدکنندگان اثبات سهام را جایگزین اپراتور مرکزی کرده و نگرانی‌‌های پیرامون سانسور شدن تراکنش‌‌ها را از بین برد. با این حال داشتن یک اپراتور مرکزی مزایای بسیاری دارد:

  • فرجام اقتصادی آنی: از آن جایی که اپراتور کسی است که بلوک‌‌ها را می‌‌سازد، می‌‌تواند ضمانتی برای ترتیب و شمول تراکنش‌‌ها ارائه دهد. اپراتور یک قرارداد برای مقابله با تقلب ایجاد می‌کند، در نتیجه کاربران بلافاصله متوجه آن خواهند شد.
  • جریمه خروج نامعتبر: می‌‌توانیم اپراتوری که به خروج‌‌های نامعتبر اجازه‌‌ی اجرا بدهد را مجازات کنیم و اعتبار اوراق بهادار او را کاهش دهیم.
  • اعتباردهی کسپر (Casper): اپراتور می‌‌تواند یک اعتباردهنده اثبات سهام کسپر باشد که در اوراق بهادار سهم دارد.

انواع پلاسما:

پلاسما و پلاسما کش (Plasma Cash) چیست؟

منبع

شاید از این مطالب هم خوشتان بیاید.

ارسال پاسخ

آدرس ایمیل شما منتشر نخواهد شد.