امروزه، صدها رمزارز در بازار کریپتو وجود دارد و هر کدام از آنها، مجموعهای از قوانین و الگوریتمها دارند که نحوه کارکرد شبکه آن ارز دیجیتال را مشخص میکنند. این مجموعه قوانین و الگوریتمها، پروتکل نامیده میشود. در این مقاله میخواهیم در رابطه با یک به روز رسانی در پروتکل بیت کوین به نام سگویت بیت کوین (Bitcoin SegWit) صحبت کنیم.
ارزهای دیجیتال، همانند دیگر برنامههای کامپیوتری، باید به روز رسانی شوند و بهبود یابند. همواره، باگها و نقطه ضعفهایی در پروتکلهای ارزهای دیجیتال شناسایی میشوند که باید برطرف شوند.
وقتی لازم باشد که رمزارزی، به روز رسانی شود، بایت تغییراتی در پروتکل آن رخ دهد. سگویت را میتوان نسخهای به روز رسانی شده از پروتکل بیت کوین دانست که چند سالی از معرفی آن میگذرد.
در این مقاله میخواهیم هر چیزی را که لازم دارید، در رابطه با آپدیت SegWit بدانید، برای شما توضیح دهیم. به علاوه، خواهیم گفت که چه بهبودهایی در شبکه بیت کوین ایجاد شده تا این به روز رسانی، انجام شود. با داموندمگ همراه باشید.
سگویت بیت کوین چیست و چگونه به وجود آمد؟
ایده سگویت بیت کوین، اولین بار در سال ۲۰۱۵ توسط پیتر ویلیو (Pieter Wuille) در کنفرانس بیت کوین، معرفی شد. ویلیو، یکی از توسعهدهندگان بیت کوین و یکی از بنیانگذاران شرکت نرمافزاری بلاک استریم (Blockstream) است که در حوزه امنیت سایبری سرویسهای مالی، فعالیت دارد.
ویلیو، سگویت را به عنوان راهحلی برای یکی از نقطهضعفهای پروتکل بیت کوین، پیشنهاد داد. در حوزه توسعه نرمافزار، به راهحلهایی که برای برطرف کردن مشکلات ارائه میشوند، پچ (Patch) گفته میشود. مشکلی که سگویت به دنبال حل کردن آن بود، چکشخواری تراکنش (Transaction Malleability) نام دارد. منظور از چکشخواری تراکنش این است که با تغییر بخشهایی از اطلاعات تراکنش، امکان سرقت بیت کوین از کاربران وجود دارد.
پیشنهاد ویلیو، تردید بزرگی در جامعه بیت کوین ایجاد کرد و دو سال طول کشید تا این پیشنهاد، رنگ واقعیت به خودش بگیرد. نهایتا در تاریخ ۲۳ آگوست ۲۰۱۷، پچ سگویت اجرایی شد. پچ مشابهی در تاریخ ۱۰ می ۲۰۱۷ روی پروتکل لایت کوین، انجام شد.
لایت کوین، رمزارزی به کدی بر اساس پروتکل بیت کوین است. از آنجایی که بلاک چین لایت کوین و بلاک چین بیت کوین، شباهت بسیار زیادی به همدیگر دارند، مشکل چکشخواری تراکنش در هر دو پروتکل وجود دارد.
به روز رسانی سگویت، مشکل چکشخواری تراکنش را حل کرد و بعضی دیگر از ویژگیهای پروتکل بیت کوین را بهبود بخشید. با این حال، انتقادات زیادی به این پچ بیت کوین وارد است و همه کاربران بیت کوین از این به روز رسانی، استقبال نکردهاند. بعضی از اعضای جامعه بیت کوین به قدری با این به روز رسانی مخالف هستند که رمزارزهای رقیبی برای آن ساختهاند.
حالا که با فلسفه ایجاد سگویت آشنا شدید، بد نیست کمی بیشتر در رابطه با مشکل چکشخواری تراکنش بیت کوین، صحبت کنیم. در ادامه برای شما خواهیم گفت که چکشخواری تراکنش دقیقا چیست و این به روز رسانی بیت کوین، چگونه آن را متوقف کرده است. از آنجایی که چکشخواری تراکنش، مفهوم نسبتا پیچیدهای است، پیش از پرداختن به آن، باید نحوه تراکنشهای بیت کوین را درک کنید.
اصول شبکه بیت کوین
پیش از پرداختن بیشتر به موضوع سگویت بیت کوین، باید توضیحالت مختصری در رابطه با اصلول بلاک چین بیت کوین به شما بدهیم. بیت کوین، شبکه عظیمی متشکل از هزاران کامپیوتر به نام گره یا نود (Node) است. هر گره، تمامی تراکنشهای بیت کوین را از روز اول تا آخرین تراکنشی که رخ داده، روی حافظه خودش دارد و این حافظه، به طور پیوسته، به روز رسانی میشود. به این تراکنشهای ثبت شده، بلاک چین (Blockchain) گفته میشود.
اکثر کار پردازش تراکنشهای جدید بر دوش گرههای ویژهای به نام ماینر (Miner) است. کاربران به ماینرها کارمزد پرداخت میکنند تا تراکنشهای آنها، انجام شوند. تراکنشهای جدید، تنها زمانی میتوانند به انتهای بلاک چین اضافه شوند که ماینرها، آنها را در گروههایی به نام بلاک (Block) قرار دهند. هر بلاک در شبکه بیت کوین، شامل ۱ مگابایت اطلاعات تراکنش است.
زمان نظری پردازش هر بلاک از تراکنشها در بلاک چین بیت کوین، حدود ۱۰ دقیقه است اما احتمال دارد که پردازش هر بلاک، بیش از این مدت، طول بکشد. شبکه بیت کوین میتواند هر ثانیه، ۳ الی ۷ تراکنش را پردازش کند. در نتیجه، اصطلاحا گفته میشود که سرعت شبکه بیت کوین، ۳ الی ۷ تراکنش بر ثانیه یا Tx/s است. با این حال، در زمانهای شلوغی شبکه، این سرعت به طور قابل توجهی کاهش پیدا میکند.
در ادامه، با دو مثال برای شما توضیح خواهیم داد که تراکنشهای بیت کوین، چگونه انجام میشوند و چکشخواری تراکنش چیست. مثال اول، در رابطه با تراکنشی استاندارد در شبکه بیت کوین است و مثال دوم، تراکنشی را توضیح میدهد که در آن، کاربری، با استفاده از چکشخواری تراکنش، بیت کوین کاربر دیگری را سرقت میکند.
مثالی از تراکنش در شبکه بیت کوین
تصور کنید که می خواهید ۱۰ بیت کوین برای دوست خود ارسال کنید. برای این کار، باید آدرس عمومی دوست خود و کلید خصوصی حساب کاربری خود در بلاک چین بیت کوین را داشته باشید.
آدرس عمومی، همانند آدرس ایمیل یک کاربر است که شما باید بیت کوین را به آن ارسال کنید. اگر کسی بخواهد برای شما بیت کوین ارسال کند، باید آدرس عمومی خود را در اختیار او قرار دهید و البته، این کار هیچ مسئلهای ندارد. در واقع، همه شبکه بیت کوین میتوانند آدرسهای عمومی کاربران را ببینند.
کلید خصوصی، همانند گذرواژهای برای حساب کاربری بیت کوین محسوب میشود. شما میتوانید با استفاده از کلید خصوصی، به بیت کوینهای خودتان دسترسی داشته باشید و آن را برای آدرسهای عمومی دیگران، ارسال کنید اما هرگز نباید کلید خصوصی خودتان را در اختیار کس دیگری قرار دهید. کلید خصوصی، کاملا محرمانه است.
نحوه انجام تراکنش استاندارد بیت کوین
برای اینکه تراکنشی با موفقیت انجام و به انتهای بلاک چین بیت کوین اضافه شود، باید مراحل زیر را طی کند:
۱- شما درخواستی را در شبکه پخش میکنید: این درخواست، شامل آدرس عمومی دوست شما، مقدار بیت کوینی که میخواهید برای او ارسال کنید (در این مورد، ۱۰ بیت کوین) و کارمزد تراکنش ماینرها است. به علاوه، این تراکنش، امضای کلید خصوصی شما را نیز دارد تا اثبات کنید که این ۱۰ بیت کوین را دارید. این امضاء، دادههای شاهد (Witness Data) نام دارد.
۲- ماینرها تراکنش را هش میکنند: ماینرها، اطلاعات شما و دوستی که میخواهید ۱۰ بیت کوین را برای او بفرستید، با هم دیگر، هش (Hash) میکنند. منظور از هش کردن، رمزنگاری اطلاعات تراکنش به صورت کد کامپیوتری است. این کد، آی دی یا شناسه تراکنش (Transaction ID) نامیده میشود.
۳- تراکنش برای پردازش وارد صف میشود: در صورتی که کارمزد پایینی برای تراکنش انتخاب کرده باشید، تراکنش شما برای مدتی طولانی در صف باقی خواهد ماند. در واقع، ماینرها، اول به سراغ تراکنشهایی میروند که کارمزد بالاتری داشته باشند و تا زمانی که تراکنشی با کارمزد بالاتر در صف پردازش باشد، تراکنش شما، پردازش نمیشود.
حالا، شناسه تراکنش به دیگر شناسههای تراکنش اضافه و مجددا، رمزنگاری میشود. این فرایند تا زمانی ادامه میابد که حجم تراکنشها به یک مگابایت برسد و بلاک ساخته شود.
۴- بلاک تأیید میشود: بلاک در شبکه پخش میشود و اگر بیش از نیمی از همه گرهها تأیید کنند که آن اطلاعات، صحیح است، بلاک تأیید و به بلاک چین، اضافه میشود. با این کار، دوست شما، ۱۰ بیت کوین را دریافت میکند و ۱۰ بیت کوین از حساب شما کم میشود.
حالا که با نحوه انجام تراکنشهای استاندارد بیت کوین آشنا شدید، وقت آن است که چکشخواری تراکنش را با ذکر یک مثال برای شما توضیح دهیم و مجددا به سراغ موضوع مقاله، یعنی به روز رسانی سگویت بیت کوین برگردیم. همچنان با داموندمگ همراه باشید.
چکشخواری تراکنش چگونه انجام میشود؟
در اینجا میخواهیم با ذکر مثالی برای شما توضیح دهیم که چگونه کسی که میخواهید ۱۰ بیت کوین برای او ارسال کنید، میتواند به جای ۱۰ بیت کوین از شما ۲۰ بیت کوین بگیرد.
مشکل چکشخواری تراکنش در شبکه بیت کوین به دوست شما این امکان را میدهد تا دادههای شاهد را پیش از تأیید تراکنش، تغییر دهد. با این کار، شناسه تراکنش، بدون تغییر خود تراکنش، تغییر میکند. وقتی این تراکنش تغییر یافته توسط شبکه تأیید میشود، تراکنش اولی را کنسل میکند. حالا، طرف دوم تراکنش میتواند اعلام کند که او ۱۰ بیت کوین خودش را دریافت نکرده در صورتی که دریافت کرده است!
شما بررسی میکنید و میبینید که تراکنشی رخ نداده است. بنابراین، مجددا تراکنش دیگری انجام میدهید و ۱۰ بیت کوین دیگر برای طرف دوم تراکنش، ارسال میکنید.
شما، ماینرها و کل شبکه، هرگز متوجه نمیشوید که چنین اتفاقی رخ داده است. زمانی که تراکنش تأیید و به بلاک چین اضافه میشود، امکان تغییر یا حذف آن وجود ندارد.
تا اینجا برای شما گفتیم که SegWit چگونه و با چه منظوری به وجود آمده است، تراکنش استاندارد در بیت کوین چگونه انجام میشود و منظور از چکشخواری تراکنش چیست. حالا وقت آن است که نحوه حل این باگ شبکه بیت کوین توسط آپدیت سگویت بیت کوین را برای شما توضیح دهیم. با ما همراه باشید.
پچ کردن چکشخواری تراکنش با معرفی سگویت بیت کوین
همانطور که پیش از این گفتیم، به روز رسانی سگویت، یک پچ بیت کوین است که پیتر ویلیو آن را برای پیشگیری از چکشخواری تراکنش، طراحی و معرفی کرده است. نحوه عملکرد این پچ، بسیار ساده است. ویلیو پیشنهاد داد که برای پیشگیری از استفاده از دادههای شاهد برای تغییر شناسه تراکنش، این اطلاعات از تراکنش، حذف شوند. به همین سادگی!
در واقع، نام کامل بلاک چین SegWit عبارت است Segregated Witness که معنی «شاهد تفکیک شده» میدهد. این پچ، نوعی سافت فورک در بلاک چین بیت کوین بود که امکان تغییر شناسه تراکنش را از بین برد.
به تغییراتی که در پروتکلهای بلاک چین ایجاد میشوند، فورک (Fork) گفته میشود. دو نوع فورک وجود دارد: سافت فورک (Soft Fork) و هارد فورک (Hard Fork). سافت فورکها تغییرات خفیفی هستند که سبب ایجاد بلاک چین مجزایی نمیشوند و در نتیجه، امکان کار کردن گرههای سگویت با گرههای بیت کوین وجود دارد اما هارد فورکها، تغییرات شدیدی هستند که بلاک چین مجزایی ایجاد میکنند و توکن مخصوص به خودشان را دارند.
بیتر ویلیو میخواست که این پچ، برگشتپذیر باشد و در نتیجه، آن را به صورت یک به روز رسانی از نوع سافت فورک، معرفی کرد. برای این کار لازم بود که دادههای شاهد، همچنان روی بلاک چین اصلی بیت کوین، ثبت شوند.
راه حل ویلیو، رمرزنگاری تمامی دادههای شاهد هر بلاک در زنجیره جانبی بلاک چین سگویت و ذخیرهسازی این روت کد (Root Code) در بلاک چین اصلی بود. با این کار، سگویت بیت کوین، بدون نیاز به هارد فورک شدن، مشکل چکشخواری تراکنش را حل کرد.
حالا میدانید که پچ شاهد تفکیک شده، چگونه جلوی مشکل چکشخواری تراکنش را میگیرد با این حال، داستان این به روز رسانی، همینجا به پایان نمیرسد. سگویت، آنچنان تغییراتی در بلاک چین بیت کوین ایجاد کرد که ویلیو، فکرش را هم نمیکرد.
در ادامه، در رابطه یکی دیگر از مشکلات بلاک چین بیت کوین که توسط پچ SegWit حل شد، صحبت خواهیم کرد.
حل مشکل مقیاسپذیری توسط سگویت بیت کوین
بدترین مشکلی که توسعهدهندگان بیت کوین با آن مواجه هستند، مقیاسپذیری (Scalability) آن است. ترافیک بالا در شبکه بیت کوین، سرعت تراکنش در این بلاک چین را به طور قابل توجهی کاهش میدهد و گاهی برای انجام یک تراکنش ساده، باید چند روز صبر کرد و اگر بخواهید تراکنش شما با سرعت بالاتری انجام شود، باید کارمزد تراکنش را بالاتر ببرید. این مشکل، در تضاد با وعدههای بیت کوین برای فرآهم آوردن تراکنشهایی سریع و ارزان است.
منطور از مقیاسپذیری، توانایی شبکه برای پردازش تعداد بالایی از تراکنشها، بدون کاهش سرعت است. در صورتی که شبکهای مقیاسپذیر باشد، میتواند هر تعداد تراکنشی را بدون کاهش سرعت، پردازش کند و با بزرگتر شدن، سرعت تراکنشها، افزایش یابد. متأسفانه بسیاری از شبکههای ارزهای دیجیتال امروزی، که اکثرا، شباهت زیادی به بیت کوین دارند، با بزرگتر شدن شبکه کندتر میشوند. بیت کوین نیز از این قاعده مستثنی نیست.
مشکل مقیاسپذیری بیت کوین، استفاده پروتکل این شبکه از الگوریتم اجماع (Consensus Algorithm) است. همانطور که پیش از این گفتیم، تنها زمانی یک بلاک تأیید میشود که بیش از نیمی از گرهها، آن را تأیید کنند. بنابراین، هر چه تعداد گرههای موجود در شبکه بیشتر باشد، رسیدن به اجماع برای تأیید هر بلاک، زمان بیشتری میبرد.
همواره، یکی از موضوعات داغ مورد بحث جامعه بیت کوین، پیدا کردن روشی برای مقیاسپذیر کردن بلاک چین بیت کوین بوده است. هر چه پلتفرم بیت کوین محبوبتر و بزرگتر میشود، این مشکل، بدتر و بدتر میشود و جامعه بیت کوین باید فکری به حال این مشکل کند.
یکی دیگر از کاربردهای سگویت، بهبود مشکل مقیاسپذیری بیت کوین است. زمانی که پیتر ویلیو این سافت فورک را معرفی کرد، به صورت تصادفی مقیاسپذیری بیت کوین را نیز بهبود بخشید. دادههای شاهد، ۶۵ درصد از هر بلاک بیت کوین را به خودشان اختصاص میدهند و این به روز رسانی، با حذف دادههای شاهد، فضای بیشتری برای اطلاعات تراکنشها در هر بلاک، باز کرده است.
در حال حاضر، هر بلاک دارای «وزن بلاک» (Block Set) مشخص ۴ مگابایت است. وزن بلاک، ترکیبی از ۱ مگابایت اطلاعات ذخیره شده در بلاک چین اصلی و دادههای شاهد ذخیره شده در زنجیره جانبی است. به روز رسانی شاهد تفکیک شده، این امکان را فرآهم آورده تا شبکه بیت کوین، بدون تغییر اندازه بلاک چین، اطلاعات بیشتری را پردازش کند.
به لطف این به روز رسانی، میتوان تراکنشهای بیشتری را در یک بلاک جای داد و علاوه بر افزایش سرعت تراکنشها، هزینه تراکنشها نیز کاهش یافته است.
بهبود مشکل مقیاسپذیری بیت کوین با شبکه لایتنینگ
شبکه لایتنینگ، روش دیگری برای حل مشکل مقیاسپذیری بیت کوین است و بدون سگویت بیت کوین کار نمیکند. این شبکه به کاربران اجازه میدهد تا کانالهای پرداخت برای ریزپرداختها یا میکروپیمنتها (Micropayments) ایجاد کنند. برای درک بهتر شبکه لایتنینگ، مثالی برای شما آوردهایم.
تصور کنید که شما به صورت دورکار برای یک شرکت خارجی کار میکنید و آن شرکت، روزانه به شما ۰.۰۰۱ بیت کوین پرداخت میکند. شما میتوانید به جای اینکه تراکنش را در بلاک چین اصلی بیت کوین انجام دهید، یک کانال پرداخت خصوصی برای خودتان بسازید تا بسازید و تراکنشهای شما با آن شرکت خارجی، در آن کانال انجام شود. به این نوع پرداخت در بیت کوین، میکروپیمنت گفته میشود. هر میکروپیمنت باید توسط هر دو طرف قرارداد، امضاء شود و بنابراین، به این نوع تراکنش، تراکنش چندامضایی گفته میشود.
حالا اگر به مدت ۳۰ روز برای آن شرکت کار کنید، در پایان ۳۰ روز، میتوانید کانال پرداخت را ببندید. با این کار، میکروپیمنتها به صورت یک تراکنش ۰.۰۱ بیت کوینی در شبکه پخش میشوند.
این کانالهای پرداخت، شبکه لایتنینگ را میساند که از هزاران میکروپیمنت تشکیل میشود. تراکنشها تنها زمانی به بلاک چین اصلی اضافه میشوند که کانال پرداخت، بسته شود. اما نقش سگویت در شبکه لایتنینگ چیست؟
میکروپیمنتها، تراکنشهای غیرتأیید شدهای هستند که تنها با بسته شدن کانال پرداخت تأیید میشوند و سپس، مجموع میکروپیمنتهای یک کانال، به صورت تراکنشی واحد در شبکه بیت کوین، پردازش میشود.
بدون سگویت بیت کوین، کاربران میتوانند شناسههای تراکنشها را در تراکنشهای چندامضایی، به روش چکشخواری تراکنش، تغییر دهند. با این کار، سیستم کاملا به هم میریزد و به طور کامل، از کار میافتد.
تا اینجا برای شما توضیح دادیم که سگویت چیست و تکنولوژی سگویت، چگونه مانع از چکشخواری تراکنش و بهبود مقیاسپذیری آن میشود. در ادامه، مهمترین مزیتها و معایب SegWit را برای شما توضیح خواهیم داد.
سگویت بیت کوین چه مزیتهایی برای بلاک چین بیت کوین دارد؟
۱- جلوگیری از حملات چکشخواری تراکنش: به روز رسانی سگویت با جدا کردن دادههای شاهد از مابقی دادههای تراکنش، از حملات چکشخواری تراکنش، جلوگیری میکند و امنیت شبکه بیت کوین را بالا میبرد.
۲- افزایش اندازه بلاکها به چهار مگابایت: این پچ بیت کوین، با حذف دادههای شاهد از تراکنشها، امکان افزایش اندازه بلاکها از یک مگابایت به چهار مگابایت را فرآهم آورده است. افزایش بلاکها به معنی سرعت بالاتر و کارمزد پایینتر تراکنشها در شبکه بیت کوین است.
۳- اختیاری شدن وجود دادههای شاهد در تراکنشها: همانطور که گفتیم، به روز رسانی سگویت بیت کوین، نوعی سافت فورک و کاملا برگشتپذیر است. بنابراین، کاربران میتوانند انتخاب کنند که دادههای شاهد در تراکنشها وجود داشته باشند یا خیر. همانطور که در بالا دیدید، وجود نداشتن دادههای شاهد در تراکنشها به معنی بهبود امنیت شبکه بیت کوین، افزایش سرعت تراکنشها و کاهش کارمزدها است. با این به روز رسانی، دادههای شاهد تنها زمانی مورد نیاز هستند که گرهها بخواهند تراکنشی را تأیید کنند.
۴- تأیید ساده شده پرداخت (Simplified Payment Verification): یا SPV به دلیل کاهش اندازه تستهای تأیید که پهنای باند را اشغال میکنند، سبب بهبود عملکرد شبکه بیت کوین میشود.
۵- کاهش مشکل مقیاسپذیری بیت کوین: پچ سگویت با حذف دادههای شاهد از تراکنشها و نیز، فرآهم آوردن امکان ایجاد شبکه لایتنینگ، مشکل مقیاسپذیری بیت کوین را کمتر کرده است.
۶- کاهش رقابت برای تراکنشها: کاهش رقابت گرهها برای تأیید تراکنشها توسط این پچ بیت کوین، سبب کاهش کارمزد هر تراکنش شده است.
به روز رسانی سگویت چه ایراداتی دارد؟
۱- گرههای زیادی از سگویت بیت کوین استفاده نمیکنند: بسیاری از گرهها و ماینرها از این سافت فورک بیت کوین استفاده نمیکنند زیرا کارمزد تراکنشها در این سافت فورک، بسیار پایینتر از بلاک چین اصلی بیت کوین است که این موضوع، مستقیما روی پاداش اثبات کار آنها، اثر میگذارد.
بعضی دیگر از سرویسهای بیت کوین مثل کیف پولهای دیجیتالی یا والتها نیز استقبال خوبی از SegWit نکردهاند. در فوریه ۲۰۱۸ و تقریبا ۶ ماه پس از فعال شدن این به روز رسانی، تنها ۱۴ درصد از تراکنشهای بیت کوین در سافت فورک سگویت انجام شدند. البته، این آمار از آن زمان تاکنون، بهبود داشتهاند اما هنوز، اکثر تراکنشهای بیت کوین، روی بلاک چین اصلی انجام میشوند.
۲- این به روز رسانی، راهحلی کوتاه-مدت برای مشکلات بلند-مدت بلاک چین بیت کوین است: انتقاد اصلی بسیاری از توسعهدهندگان بیت کوین به سگویت این است که مشکل مقیاسپذیری بیت کوین را فقط برای مدت کوتاهی کاهش میدهد. در واقع، این پچ، بیت کوین را مقیاسپذیر نمیکند بلکه فقط کمی زمان میخرد تا راهحلی دائمی برای مشکل مقیاسپذیری بیت کوین پیدا شود.
۳- SegWit سبب اختلاف در جامعه بیت کوین شده است: اختلاف نظرهای پیرامون این به روز رسانی سبب شده تا جامعه بیت کوین چند-پاره شود و هارد فورکهای متعددی مثل بیت کوین کش، ایجاد شوند.
جمعبندی
هر کدام از شبکههای ارزهای دیجیتال، مشکلات خاص خودشان را دارند و بین کوین نیز از این قاعده، مستثنی نیست. برای اینکه پروتکل شبکه بلاک چین بیت کوین، رفته رفته، بهبود پیدا کند و مشکلات و باگهای آن کمتر شود، هر از چندگاهی، آپدیتهایی به صورت سافت فورک یا حتی هارد فورک برای آن ارائه میشود.
یکی از سافت فورکها، به روز رسانی سگویت بود که برای حل مشکل چکشخواری تراکنش، توسط پیتر ویلیو، معرفی شد. چکشخواری تراکنش، نوعی کلاهبرداری در بلاک چین بیت کوین است که با تغییر دادههای شاهد انجام میشود. SegWit با حذف کردن این دادهها از تراکنشها، مشکل چکشخواری را حل کرده است.
البته، چکشخواری تراکنش تنها بهبود تکنولوژی سگویت بیت کوین برای بلاک چین معتبرترین رمزارز موجود در بازار نبوده است. با حذف دادههای شاهد از تراکنشها، اندازه هر بلاک از ۱ مگابایت به ۴ مگابایت افزایش پیدا کرده و در نتیجه، سرعت انجام تراکنشها به طور قابل توجهی، بالا رفته است. کاهش کارمزد تراکنشها نیز از دیگر مزایای افزایش اندازه بلاکها است.
با حذف شدن دادههای شاهد از تراکنشها در بلاک چین بیت کوین، امکان ایجاد شبکه لایتنینگ نیز فرآهم آمده است. این شبکه، مجموعهای از کانالهای پرداخت شخصی است که کارایی شبکه بیت کوین را تا حد زیادی افزایش میدهند و در بهبود مقیاسپذیری بیت کوین، نقش دارند.
سگویت بیت کوین، با وجود تمام مزایایی که برای آن گفتیم، راهحلی همیشگی برای مشکل مقیاسپذیری ارائه نکرده زیرا بیت کوین، روز به روز محبوبتر میشود و با افزایش تعداد گرهها و بزرگتر شدن شبکه بیت کوین، دوباره مشکل کاهش سرعت شبکه و افزایش کارمزد تراکنشها، تشدید میشود. به علاوه، گرههای زیادی از بیت کوین استفاده نمیکند و اختلاف نظرهای زیادی پیرامون این سافت فورک در جامعه بیت کوین وجود دارد و منجر به ایجاد هارد فورکهایی مثل بیت کوین کش شده است.