کانالهای پرداخت،
ابزاری هستند که برای کاربران ارزهای دیجیتال طراحی شدهاند که میتوانند تراکنشهای آنی و کمهزینه را بدون تأثیر منفی روی بلاک چین انجام دهند.
انگیزه این نیاز محدودیتهایی است که ارزهای رمزپایه مانند بیتکوین و اکثر ارزهای رمزنگاری شده سیستم از نظر مقیاسپذیری در تراکنشها در ثانیه و فضای کل بلاک چین دارند.
بنابراین،
یک کانال پرداخت به افراد زیادی اجازه می دهد تا تعداد زیادی تراکنش را در پس زمینه انجام دهند،
اما در بلاک چین اصلی تنها دو تراکنش در نظر گرفته می شود.
البته،
هنگام باز کردن یک کانال پرداخت ،
گرهها باید ارزهای کاربران را قفل کنند تا در طول عمر مفید کانال خارج از کانال قابل استفاده نباشند.
این هزینه هنگفتی دارد که باز نگه داشتن کانال های پرداخت را جذاب نمی کند.
اما به همین دلیل،
کانالهای پرداخت همچنان یک روش بسیار مؤثر برای ارائه مقیاسپذیری عالی به ارزهای دیجیتال هستند.
در این مرحله مطمئناً تعجب خواهید کرد که چگونه کار می کنند؟ ایمن هستند؟ امروزه چه سیستم هایی وجود دارد؟
در ادامه این مقاله جدید از آنلاین صرافی به همه این سوالات پاسخ خواهیم داد.
منشا کانال های پرداخت در ارزهای دیجیتال
ایده کانال های پرداخت در ارزهای دیجیتال جدید نیست.
از ابتدای توسعه فناوری این ایده وجود داشت.
ساتوشی ناکاموتو آن را به عنوان یک امکان تکنولوژیکی قابل اجرا برای بیت کوین ارائه کرد.
این توسط اسکریپت OP_CODES و Bitcoin پشتیبانی می شود که برای جایگزینی تراکنش ها و کنترل اعتبار آنها استفاده می شود.
ما در مورد OP_CODES nSequence و nLockTime صحبت میکنیم،
که به دو یا چند طرف اجازه میدهد تا وضعیت یک تراکنش تأیید نشده را قبل از انجام آن بهطور مکرر بهروزرسانی کنند.
سیستم ابتدایی ناکاموتو اجازه ایجاد تراکنشهایی را میدهد که میتوانند حاوی چندین ورودی باشند.
هر یک از این ورودی ها توسط کاربر و دارنده وجوه شرح داده شده در ورودی مذکور امضا و تأیید می شود.
بنابراین با هر امضای جدید، مقدار nSequence به مقدار بالاتری تغییر می کند،
تا زمانی که زنجیره امضا با تایید تراکنش در یک بلوک به پایان می رسد.
و در عین حال،
معامله شامل حسابداری داخلی است که کاربران با آن موافق هستند.
بنابراین،
یک تراکنش می تواند چندین تراکنش مختلف برای کاربران مختلف داشته باشد.
این سیستم همچنین این امکان را می دهد که در صورت عدم توافق با نتایج، کاربر مورد نظر از امضای خود اجتناب کند و در نتیجه از سیستم خارج شود.
در این صورت، وجوه دوباره تحت کنترل شماست و می توانید بدون مشکل به کار خود ادامه دهید.
از سوی دیگر،
ناکاموتو توضیح داد که nLockTime می تواند در معاملات با فرکانس بالا بین مجموعه ای از طرفین استفاده شود.
برای دستیابی به این هدف، nLockTime به ادامه به روز رسانی یک تراکنش خاص در mempool،
در صورت توافق متفق القول بین طرفین، اجازه می دهد.
به این ترتیب، هر بار که یکی از طرفین بخواهد در تراکنش (که به عنوان کانال پرداخت عمل می کند) شرکت کند،
تراکنش به روز می شود.
وقتی طرفین توافق کردند که کانال را ببندند،
امضای همه شرکتکنندگان میرسد و nLockTime نهایی را برای تراکنش تنظیم میکنند و منتظر میمانند تا تایید شود.
با تایید آن کانال بسته می شود و تمام عملیات توصیف شده توسط ورودی ها و خروجی ها در همان تراکنش انجام می شود.
با این حال،
هر دو گزینه ناامن هستند.
مقادیر nSequence و nLockTime می توانند توسط یک ماینر مخرب یا حتی یک گره مخرب دستکاری شوند.
با این حال،
ایده اصلی کانال های پرداخت پدیدار شده بود و در پشت آن تحقیقات گسترده ای برای ایجاد راه حل ایمن بهتر برای همه آغاز می شد.
کانال های پرداخت و شبکه لایتنینگ
توسعه اولین کانال های پرداخت آغاز می شود…
ایده های ساتوشی ناکاموتو به سرعت توجه توسعه دهندگان جامعه را به خود جلب کرد،
که به زودی با مشکل پیچیده ای برای حل مواجه شدند.
چگونه می توان افراد متعددی را در یک سیستم پرداخت فوری امن، غیرمتمرکز و ساخته شده بر اساس پروتکل بیت کوین بدون تغییر غیرضروری مشارکت داد؟
ابداع عملکردی مانند این موضوع پیچیدهای است،
اما برنامهنویسی آن پیچیدهتر است، و اگر به این اضافه کنیم که چنین برنامهنویسی بدون شکستن هیچ یک از موارد بالا سازگار است،
بسیار پیچیده است.
با این حال،
دو راه برای ایجاد کانال های پرداخت به سرعت پدیدار شد که در زیر آنها را توضیح می دهیم.
انواع کانال های پرداخت
یک طرفه
ساده ترین سیستم کانال پرداخت، سیستم کانال یک طرفه است.
در این سیستم کاربر A می تواند پرداخت B را انجام دهد.
کاربر جدید C می تواند به کانال بپیوندد و به D پرداخت کند و به این ترتیب زنجیره پرداخت ها در کانال می تواند گسترش یابد.
این پرداختها توسط تراکنشهایی از نوع چند امضایی کنترل و ایمن میشوند،
بنابراین،
برای انجام،
طرفهای درگیر باید مطابق با دادههای نشاندادهشده در ورودیها و خروجیهای تراکنش امضا کنند.
همانطور که کانال رشد می کند،
شرکت های سیستم نیز رشد می کنند و همه باید برای آزاد شدن وجوه امضا کنند.
علاوه بر این،
یک nLockTime از ۵۰ بلوک اعمال می شود تا از استفاده کاربران از پول انباشته جلوگیری کند.
اما برعکس،
پول تنها پس از تایید ۵۰ بلوک در دسترس خواهد بود.
در این مرحله،
می توانید nLockTime را به عنوان چکی ببینید که فقط پس از یک تاریخ خاص معتبر است، قبل از آن تاریخ فقط یک تکه کاغذ بی ارزش است.
nLockTime را می توان به هر شکلی که طرفین بخواهند تنظیم کرد.
به این ترتیب همه شرکتکنندگان میتوانند مطمئن باشند که پرداخت انجام شده است،
اما تنها پس از احراز شرایط اضافی مذاکره،
وجه را دریافت میکنند.
به عنوان مثال،
باید درک کرد که A برای تعمیر یک کامپیوتر به B پرداخته است،
و B تقریباً ۵۰۰ دقیقه برای تعمیر رایانه مذکور فرصت دارد.
در غیر این صورت،
A همچنان ممکن است در معامله دخالت کند،
ارزش آن را تغییر دهد و پول خود را پس بگیرد.
دو جهته
کانال های پرداخت دو طرفه در واقع دو کانال یک طرفه هستند که با هم کار می کنند.
به همین دلیل، A و B می توانند بدون نیاز به بستن کانال قبلی و باز کردن کانال جدید دیگری برای عملیات پرداخت، پرداخت ها را به صورت دوطرفه ارسال کنند. عملیات اصلی حفظ می شود،
با این استثنا که کانال های دو طرفه برای انجام عملیات پویاتر بین دو کاربر یا موجودیت عالی هستند.
چرا کانال های پرداخت یا کانال های پرداخت ایجاد شدند؟
در بیتکوین،
تراکنشها تنها زمانی تایید میشوند که در یک بلوک در بلاک چین گنجانده شوند.
فرآیندی که تقریبا هر ۱۰ دقیقه یکبار اتفاق می افتد و تنها ۱ مگابایت اطلاعات می تواند در آن وارد شود.
این امر تعداد تراکنشهایی را که میتوان در هر بلوک تأیید کرد بسیار محدود میکند،
به طوری که تقریباً ۲۲۰۰ تراکنش در هر ۱۰ دقیقه تأیید میشود.
اما چطور تقلب کنیم؟
اگر ورودی ها و خروجی های زیادی را در یک تراکنش وارد کنیم و طرف های درگیر در آن معامله، معامله را برای تایید آن امضا کنند، چه؟
با این کار،
تراکنش در نهایت به شبکه صادر شده و اعتبارسنجی می شود و بنابراین یک تراکنش معادل چندین تراکنش فردی خواهد بود.
یک تله بسیار ظریف، درست،
اما همچنین بسیار مفید و دقیقاً همان کاری است که یک کانال پرداخت انجام می دهد.
حداقل در ابتدایی ترین ویژگی های آن.
به این ترتیب،
کانالهای پرداخت یا کانالهای پرداخت به یک راهحل لایه دوم تبدیل میشوند که به کاربران اجازه میدهد بدون وابستگی مستقیم به بلوک بعدی،
تراکنشها را انجام دهند تا یک تراکنش کامل در نظر گرفته شود.
بنابراین،
میتوانیم تراکنشهای فوری انجام دهیم که بعداً با بسته شدن کانال پرداخت،
به اتفاق آرا در بلاک چین اصلی ثبت میشوند.
هیچ چیز گم نمی شود،
هیچ سکه ای از هیچ ساخته نمی شود،
در نهایت همه چیز به همان حسابداری ختم می شود و اعداد فقط جمع می شوند.
این یک ابزار عالی برای انعطاف پذیرتر کردن پرداخت با استفاده از ارزهای دیجیتال و همه اینها بدون تغییر پروتکل های فعلی است.
مزایا و معایب کانال های پرداخت
مزایای
آنها امکان پرداخت فوری بین طرفین شرکت کننده در کانال پرداخت را ارائه می دهند.
اما همچنین به شما این امکان را می دهد که پرداخت ها را برنامه ریزی کنید و تحت شرایط خاصی آنها را ایمن تر کنید.
شما می توانید پرداخت های خرد انجام دهید،
حتی چند ساتوشی ارسال کنید.
به لطف این واقعیت که پرداخت هزینه تأیید زنجیره ای بین تمام شرکت کنندگان کانال انجام می شود،
به شما امکان می دهد کارمزد تراکنش را کاهش دهید.
این امکان را برای کسبوکارها فراهم میکند تا پرداختهای خود را با ارزهای رمزنگاری شده با پشت سر گذاشتن زمانهای تایید زنجیره،
اما بدون از دست دادن امنیت دریافت کنند.
تحت مشخصات کانال پرداخت فعلی،
سرقت وجوه بسیار دشوار (اگر نه غیرممکن) است.
این به این دلیل است که پیادهسازی کانال پرداخت از طرح آدرس چند امضایی استفاده میکند،
که در آن اقدامات تنها در صورتی انجام میشوند که امضای همه شرکتکنندگان را داشته باشند.
معایب
محدودیتی در تعداد تراکنش هایی که می توانیم با کانال های پرداخت انجام دهیم وجود دارد.
وجوهی که باید در کانال های پرداخت خرج شود باید از قبل قرار داده شود.
این بدان معناست که اگر پول کانال تمام شود،
لازم است کانال جدیدی برای انجام عملیات بیشتر باز شود.
هنوز برخی از مسائل امنیتی در مورد کانال های پرداخت وجود دارد.
مواردی مانند آسیب پذیری در کدهای مشتری و گره های این نوع سیستم ها.
یا حتی آسیبپذیریهایی در خود ساختار عملیاتی،
مانند مورد حمله اتساع زمانی.
اینها برخی از مشکلاتی است که قبل از انبوه شدن این سیستم ها باید حل شود.




