همانطور که می دانیم تراکنشهای بیت کوین روی مجموعهای از بلاکها به نام بلاکچین ثبت میشود. این بلاکها تا حداکثر ۱ مگابایت ظرفیت دارند و حدود ۲۷۰۰ تراکنش در هر بلاک جای میگیرد. اما این مسئله باعث بروز مشکلاتی در حین نوسان قیمت و ازدحام کاربران میشود. اینجاست که Segwit وارد ماجرا میشود. در مقایسه با بلاکهای غیر Segwit که اصطلاحا بلاکهای لگسی یا قدیمی (Legacy Blocks) نامیده میشوند، بلاکهای Segwit با حجم حداکثر ۴ مگابایت بلاکهای بزرگتری را ارائه میدهند. Segwit شامل تراکنش اصلی و یک بلاک اضافه (که شامل شاهد یا امضای دیجیتال است) میشود. در این بلاکها، اطلاعات شاهد خالی گذاشته میشود. بنابراین فضای اضافی اشغال نمیکند.
سگویت چیست؟
سگویت یک بهروزرسانی در شبکه بیت کوین است که نحوه ذخیرهسازی اطلاعات و دادهها را تغییر میدهد. ایده سگویت در ابتدا توسط یکی از توسعهدهندگان به اسم پیتر ویول (Pieter Wiulle) در کنفرانس مقیاسپذیری بیت کوین در ماه دسامبر ۲۰۱۵ مطرح شد. سگویت بعد از ۲ سال و در تاریخ ۱۰ می ۲۰۱۷ (۲۰ اردیبهشت ۱۳۹۶) ابتدا روی شبکه لایت کوین پیادهسازی و سپس در تاریخ ۲۳ آگوست ۲۰۱۷ (۱ شهریور ۱۳۹۶) روی شبکه بیت کوین فعال شد. بسیاری از افراد سگویت را راهکاری برای مشکل مقیاسپذیری شبکه بیت کوین میدانند. حداکثر اندازه بلاک در پروتکل اصلی ۱ مگابایت است. به همین دلیل تعداد تراکنشهایی که شبکه بیت کوین میتواند در هر ثانیه پردازش کند، تقریبا به ۷ تراکنش محدود شده است. این موضوع باعث میشود، رشد بالقوه شبکه بیت کوین متوقف و از تبدیل شدن به یک سیستم پرداخت با حجم تراکنشهای زیاد جلوگیری شود. به زبان ساده، سگویت یک بهروزرسانی است که باعث میشود، اندازه تراکنشها در شبکه بیت کوین سبکتر شود. اگرچه بهروزرسانی سگویت تعداد تراکنشهای موجود در هر بلاک را افزایش داده است، اما هدف اولیه آن برطرف کردن یک باگ در کد بیت کوین به اسم انعطافپذیری تراکنش (Transaction Malleability) بوده است. این نقص به افراد امکان میداد، جزییات کوچکی را تغییر دهند که منجر به تغییر آیدی تراکنش میشد و در عین حال محتوای تراکنش را بدون تغییر باقی میگذاشت. اگرچه این موضوع برای بیت کوین یک مشکل مهم به حساب نمیآمد، اما از توسعه ویژگیهای پیچیدهتر نظیر پروتکلهای لایه دوم یا قراردادهای هوشمند جلوگیری میکرد. همانطور که از اسم سگویت مشخص است (کلمه Segregate به معنای جداسازی یا تفکیک و Witnesses به معنای شاهدان يا همان امضاهای تراکنشها هستند)، سگویت با حذف اطلاعات مربوط به امضا و ذخیرهسازی آن خارج از بلاک تراکنش مبنا، انعطافپذیرتری تراکنش را اصلاح میکند. بدین ترتیب میتوان امضاها و اسکریپتها را بدون تغییر آیدی تراکنش تغییر داد.
سگویت چگونه کار میکند؟
با دانستن چگونگی انجام تراکنشهای بیت کوین و ساختار بلاک در بلاک چین آن و همچنین مشکلاتی که در نتیجه این شرایط به وجود میآیند، زمان آن رسیده که بدانیم سگویت چگونه این مشکل را برطرف میکند. سگویت با جداسازی دادههای مربوط به امضای دیجیتال از تراکنشها، اندازهی بلاک را افزایش میدهد به همین علت است که نام آن از عبارت Segregate به معنی جدا کردن و witnesses به معنی تصدیقها یا همان امضاها گرفته شده است. به این ترتیب سگویت با یک تیر دو نشان زد؛ فضای بلاک خالیتر شد و مشکل انعطافپذیری تراکنشها برطرف شد. سگویت در واقع دادههای مربوط به امضای بخش اطلاعات ورودی را به بخش جداگانهای که در انتهای بلاک قرار دارد انتقال میدهد و به این ترتیب محاسبه شناسه تراکنش را بسیار آسانتر میکند و در نتیجه تا حد زیادی از حمله انعطافپذیری جلوگیری میکند. سگویت نه تنها این مشکل اساسی را از سر راه بیت کوین برداشت، بلکه زمینه را برای روی کار آمدن راهکارهای مقیاسپذیری لایهی دوم فراهم کرد. یکی از این راهکارها شبکهی لایتنینگ بود. با خارج شدن حجم عمدهای از تراکنشها از زنجیرهی اصلی و پردازش آنها بهصورت برونزنجیرهای، ظرفیت شبکه بهشکل چشمگیری افزایش مییابد.
نتیجه گیری :
طرح سگویت، تعداد تراکنشها در بلاک را افزایش میدهد و مقیاسپذیری بیت کوین را بهبود میبخشد. همچنین مشکلات انعطافپذیری را برطرف خواهد کرد و به فعالسازی لایتنینگ کمک میکند. در آخر اینکه سگویت علاوهبر کاهش کارمزد تراکنشهای بیت کوین، سرعت تایید آنها را نیز افزایش میدهد. اما با همهی اینها اجرای سگویت سبب شد در سال ۲۰۱۷، عدهای از مخالفان این طرح به یک بلاکچین جدید به نام بیت کوین کش فورک کنند و میتوان گفت سگویت سبب دو نیم شدن جامعهی بیت کوین شد؛ که این امر خوشایند بسیاری از فعالان این حوزه نیست.