سگویت (SegWit) که کوتاهشدهی عبارت Segregated Witness است، در واقع یک طرح بهبود بیت کوین است که در راستای رفع دو مشکل عمده اجرا و پیادهسازی شد. هدف این سافت فورک، در درجه اول فراهم آوردن شرایطی برای محافظت از انعطافپذیری (Malleability) تراکنشها و در گام بعدی افزایش ظرفیت بلاک (Block Capacity) در شبکه بلاک چین بیت کوین است.
سگویت از سوی تیم توسعهدهندگان بیت کوین کور که در حال حاضر محبوبترین کلاینت مرجع بیت کوین است، پیشنهاد و در آگوست ۲۰۱۷ بر روی بلاک چین بیت کوین اعمال شد. برای درک اینکه سگویت چگونه کار میکند، ابتدا باید درک کلی از مفاهیم اولیه داشته باشیم و بدانیم که تراکنش بیت کوین چگونه کار میکند؟
تراکنشهای بیت کوین چگونه کار میکنند؟
فرض کنید آلیس میخواهد تعداد مشخصی بیت کوین برای باب ارسال کند. سیستم تراکنش در بیت کوین چگونه کار میکند؟ تراکنشهای بیت کوین بسیار متفاوت از تراکنش ارزهای فیات هستند. اگر آلیس بخواهد ۲ دلار به باب بدهد، او ۲ دلار را به صورت فیزیکی از کیف پولش بر میدارد و آن را به باب میدهد؛ اما در بیت کوین اوضاع متفاوت است. شما به صورت فیزیکی بیت کوینی در اختیار ندارید، تاریخچه تراکنشها تنها مدرکی است که نشان میدهد شما بیت کوین دارید.
دو نکته مهمی دیگری که باید در رابطه با تراکنشهای بیت کوین بدانید:
۱. صحتسنجی و تایید تراکنشها توسط استخراجکنندگان انجام میشود. آنها در عوض ارائه چنین خدماتی پاداش استخراج و کارمزد تراکنش دریافت میکنند.
۲. هنگامی که بحث در رابطه با ارز فیات است، شما دقیقا به خاطر ندارید که چگونه و از کجا آن را به دست آوردهاید. اگر دوست دارید میتوانید امتحان کنید. کیف پول خود را باز کنید و تمام اسکناسها و سکههای آن را بیرون بریزید. حالا آیا دقیقا میتوانید بگویید که منشا این پولها از کجا بوده است؟ احتمالا نمیتوانید. اما در ارزهای دیجیتال با بلاک چین عمومی اینگونه نیست؛ تاریخچه تراکنشها برای شما مشخص خواهد بود.
خب، حالا بیایید تراکنش بیت کوینی که بین آلیس و باب در جریان است را با دقت بیشتری مورد بررسی قرار دهیم. این تراکنش دو قسمت دارد، ورودی و خروجی.
ورودی تراکنش (Input)
برای اینکه چنین تراکنشی اتفاق بیافتد، آلیس باید بیت کوینهایی که از تراکنشهای قبلی دریافت کرده است را در اختیار داشته باشد. اگر خاطرتان باشد، پیشتر گفتیم که در بیت کوین، به دلیل داشتن تاریخچه تراکنش شما حساب تک تک سکههای خود را خواهید داشت.
به این ترتیب، فرض کنید که آلیس باید از تراکنشهایی که ما آنها را با نامهای (TX(1) ،TX(۰ و (TX(2 مشخص کردهایم، بیت کوین بردارد. این سه تراکنش با هم جمع خواهند شد و ورودی تراکنش جدید را که (TX(Input نام دارد، تشکیل میدهند.
خب، این فعل و انفعالات بخش ورودی تراکنش بود. حالا بیایید بببینیم که در سمت خروجی چه اتفاقی میافتد.
خروجی تراکنش (Output)
خروجی، اساسا تعدادی بیت کوینهای تراکنش جدید و تراکنش برگردان (Change) خواهد بود که به خود آلیس برگشت داده میشود. این تغییرات به مقادیر ورودی آلیس برای تراکنشهای بعدیاش تبدیل میشود.
حالا، این یک تراکنش بسیار ساده است که جدای از تغییرات، تنها یک خروجی دارد. البته برخی تراکنشها میتوانند چندین خروجی داشته باشند. این همان چیدمان اصلی تراکنش است. برای اینکه تمام این اتفاقات دقیق و بدون نقص انجام شود، باید شرایط خاصی برآورده شود.
شرایط تراکنش
۱. تراکنش ورودی همیشه باید بزرگتر از تراکنش خروجی باشد:
(TX(Input) > TX(Output
در هر تراکنش، تفاوت بین ورودی و خروجی (خروجی + برگردان) در واقع همان کارمزد تراکنشی است که نصیب ماینرها میشود. در نتیجه میتوان اینگونه نوشت:
( برگردان +TX(Input) – ( TX(Output) = کارمزد تراکنش
۲. در سمت ورودی تراکنش:
(TX(۰) + TX(1) + TX(2) = TX(Input
اگر آلیس پول لازم برای انجام تراکنش را نداشته باشد، ماینرها تراکنش را رد خواهند کرد.
۳. باب باید نشان دهد که مدرک کافی برای اثبات اینکه میتواند این بیت کوین را دریافت کند، فراهم میکند. آلیس تراکنش را با آدرس عمومی باب قفل میکند. باب باید برای باز کردن قفل تراکنشها و دسترسی به سرمایههایش، کلید خصوصی خود را استفاده کند.
۴. آلیس در گام اول باید مالکیت خود نسبت به این بیت کوینها را تایید کند و نشان دهد که اجازه خرج کردن آنها را دارد. روشی که او با استفاده از آن این فرآیند را انجام میدهد به این گونه است که او با امضای دیجیتال خود (یا همان کلید خصوصیاش) تراکنش را مورد تایید قرار دهد. هر کسی میتواند با استفاده از کلید عمومی آلیس این را رمزگشایی کند و تایید کند که آیا واقعا آلیس است که این دادهها را فرستاده یا خیر.
اگر بخواهیم مفاهیم بالا را به صورت سادهتری توضیح دهیم؛ در بیت کوین برای خرج کردن داراییها نیاز به یک نوع کلمه عبور است و این کلمه عبور، امضای دیجیتال نام دارد. مثل یک امضای دستنویس، امضای دیجیتال معتبر بودن یک پیام را تصدیق میکند. اما این کار با استفاده از یک الگوریتم ریاضی خاص انجام میشود و کپی و جعل آن را غیرممکن میکند.
امضای دیجیتال مانند یک کلمه عبور ساده و ثابت نیست بلکه برای هر تراکنش، باید امضایی کاملا متفاوت درج شود. یادتان باشد که در شبکه بیت کوین شما با افراد کاملا غریبه سر و کار دارید، بنابراین باید امنیت شما تامین شود و داراییهای شما امن بماند. یک امضای دیجیتال با استفاده از دو کلید جداگانه کار میکند. این دو کلید با وجود متفاوت بودن، مکمل یکدیگر هستند.
کلید خصوصی، یک امضا تولید میکند و با یک کلید عمومی بقیه میتوانند معتبر بودن امضا را بررسی کنند. کلید خصوصی را به عنوان کلمه عبور واقعی در نظر بگیرید و امضای دیجیتال مدرکی است که نشان میدهد شما کلمه عبور را دارید. نام کل این تراکنش چه خواهد بود؟
ورودی که شامل داده امضا نیز میشود و اطلاعات خروجی با یکدیگر جمع میشوند و با استفاده از الگوریتم SHA256، این دادهها هش میشوند. «هش خروجی» نامی است که به تراکنش داده میشود.
کد جزئیات تراکنش
در تصویر زیر کد تراکنش را مشاهده میفرمایید. فرض کنید که آلیس میخواهد ۰.۰۰۱۵ بیت کوین برای باب ارسال کند. برای انجام این کار او ورودی را میفرستد که ارزشی برابر با ۰.۰۰۱۵۷۷۰ بیت کوین دارد. جزئیات تراکنش به صورت زیر است.
اولین چیزی که میبینید نام تراکنش است که در واقع همان هش مقادیر ورودی و خروجی است. در بخش بعدی Vin-sz نوشته شده است. این پارامتر همان تعداد دادههای ورودی است. از آنجایی که آلیس تنها با استفاده از یکی از تراکنشهای پیشینش این مبلغ را تامین میکند، در نتیجه این عدد در اینجا ۱ است. خروجی یا همان Vout-sz برابر ۲ است. چرا که خروجیها در اینجا باب و خروجی برگردان هستند.
ابتدای بخش دادههای خروجی نشان میدهد که باب ۰.۰۰۱۵ BTC دریافت میکند. در قسمت دوم نشان میدهد که ۰.۰۰۰۰۵۱۲ BTC چیزی است که به عنوان تغییرات به آلیس برگشت داده میشود. پیشتر گفته بودیم که دادههای ورودی ۰.۰۰۱۵۷۷۰ BTC است، و این عدد از جمع دو عدد ۰.۰۰۱۵ و ۰.۰۰۰۰۵۱۲۰ بزرگتر است. تفاوت این دو عدد کارمزد تراکنشی است که کسر میشود.
ساختار بلاک در بیت کوین
تمام اطلاعات و دادههایی که در بالا درباره آنها صحبت کردیم در بلاکهایی که سایز آنها ۱ مگابایت است و به صورت میانگین ظرفیت نگهداری حدود ۲,۵۰۰ تراکنش را دارند، ذخیره میشوند. هر بلاک از اجزای مختلفی تشکیل شده است که بهطور دقیقتر این اجزا را میتوان به دو بخش بلاک هدر (Block Header) و بدنه بلاک (Block Body) تقسیم کرد.
ساختار بلاک در بلاک چین بیت کوین
سایز بلاک هدر ۸۰ بایت است و به شش جز تقسیم میشود:
- شمارهی نسخهی برنامه (Bitcoin Version Number)
- هشِ بلاک قبلی (Previous Block Hash)
- هشِ ریشهی درخت مرکل (Merkle Tree)
- زمانسنج (Timestamp Unix)
- هدف سختی فعلی (Difficulty Target)
- عدد تصادفی نانس (Nonce)
مابقی اطلاعات تراکنش مانند لیستی از ورودیها و خروجیها در مابقی فضای بلاک که با نام «تراکنش» شناخته میشود قرار میگیرند. در میان این دادهها، بیشترین فضا و حجم را «دادههای امضا» تشکیل میدهند، چیزی در حدود ۶۵ درصد کل سایز بلاک. حالا بیایید نگاهی جزییتر به مشکلات مطرح شده بیندازیم تا به ضرورت اجرای سگویت پی ببریم.
انعطافپذیری
مهمترین مشکلی که هدف اولیه سگویت بود و این ارتقا با هدف رفع این مشکل در شبکه بلاک چین بیت کوین اعمال شد، انعطافپذیری است. همانطور که پیشتر نیز گفته شد، صحت اطلاعات مربوط به هر تراکنش در بلاک چین بیت کوین از طریق امضای دیجیتال تایید میشود. امضای دیجیتال مبتنی بر رمزنگاری نامتقارن است و از جفت کلیدهای خصوصی و عمومی برای رمزگذاری و رمزگشایی دادهها استفاده میکند.
روش کار به این صورت است که ابتدا هش مربوط به تمامی دادههای تراکنش محاسبه میشود، این هش با کلید خصوصی فرستنده رمزگذاری شده و در کنار سایر اطلاعات، امضای دیجیتال را تشکیل میدهد. امضای دیجیتال بههمراه پیام برای گیرنده ارسال میشود و او با استفاده از کلید عمومی فرستنده امضای دیجیتال را رمزگشایی میکند و هش را آزاد میکند.
گیرنده خودش هش را به صورت جداگانه محاسبه میکند. اگر هشی که کامپیوتر گیرنده محاسبه کرده با هش فرستنده برابر باشد به این معنا خواهد بود که محتوای پیام هیچگونه تغییری نکرده است. اگر امضای دیجیتال را که در حقیقت رشتهای از اعداد و حروف است را به نحوی تغییر دهیم که به لحاظ ریاضی ارزش آن تغییر نکند، شناسهی تراکنش عوض خواهد شد بدون آن که محتوای تراکنش تغییر کند، به این خاصیت انعطافپذیری تراکنشهای بیت کوین گفته میشود.
در واقع این ویژگی نقصی است که به هر کسی امکان تغییر جزئیات کوچکی که باعث اصلاح شناسه تراکنش بدون تغییر محتوای آن میشود را میدهد. شاید این مشکل، مساله بحرانیای برای بیت کوین نباشد، اما مانع پیشرفت ویژگیهای پیچیدهتری از جمله پروتکلهای لایه دوم مانند شبکه لایتنینگ و قراردادهای هوشمند میشود.
محدودیت سایز بلاک و مقیاسپذیری
بیت کوین ارز دیجیتالی است که با استفاده از علم رمزنگاری و با هدف حفظ امنیت تراکنشها ایجاد شده است. اطلاعات و دادههای مربوط به شبکه بیت کوین و تراکنشهای آن به صورت دائمی بر روی واحدهایی به نام بلاک ذخیره میشوند. در واقع هر بلاک شبیه به صفحهای از دفترکل است.
هر زمانی که بلاکی تکمیل میشود، با استفاده از یک هش رمزنگاری به صورت متوالی به بلاک پیشین خود متصل میشود و بقیه اطلاعات بر روی بلاک بعدی ذخیره خواهند شد. انجام مکرر این کار، زنجیرهای از بلاکها و یا همان بلاک چین را شکل میدهد. هر بلاک بیت کوین، شامل اطلاعاتی در رابطه با فرستنده و گیرنده بیتکوین انتقالی و همچنین امضایی که هر تراکنش را تایید میکند، است.
در ابتدا هیچ محدودیتی برای سایز بلاک وجود نداشت. این بدان معنا بود که افراد مخرب میتوانستند دادههای بلاک جعلی بسازند و حمله دیداس به شبکه را ترتیب دهند. بلاکهای جعلی آنها قابل شناسایی و تشخیص بود، اما انجام این کار بسیار زمانبر بود و سرعت عملکرد کل سیستم را پایین میآورد. راهکار ساتوشی ناکاموتو برای مقابله با این مساله، اعمال محدودیت ۱ مگابایتی برای هر بلاک بود که در اواخر سال ۲۰۱۰ به طور مخفیانه در کد بیت کوین قرار داد.
به این ترتیب، حملههایی که با استفاده از بلاکهای بزرگ شکل میگرفتند، به راحتی و به سرعت شناسایی و رد میشدند. در حال حاضر سایز بلاک بیت کوین ۱ مگابایت است. بنابراین ترتیب تعداد تراکنشهای هر بلاک محدود و به تبع آن سرعت انجام تراکنشها پایین است. با افزایش محبوبیت بیت کوین، محدودیت سایز بلاکها دردسرساز شد و سبب کم شدن سرعت تراکنشها شد.
مقیاسپذیری در ارزهای دیجیتال، با تعداد تراکنشهایی که هر بلاک چین در ثانیه میتواند پردازش کند سنجیده میشود و تابعی از اندازهی بلاک و زمان تشکیل یک بلاک است. زمان تشکیل یک بلاک بر مبنای بازه زمانی قراردادیای که از سوی ساتوشی ناکاموتو تعیین شد، به صورت میانگین ۱۰ دقیقه است.
با توجه به محدودیت سایز بلاک، تنها تعداد محدودی تراکنش و به اندازهای که ظرفیت بلاک اجازه دهد، میتوانند در آن قرار بگیرند.هرچه اندازهی بلاک بزرگتر باشد، تعداد تراکنشهای بیشتری میتوانند در این زمان بر روی بلاک چین ثبت شوند.
در حال حاضر سرعت انجام شدن تراکنشها در بیت کوین نسبت به سایر ارزهای دیجیتال و یا کارتهای اعتباری بسیار پایین است و گاهی ممکن است تایید یک تراکنش حتی ساعتها به طول انجامد. عدهای با طرحها و ایدههایی مثل «پرداختهای برون زنجیرهای» به دنبال حل مشکل مقیاسپذیری بلاک چین بیت کوین هستند و در تلاشند تا تراکنشها بدون نیاز به تایید بلاک چین، انجام شوند.
سگویت چگونه کار میکند؟
با دانستن چگونگی انجام تراکنشهای بیت کوین و ساختار بلاک در بلاک چین آن و همچنین مشکلاتی که در نتیجه این شرایط به وجود میآیند، زمان آن رسیده که بدانیم سگویت چگونه این مشکل را برطرف میکند. سگویت با جداسازی دادههای مربوط به امضای دیجیتال از تراکنشها، اندازهی بلاک را افزایش میدهد به همین علت است که نام آن از عبارت Segregate به معنی جدا کردن و witnesses به معنی تصدیقها یا همان امضاها گرفته شده است.
به این ترتیب سگویت با یک تیر دو نشان زد؛ فضای بلاک خالیتر شد و مشکل انعطافپذیری تراکنشها برطرف شد. سگویت در واقع دادههای مربوط به امضای بخش اطلاعات ورودی را به بخش جداگانهای که در انتهای بلاک قرار دارد انتقال میدهد و به این ترتیب محاسبه شناسه تراکنش را بسیار آسانتر میکند و در نتیجه تا حد زیادی از حمله انعطافپذیری جلوگیری میکند.
سگویت نه تنها این مشکل اساسی را از سر راه بیت کوین برداشت، بلکه زمینه را برای روی کار آمدن راهکارهای مقیاسپذیری لایهی دوم فراهم کرد. یکی از این راهکارها شبکهی لایتنینگ بود. با خارج شدن حجم عمدهای از تراکنشها از زنجیرهی اصلی و پردازش آنها بهصورت برونزنجیرهای، ظرفیت شبکه بهشکل چشمگیری افزایش مییابد.
سگویت سایز هر بلاک را از ۱ مگابایت به حداکثر ۴ مگابایت افزایش میدهد و بر حسب شرایط شبکه این عدد میتواند متغیر باشد. متخصصین اعلام کردند که سایز بلاک بلافاصله پس از فعالسازی سگویت در محدودهی ۲ مگابایت تا ۲.۱ مگابایت قرار میگیرد.
افزایش سایز بلاک به این علت اتفاق میافتد که هر بایت در تراکنشهایی که سگویت در آنها فعال شده است، برابر با ۱ واحد وزنی است در حالی که در حالت معمول هر بایت برابر با ۴ واحد است. در نتیجه زمانی که بخشی از دادهها از بلاک اصلی جدا میشوند، ۴ برابر آن مقدار در بلاک فضای خالی ایجاد میشود.
خارج کردن امضاها از ورودی تراکنش، مشکلات خاص خود را دارد. ریشه درخت مرکل که در واقع بالاترین نقطه در درخت مرکل است، در بخش بلاک هدر، ساختاری است که به بلاک این امکان را میدهد تراکنشها را بدون نیاز به بررسی حجم زیادی از اطلاعات تراکنش صحتسنجی و تایید کنند.
با اعمال سگویت، دادههای مربوط به امضا دیگر بخشی از شناسه تراکنش نیستند؛ اما هنوز باید در تراکنش گنجانده شوند، در غیر این صورت بلاک معتبر نخواهد بود. در نتیجه درخت مرکل جداگانهای برای دادههای مربوط به امضای تراکنش مورد نیاز است. اما ریشه درخت مرکل دادههای امضا باید در کجا قرار گیرد؟
توسعهدهندگان میدانستند که برای فعالسازی سگویت به صورت سافتفورک، ریشه دادههای امضا باید در بلاک قرار گیرد. آنها تراکنش کوینبیس (coinbase) را برای اینکار انتخاب کردند. تراکنش کوینبیس، اولین تراکنشی است که در بلاک اتفاق میافتد و اطلاعات ورودی ندارند.
علاوه بر این، این تراکنشها پاداش استخراجی که ماینرها در ازای ایجاد این بلاک دریافت میکنند را مشخص میکند، که در حال حاضر ۱۲.۵ بیت کوین است. با اتصال ریشه درخت مرکل به تراکنش کوینبیس، دادههای امضا و تراکنش به یکدیگر متصل خواهند شد و به این ترتیب به سگویت امکان سازگاری معکوس داده میشود.
آدرسهای سگویت چگونه است؟
همانطور که نسخههای متعددی برای پروتکل اینترنت مانند IPv4 و IPv6 وجود دارد، سه نوع آدرس عمومی متفاوت در بیت کوین وجود دارد. از هر سهی این آدرسها برای فرستادن و دریافت بیتکوین میتوان استفاده کرد و احتمال اینکه صرافیها و سرویسهای نگهداری حداقل از یکی از آنها پشتیبانی کند، بسیار بالاست؛ اما فقط تعداد انگشتشماری از ارائهدهندگان خدمات از هر سه آدرس به طور همزمان پشتبانی میکنند.
لِگاسی (P2PKH)
اگر آدرس بیت کوین شما با عدد ۱ شروع میشود، شما از آدرس لگاسی یا P2PKH استفاده میکنید: مانند 1BvBMSEYstWetqTFn5Au4m4GFg7xJaNVN2 این اولین فرمت آدرس بیت کوین بود که هنوز هم به درستی کار میکند. عبارت P2PKH مخفف Pay-to-Pubkey Hash است. آدرسهای لگاسی با سگویت سازگار نیستند؛ اما شما به راحتی و بدون هیچ مشکلی میتواند از یک آدرس P2PKH به آدرس سگویت بیت کوین ارسال کنید. میانگین کارمزد تراکنش در تراکنشهای انجام شده با آدرسهای لگاسی بیشتر از سگویت است.
آدرس P2SH
ساختار آدرسهای P2SH مشابه آدرسهای P2PKH است، با این تفاوت که همانند 3J98t1WpEZ73CNmQviecrnyiWrnqRhWNLy، به جای عدد ۱ با عدد ۳ آغاز میشوند. P2SH مخفف عبارت Pay To Script Hash است و قابلیتهای بیشتری نسبت به آدرسهای لگاسی دارد. تابع اسکریپت P2SH اغلب برای آدرسهای امضای چندگانه مورد استفاده قرار میگیرد.
این فرمت آدرس همچنین با استفاده از فرآیندی که با نام P2WPKH-in-P2SH شناخته میشود، تراکنشهای غیربومی (non-native) سگویت را فعال میکند. کاربران معمولی نباید خودشان را درگیر عملکرد پیچیده فرمت P2SH کنند. چیزی که اهمیت دارد این است؛ این نوع از آدرس به طور گستردهای پشتیبانی میشود و میتوان از آن برای ارسال ارز به هر دو آدرس P2PKH و bech32 استفاده کرد.
آدرس بومی سگویت (bech32)
آدرسهای bech32 کاملا متفاوت از آدرسهای نوع P۲ هستند. هر آدرس bech32 با عبارت bc1 آغاز میشود و طولانیتر از دو نوع آدرس دیگر است. این نوع آدرس توسط اکثر نرمافزارها و کیفپولها پشتیبانی میشود، اما تعداد صرافیهایی که از این آدرس پشتیبانی میکنند محدود است. در حال حاضر بسیاری از صرافیهای امکان ارسال بیت کوین به این آدرس را فراهم کردند، اما کاربرانشان قادر به دریافت بیت کوین با این فرمت آدرس نیستند. تا کنون، تنها ۱.۳ درصد از بیت کوینهای موجود در بازار با فرمت آدرس bech32 ذخیره شدهاند و این روند با سرعت کمی در حال رشد است.
درصد تراکنشهایی که با استفاده از سگویت انجام میشوند – منبع:p۲sh.info
چه کیفپولها و صرافیهایی از سگویت پشتیبانی میکنند؟
طی دو سالی که از اعمال سگویت بر شبکه بیت کوین میگذرد، کیفپولهای زیادی از آن پشتیبانی کردند. از طرفی رو به روز بر تعداد صرافیهایی که سازگار با سگویت هستند نیز افزوده میشود. در صورت استفاده ازکیفپولها و صرافیهایی که از آدرسهای bech32 پشتیبانی میکنند، شما کارمزد کمتری برای تراکنشهای خود پرداخت خواهید کرد. لیست تعدادی از کیفپولهایی که از سگویت پشتیبانی میکنند:
- لجر نانو اس (Ledger Nano S)
- ترزور (Trezor)
- الکتروم (Electrum)
- کوینومی (Coinomi)
- کوینبیس (Coinbase)
- بیتگو (BitGo)
- گرینادرس (GreenAddress)
- تراست ولت (Trust Wallet)
- بیتباکس (BitBox)
- اکسودوس (Exodus)
- سامورایی ولت (Samourai Wallet)
- سگویتادرس (Segwitaddress)؛ کیف پول کاغذی سگویت است.
لیست صرافیهایی که از سگویت پشتیبانی میکنند:
- جمینی (Gemini)
- کراکن (Kraken)
- لوکالبیتکوینز (LocalBitcoins)
- بیتاستمپ (Bitstamp)
- بیتفینکس (Bitfinex)
- بیتانیک (Bitonic)
- هیتبیتیسی (HitBTC)
مزایا و معایب سگویت
مزایا
• تعداد تراکنشهایی که در یک بلاک میتواند اتفاق بیافتد را افزایش میدهد.
• به مقیاسپذیری بیت کوین کمک میکند.
• مشکل انعطافپذیری تراکنشها را برطرف میکند.
• به فعالسازی پروتکل لایتنینگ کمک میکند.
• کارمزد تراکنش را کاهش میدهد.
• اندازه هر تراکنش را کاهش میدهد.
• با وجود سگویت تراکنشها سریعتر تایید میشوند، چرا که زمان انتظار کاهش مییابد.
• از آنجایی که تعداد تراکنشهایی که در هر بلاک انجام میشود افزایش مییابد؛ ممکن است درآمد و کارمزد کلی یک ماینر را افزایش دهد.
معایب
• با وجود سگویت استخراجکنندگان کارمزد تراکنش کمتری به ازای هر تراکنش دریافت میکنند.
• پیادهسازی آن پیچیده است و نیاز است که همه کیف پولها سگویت را خودشان به صورت جداگانه اعمال کنند.
• سگویت به طرز چشمگیری استفاده از منابع را افزایش خواهد داد، چرا که ظرفیت، تراکنشها، پهنای باند و همه چیز افزایش خواهد یافت.
• ایجاد بیت کوین کش نشان داد که سگویت در نهایت توانست باعث دو قسمت شدن جامعه بیت کوین کور شود.
• مشکل دیگر سگویت، نگهداری و تعمیر آن است. زنجیره جانبی که حاوی اطلاعات و دادههای امضاها میشود، باید توسط ماینرها به آن رسیدگی و نگهداری شود. با این تفاوت که برخلاف بلاک چین اصلی، انجام این کار برای ماینرها هیچ مزیت و سود اقتصادیای ندارد. این کار یا باید به صورت داوطلبانه و رایگان انجام شود و یا طرح پاداشی باید برای استخراجکنندگان در نظر گرفته شود.