Ark یک پروتکل لایه 2 بیت کوین جدید است که توسط Burak معرفی شده است. این پروتکل فرصتهای هیجان انگیزی را ایجاد و به طور همزمان چندین چالش موجود در پرداختهای بیت کوین مانند مقیاسپذیری، ردپای درون زنجیره و حفظ حریم خصوصی را برطرف میکند. Ark پرداختهای خصوصی و بدون نیاز به اتکا به سازمانهای ثالث را امکان پذیر میکند و با شبکه لایتنینگ (Lightning) تعاملپذیر است.
لایتنینگ (LN) پرداختهای ارزان، فوری و p2p را امکانپذیر میکند. با این حال، تراکنشهای LN در مقیاس بزرگ با چالشهای خاصی روبرو هستند. Ark دقیقاً تلاش میکند تا این شکاف را پر کند و مکمل این شبکه باشد. اجازه دهید ابتدا این چالشهای LN را مرور کنیم و سپس به Ark بپردازیم.
چالشهای لایتنینگ
اگر سعی کرده باشید به کاربران جدید نحوه پرداختهای لایتنینگ را آموزش دهید، ممکن است متوجه شده باشید که بیشتر مردم میخواهند ارزان، سریع و با حداقل تنظیمات کار کنند. لایتنینگ فعلی نیاز به تنظیمات کانال تعاملی دارد. کاربران نیاز به باز کردن و حفظ کانالها دارند و فرایند آن آنطور که باید آسان نیست. بنابراین، راهحلهای LN که این پیچیدگیها را از بین میبرند، بسیار محبوب شدهاند. حداقل سه موضوع باعث کاهش سرعت پذیرش لایتنینگ در وضعیت فعلی شده است:
1– مدیریت کانال و تعادل مجدد نقدینگی: در LN شما نمیتوانید بدون نقدینگی ورودی مبلغی دریافت کنید و بنابراین برای حفظ گره خود در شرایط قابل استفاده باید دائماً نقدینگی را متعادل کنید. شما باید نقدینگی را قفل کنید و اطمینان حاصل کنید که همه افراد در مسیر پرداخت، نقدینگی کافی برای تحقق آن را قفل کردهاند. علاوه بر این، کاربرد این نقدینگی قفل شده کم است: نقدینگی همیشه قفل و آماده باقی میماند در حالی که کاربر ممکن است فقط چند تراکنش در روز انجام دهد، یعنی هزینه ثابت برای استفاده موردی. علاوه بر این، برای بهبود نرخ موفقیت پرداخت، ما به نقدینگی فراوان در تمام کانالهای یک مسیر پرداخت نیاز داریم، و این به ناچار منجر به کاهش استفاده خواهد شد.
دریافت وجوه از طریق شبکه لایتنینگ بدون وجود نقدینگی اولیه به معنای واقعی کلمه امکان پذیر نیست. این یکی از محدودیتهای اصلی خود پروتکل است. آیا میخواهیم این مشکل را در سطح خود پروتکل حل کنیم، زیرا محدودیت کنونی در آن وجود دارد، یا میخواهیم برای انجام این کار به خدمات و بازارهای متمرکز تکیه کنیم؟ – شینوبی، 2022 در مجله بیت کوین
2- ردپای درون زنجیره: در وضعیت فعلی پروتکل لایتنینگ، هر کاربر به کانال خود نیاز دارد که خود نیازمند تراکنش درون زنجیره است. اگر بخواهیم 1 میلیارد نفر را به پروتکل وارد کنیم، به 1 میلیارد تراکنش درون زنجیرهای نیاز داریم که ممکن است سالها طول بکشد. همچنین هزینهی آن بسیار زیاد خواهد بود.
3- دریافت آفلاین: در LN اگر آفلاین باشید نمیتوانید وجهی دریافت کنید.
بنابراین به وضوح، مواردی برای بهبود وجود دارد و اقداماتی برای رسیدگی به آنها در حال انجام است. Ark یکی از این اقدامات است که هدف آن ارائه تجربه کاربری بهتر با کاهش اصطکاک سمت کاربر تراکنشها است.
Ark: پروتکل لایه 2 جدید
Ark یک پروتکل بیت کوین لایه 2 است که پرداختهای غیر امانی، ارزان، مقیاس پذیر و خصوصی را با حداقل ردپای روی زنجیره و coinjoinهای خودکار فراهم میکند و در نتیجه چندین مشکل به طور همزمان حل میشوند.
Ark یک راه حل لایه دوم است که برای کمک به مقیاسپذیری تراکنشهای بیت کوین با استفاده از یک مدل UTXO مشترک طراحی شده است که پرداختهای ناشناس و خارج از زنجیره را از طریق یک واسطه به نام ارائه دهنده خدمات آرک (ASP) امکان پذیر میکند. ASP ها سرورهای همیشه روشنی هستند که نقدینگی را به شبکه ارائه میکنند. Ark یک شبکه نقدینگی مشابه لایتنینگ است اما بدون ایجاد محدودیت نقدینگی یا پیوند مستقیم بین فرستنده و گیرنده عمل میکند. این پروتکل از UTXOهای مجازی برای فعال کردن پرداختهای ناشناس، مقیاس پذیر و خارج از زنجیره استفاده میکند. ASPها نقدینگی را در اختیار شبکه قرار میدهند و برای خدمات خود هزینه دریافت میکنند. – بوراک
Ark چگونه پرداخت ها را بهبود میبخشد؟
با استفاده از Ark کاربران مستقیماً با یک هماهنگ کننده مرکزی یعنی ارائه دهنده خدمات Ark یا ASP کار میکنند. ASP نقدینگی زیادی تولید میکند و در مقایسه با ارائه دهنده خدمات لایتنینگ کار بسیار پیچیدهتری دارد اما کاربر تجربه کاربری بهتری خواهد داشت. تمام بار مدیریت نقدینگی به ASP واگذار میشود و تراکنشهای کاربر مانند تراکنشهای درون زنجیرهای به نظر میرسد. پرداختها از طریق مدل اشتراکی-UTXO ارزان و از طریق coinjoin به صورت خصوصی انجام میشوند. Ark ممکن است حجم عظیمی از نقدینگی را قفل کند، اما بهتر از آن است که نقدینگی را در کانالهای جداگانه قفل کنیم و در نتیجه آن را در جایی که در نهایت لازم است در دسترس نداشته باشیم. با این حال، پرداختها ممکن است چند ثانیه طول بکشد زیرا ASP باید دورهای coinjoin را هماهنگ و تراکنش ها را جمع کند.
Ark برای دستیابی به این ویژگی ها چگونه عمل می کند؟
فعالیت Ark به صورت ساده
در این بخش سعی خواهیم کرد یک مدل ساده از نحوه عملکرد Ark ارائه کنیم و از پیچیدگیهای آن بپرهیزیم. در پرداخت Ark کاربر ابتدا ملزم میگردد تا به یک ارائهدهنده خدمات Ark (ASP) متصل شود و سکههای خود (UTXO) را به سکههای مجازی (vTXOs) تبدیل کند که ضمانتهای بیتکوین خارج از زنجیره و trustless هستند. این فرآیند ” lifting” نامیده میشود. تبدیل بیتکوین درون زنجیرهای به ضمانتهای بیتکوین خارج از زنجیره، از نظر مفهومی مشابه آنچه در شبکه لایتنینگ اتفاق میافتد، است. صاحبان vTXO ها میتوانند به صورت یک طرفه از Ark خارج شده و vTXOهای خود را در زنجیره خود برای دریافت UTXO ارائه دهند. برای روشن شدن مکانیسم، فرض کنیم آلیس میخواهد وجهی را به باب پرداخت کند:
الف. lifting: اولین قدم این است که آلیس سکههای خود را lift کند. این یک مبادله اتمی است که در آن او UTXO (+ هزینهها) را پرداخت میکند تا همزمان یک vTXO از ASP دریافت کند. ASP تراکنش ویژهای به نام تراکنش استخر (Pool TX) انجام میدهد که در آن UTXOهای بسیاری از کاربران مخلوط شده و یک UTXO مشترک و همچنین بسیاری از vTXO های خارج از زنجیره برای هر یک از آن کاربران از جمله یکی برای آلیس ایجاد میشود.
ب. پرداخت: آلیس سپس به ASP دستور میدهد تا vTXO او را بگیرد و به باب پرداخت کند. او فقط باید آدرس باب را بداند. این پرداخت نیز اتمی و خصوصی است. ASP نمیداند کدام vTXO متعلق به کدام کاربر است و آنها را مخلوط میکند تا مجموعه vTXO ناشناس دیگری تولید کند. نکته جالب توجه در Ark این است که vTXOهای پس از میکس را فقط گیرندگان مورد نظر میتوانند دریافت کنند، اما ASP هیچ اطلاعی از مالک آنها ندارد. به عبارت دیگر، ASP به سادگی در حال هماهنگ کردن دورهای coinjoin به صورت کور است. باب برای دریافت وجوه لازم نیست آنلاین باشد، میتواند در هر زمان آنها را مطالبه، به دیگران ارسال یا به صورت درون زنجیرهای منتقل کند.
پشت صحنه
بیایید روند پرداخت در Ark را مرحله به مرحله مرور کنیم. آلیس میخواهد وارد Ark شود و وجهی را برای باب بفرستد.
1- ثبت نام: آلیس یک کیف پول Ark را نصب میکند و یک کلید عمومی به دست میآورد. سپس، او یک ASP را از بین چندین ASP موجود برای پردازش پرداختهای خود انتخاب میکند.
2- تامین مالی: سپس آلیس باید کیف پول را پر کند. او UTXOهای درون زنجیرهای خود را lift و آنها را به Ark منتقل میکند:
2-1- ASP چندین مورد از این درخواستهای lift را دریافت و یک تراکنش Pool (PoolTX1) ایجاد میکند. تراکنش استخر، UTXOهای کاربران را در یک UTXO که مشترکاً متعلق به ASP و کاربران است، جمع میکند. ردپای روی زنجیره یک UTXO منفرد است. ASP بسیاری از این تراکنشهای استخر را به صورت دورهای انجام میدهد (مثلاً هر 5 ثانیه)، و آلیس به تراکنشهای آینده ملحق خواهد شد. بنابراین، ASPها در حین پردازش تراکنشها، یک ردپای ثابت در زنجیره باقی میگذارند.
معامله استخر اتمی است. ASP یک PSBT ایجاد میکند، که در آن ورودی کاربر برای lift گنجانده میشود. کاربران این PSBT را به هر ترتیبی امضا میکنند و در نهایت ASP نیز آن را امضا میکند. تنها دو نتیجه ممکن وجود دارد: یا کاربران vTXOهای خود را دریافت یا ورودیهای اصلی خود را حفظ میکنند. هنگامی که کاربر تراکنش را امضا میکند، امضا فقط برای خروجیهای دقیق ارائه شده به آنها معتبر است. اگر چیزی تغییر کند، ASP باید از همه امضاهای جدید بگیرد. که نیاز به یک فرآیند هماهنگی کارآمد دارد که می تواند با مسائلی مانند حملات DOS، پاسخهای کند کاربر به دلیل مشکلات اتصال با Tor و شبکههای تلفن همراه دچار مشکل شود. ما هنوز به راه حل مشخصی برای این موضوع نرسیدهایم.
2-2- چگونه Ark مالکیت مشترک یک UTXO درون زنجیرهای را فعال میکند؟ هر کاربر یک UTXO مجازی یا یک vTXO دریافت میکند. vTXO ها خارج از زنجیره باقی میمانند و شبیه به “تراکنشهای تایید نشده امضا شده” هستند که میتوانند در زنجیره نمایان شوند و در هر زمانی که کاربر به هر دلیلی تصمیم به خروج از Ark داشته باشد، میتواند آنها را بازخرید کند. بنابراین کاربر کنترل کامل وجوه خود را دارد و حتی اگر ASP خاموش شود یا همکاری نداشته باشد این کنترل از بین نمیرود.
3- پرداخت های اتمی: اکنون آلیس تعدادی vTXO دارد و میتواند از آنها برای شروع پرداخت به باب استفاده کند. Ark پرداخت اتمی را از طریق مکانیسم زیر فعال میکند:
3-1- آلیس آدرس باب را برای پرداخت دریافت میکند. این آدرس مانند یک آدرس پرداخت خاموش (کلید عمومی 32 بایت) عمل میکند. بوراک استفاده از npub-s (کلیدهای عمومی nostr) را پیشنهاد کرده است. ASP یا سایر شرکت کنندگان در راند coinjoin نمیتوانند بدانند که کدام vTXO به کدام آدرس تعلق دارد. سپس آلیس «کوینها» یا vTXOهایی را که میخواهد به باب انتقال دهد انتخاب میکند و به ASP اطلاع میدهد که برای پرداخت آماده است.
3-2- ASP، سپس تراکنش Pool بعدی خود را می سازد (بیایید آن را PoolTX2 بنامیم)، اما این بار شامل پرداختی به Bob در آن به شکل vTXO محدود به کلیدهای عمومی منحصر به فرد مشتق شده از کلید عمومی باب (npub) می شود. این فرآیند محدود کردن را میتوان از طریق پیمانهای BIP119 یا با ایجاد یک سری تراکنشهای چند امضایی با ASP توسط همه گیرندگان انجام داد. با استفاده از مکانیسم پیمان، ASP یک پرداخت تایید نشده به باب ایجاد میکند که هنوز در زنجیره نمایان نشده است. توجه داشته باشید که بدون قرارداد، تراکنشهای Ark نیاز به تعامل از سوی فرستنده و گیرنده دارند. اما، پیمانها الزامات تعاملی را فقط برای فرستندگان در نظر میگیرند.
3-3- سپس ASP پرداخت تایید نشده به باب را به آلیس نشان میدهد.
3-4- مبادله اتمی: آلیس vTXOهای خود را وقتی پرداخت باب به زنجیره اصلی رسید به ASP CONTINGENT میفرستد. آرک آلیس را قادر میسازد تا از طریق نوع قرارداد جدیدی که توسط بوراک اختراع شده (به نام قراردادهای لنگر با زمان قفل شده (ATLC)) یک پرداخت را مشروط به پرداخت دیگری انجام دهد.
3-4-1- به طور فرضی، این میتواند یک کد OP باشد که میگوید: فقط در صورتی این تراکنش را تایید کنید که این تراکنش دیگر قبلاً اتفاق افتاده باشد. اما بدون چنین کدی، Ark از اتصال دهنده ها استفاده میکند.
3-4-2- همانطور که ASP استخر PoolTX2 را تولید میکند، یک UTXO کوچک به نام کانکتور به عنوان یکی از خروجیها را نیز تولید میکند. کانکتور مقداری ساتوشی را حمل میکند و هیچ عملکردی به جز اینکه آلیس را قادر میسازد تا یک پرداخت احتمالی را انجام دهد، ندارد. تصویر کامل تر از دومین تراکنش استخر در زیر آمده است.
3-4-3- ASP کانکتور را به آلیس نشان می دهد و آلیس از آن به عنوان یکی از ورودیهای تراکنش پرداخت خود در امتداد vTXO اصلی استفاده میکند. بدون کانکتور آلیس فقط vTXO را به عنوان تنها ورودی به ASP ارسال میکرد. اکنون او کانکتور UTXO را به عنوان ورودی مورد نیاز دیگر اضافه میکند. نتیجه این است که پرداخت آلیس تنها در صورتی انجام میشود که ASP صادقانه PoolTX2 را تکمیل کرده و آن را در زنجیره نمایان کرده باشد و به باب امکان ادعای بیچون و چرای وجوهش را بدهد. اگر ASP آن تراکنش را رعایت نکند، نقطه خروجی رابط UTXO (شناسه تراکنش، نمایه) در مجموعه UTXO وجود نخواهد داشت و ASP نمیتواند vTXO آلیس را ضبط کند. وجوه تنها در صورتی از حساب آلیس کسر میشوند که به دست باب برسند. این مکانیسم چیزی است که به عنوان ATLC شناخته میشود.
4- اتمام فرایند پرداخت. اکنون باب میتواند vTXOهای خود را در Ark نگه دارد، آنها را مانند آلیس خرج کند، یا اگر ASP همکاری را متوقف کند، بهطور یکطرفه از آن خارج شده و آنها را به UTXOهای درون زنجیرهای تبدیل کند.
مراحل بالا ممکن است چند ثانیه طول بکشد زیرا ASP نیاز دارد تا تراکنشهایی مانند موارد فوق را در میان بسیاری از کاربران هماهنگ کند.
هم افزایی بین Ark و Lightning
سیستم جهانی که توسط لایتنینگ ایجاد میشود میتواند با Ark قابل همکاری باشد. این دو شبکه میتوانند به طور هم افزایندهای برای مقیاسپذیری بیت کوین کار کنند.
استفاده از لایتنینگ به عنوان متصل کننده
در شکل فعلی آرک، ASPها به طور پیش فرض مستقل عمل میکنند و با دیگران ارتباطی ندارند. انتظار میرود که شبکه لایتنینگ به عنوان ریل بیت کوین بین ASP ها عمل کند که به طور حرفهای کانالهای دارای بودجه و متعادل خود را مدیریت میکنند. برای تعویض ASP، کاربران میتوانند یک صورتحساب لایتنینگ پرداخت کنند و به آسانی منتقل شوند. تحت این چشم انداز، LN به متصل کننده بین پروتکلها و خدمات مختلف در بستر بیت کوین تبدیل میشود.
مشکلات احتمالی
الزامات نقدینگی
ASP برای عملکرد صحیح به نقدینگی زیادی نیاز دارد و در واقع هر تراکنش روی آرک نیاز به نقدینگی جداگانه دارد. به همین دلیل، انتظار میرود ASPها با چند ارائهدهنده بزرگ ذخایر بیتکوین بلا استفاده (Micro Strategy، Blockstream، …) یا شاید چند فدراسیون از نهادهای کوچکتر ادغام شوند. چنین هدلرهای بزرگ انگیزهای خواهند داشت تا سرمایه خود را برای استفاده در پروتکلهای Trustless مانند Ark قرار دهند و کارمزد دریافت کنند.
Sweepهای ماهانه
vTXOهای تازه ایجاد شده اگر کاربران آنها را مطالبه یا خرج نکنند پس از دو هفته منقضی میشوند و ASP آنها را برای آزاد کردن نقدینگی جارو میکند. برای جلوگیری از این امر، کاربران باید با کیف پولهای خود حداقل یک بار در ماه وارد سیستم شوند و vTXO ها را به روز یا آنها را تمدید کنند. این موضوع را میتوان در سطح کیف پول حل کرد اما در سطح پروتکل قابل توجه است. یک ASP ایمن ممکن است vTXOهای بدون مدعی را به یک استخر جدید منتقل کند، این امر در واقع برای او هزینه نقدینگی اضافی ندارد، اما در این مرحله کاربر تا زمانی که تراکنش جدید pool تایید شود (و سایر اطلاعات ضروری توسط کاربر بدست آید) وابسته به ASP خواهد بود.
محدودیت Dust
اگر هزینههای درون زنجیرهای به طور قابل توجهی افزایش یابد، خروج از لایه پایه میتواند غیراقتصادی شود. بنابراین، کاربران دارای vTXOهایی خواهند بود که ممکن است از نظر اقتصادی در زنجیره قابل اجرا نباشند.
فشار قانونی
ASP ها را میتوان به عنوان انتقال دهنده پول برچسب گذاری کرد. آنها احتمالاً به اندازه کافی بزرگ هستند که به راحتی قابل شناسایی باشند و بسته به حوزه قضایی میتوانند در معرض مشکلات نظارتی قرار گیرند.
نتیجه گیری
Ark یک پروتکل لایه 2 بیت کوین جدید است که پرداختهای غیرامانی، مقیاس پذیر و با coinjoinهای خودکار را فراهم میکند و در نتیجه چندین مشکل به طور همزمان حل میشوند. این پروتکل به کاربران قدرت پرداختهای اتمی بدون نیاز به اعتماد به ارائه دهندگان خدمات Ark را ارائه میدهد. اگر ASP ها پاسخگو نباشند یا تراکنش ها را سانسور کنند، کاربران میتوانند به صورت یک طرفه از لایه پایه خارج شوند. Ark مکمل دیگر نوآوریهای بیت کوین است. این پروتکل میتواند از شبکه لایتنینگ برای اتصال ASP ها استفاده کند. این پروتکل در حال حاضر در حال توسعه است و میتواند در آیندهای نزدیک به پتانسیل کامل خود دست یابد. در مجموع، Ark یک گام بزرگ رو به جلو در پذیرش جهانی بیت کوین محسوب میشود.
منبع: bitguide
پاسخ