سگویت (SegWit) چیست و چرا این پروتکل برای بیت کوین مهم است؟
بسیاری از افراد سگویت را راهکاری برای مشکل مقیاسپذیری شبکه بیت کوین میدانند. حداکثر اندازه بلاک در پروتکل اصلی ۱ مگابایت است. به همین دلیل تعداد تراکنشهایی که شبکه بیت کوین میتواند در هر ثانیه پردازش کند، تقریبا به ۷ تراکنش محدود شده است.
این موضوع باعث میشود، رشد بالقوه شبکه بیت کوین متوقف و از تبدیل شدن به یک سیستم پرداخت با حجم تراکنشهای زیاد جلوگیری شود.
اگرچه بهروزرسانی سگویت تعداد تراکنشهای موجود در هر بلاک را افزایش داده است، اما هدف اولیه آن برطرف کردن یک باگ در کد بیت کوین به اسم انعطافپذیری تراکنش (Transaction Malleability) بوده است. این نقص به افراد امکان میداد، جزییات کوچکی را تغییر دهند که منجر به تغییر آیدی تراکنش میشد و در عین حال محتوای تراکنش را بدون تغییر باقی میگذاشت. اگرچه این موضوع برای بیت کوین یک مشکل مهم به حساب نمیآمد، اما از توسعه ویژگیهای پیچیدهتر نظیر پروتکلهای لایه دوم یا قراردادهای هوشمند جلوگیری میکرد. همانطور که از اسم سگویت مشخص است (کلمه Segregate به معنای جداسازی یا تفکیک و Witnesses به معنای شاهدان يا همان امضاهای تراکنشها هستند)، سگویت با حذف اطلاعات مربوط به امضا و ذخیرهسازی آن خارج از بلاک تراکنش مبنا، انعطافپذیرتری تراکنش را اصلاح میکند. بدین ترتیب میتوان امضاها و اسکریپتها را بدون تغییر آیدی تراکنش تغییر داد. سگویت در واقع یک ارتقاء برای پروتکل بیت کوین است که با هدف مقیاسپذیری بیشتر شبکه بیت کوین و کاهش زمان انجام تراکنشها با افزایش ظرفیت بلاکها انجام شد. یکی دیگر از اهداف سگویت، افزایش امنیت بیت کوین با ایجاد اطمینان از عدم تغییر اطلاعات تراکنشها بود. سگویت پروتکل شبکه بیت کوین را برای شناسایی تغییرات کوچک در اطلاعات تراکنشها بهبود بخشید تا هر تغییری را شناسایی و آن تراکنش و بلاک را نامعتبر اعلام کند. برای درک بهتر ماهیت سگویت، در ابتدا بهتر است نحوه فعالیت و کاربرد شبکه بیت کوین را بررسی کنیم. ارز دیجیتال بیت کوین یک سرور مرکزی ندارد و به جای آن، به کمک یک شبکه متشکل از هزاران کامپیوتر در سراسر جهان فعالیت میکند. علاوه بر کاربران و معاملهگران، برخی مشارکتکنندگان نیز در این شبکه فعالیت دارند که به آنها استخراجکننده یا ماینر گفته میشود. استخراجکنندگان با به اشتراک گذاشتن توان پردازشی رایانههای خود، تراکنشهای شبکه بیت کوین را بررسی و با تأیید و پردازش بلاکها، از شبکه بیت کوین پاداش دریافت میکنند.
بلاکها در بلاک چین وظیفه ذخیره اطلاعات را دارند و دادههای هر تراکنش انجامشده در شبکه بیت کوین، در بلاکها ذخیره میشوند. هر بلاک فضای ذخیرهسازی محدود و مشخصشده خود را در شبکه بلاک چین دارد و هرچه بلاکها ظرفیت بیشتری داشته باشند، تراکنشهای بیشتری را در خود جای میدهند. در نتیجه، استخراجکنندگان نیاز به پردازش بلاکهای کمتری دارند. در شبکه بیت کوین، فضای ذخیرهسازی داده هر بلاک تنها ۱ مگابایت است. علاوه بر آن، در این شبکه، میان ایجاد هر بلاک جدید باید فاصله ۱۰ دقیقهای حفظ شود. بنابراین، علاوه بر اینکه امکان اضافه کردن تنها تعداد کمی از تراکنشها به هر بلاک شبکه بیت کوین وجود داشت، میان ایجاد هر بلاک نیز تأخیر چند دقیقهای ایجاد میشد. در نتیجه، با افزایش محبوبیت بیت کوین، سرعت شبکه این ارز دیجیتال کاهش یافت و پردازش تراکنشها به کندی انجام میشد. از همین رو، توسعهدهندگان بلاک چین و علاقهمند به بیت کوین دست به کار شدند تا راه حلی را برای این بحران ارائه دهند. در نتیجه این تلاشها، پروتکل سگویت توسط فردی به نام Pieter Wuille ایجاد و در سال ۲۰۱۷ ارائه شد. نحوه فعالیت سگویت پیچیدگیهای فنی خود را دارد، اما در تعریف ساده و قابل درک این پروتکل، اطلاعات تراکنشهای بلاک چین را به دو بخش تقسیم میکند تا از حجم اطلاعات ورودی به بلاکها کاسته شود. در نتیجه این تفکیک داده، فضای بیشتری در شبکه بیت کوین ایجاد میشود و از این طریق، تراکنشهای بیشتری را میتوان به بلاکچین اضافه کرد. در مجموع، سگویت نحوه ذخیره دادههای بیت کوین را تغییر داد و با بهبود محدودیت اندازه بلاکهای شبکه، به آن کمک کرد تا سرعت بیشتری پیدا کند.
چرا این پروتکل برای بیت کوین مهم است؟
بدون سگویت، با ادامه روند رو به رشد محبوبیت بیت کوین، شبکه این ارز دیجیتال با مشکلات بزرگی مواجه میشد و سرعت آن به شدت کاهش مییافت. در نتیجه این مشکل، بیت کوین ممکن بود هرگز نتواند به جایگاه امروزی دست پیدا کند و تخت پادشاهی خود را سالها پیش تسلیم دیگر شبکههای بلاک چین پیشرفته بازار میکرد. علاوه بر بهبود مقیاسپذیری و سرعت، سگویت در افزایش امنیت شبکه بیت کوین نیز کاربرد دارد و از اعمال تغییرات در اطلاعات تراکنشهای ثبتشده جلوگیری میکند. سگویت همچنین مقدمهای برای بهروزرسانی بزرگ و مهم تپ روت (Taproot) بیت کوین بود که امکان اعتبارسنجی سریعتر تراکنشها را فراهم کرد. در نهایت، لازم به ذکر است که سگویت هماکنون یک راه حل اختیاری برای انجام تراکنشهای بیت کوین است و استفاده کردن از آن به شما بستگی دارد. در زمان انتقال بیت کوینهای خود در صرافیهای ارز دیجیتال مانند بیتشال، شما میتوانید به جای تراکنش عادی گزینه سگویت را انتخاب و آدرس کیف پول سگویت بیت کوین خود را وارد کنید تا تراکنشها با سرعت بیشتری انجام شوند.
نحوه عملکرد سگویت چگونه است؟
پاسخ به سوال «سگویت چیست؟» ممکن است توجه بسیاری از افراد تازهوارد را به سمت عملکرد سگویت جلب کند. هدف اصلی سگویت بر بهبود راندمان شبکههای بلاکچینی معطوف شده است. به عبارت سادهتر، سگویت با تفکیک یک تراکنش به دو بخش مجزا، به کاهش بار تراکنشها در هر بلاک کمک میکند و باعث رشد کارآمدتر تعداد تراکنشها در هر بلاک خواهد شد.
موضوع دیگری که در عملکرد سگویت مطرح است، اثرگذاری آن بر سرعت انجام تراکنش است. برای شفافسازی این موضوع باید نحوه عملکرد سگویت را دقیقتر بررسی کنیم. بخش اول تراکنش شامل آدرس کیف پول ارسالکننده و دریافتکننده است و بخش دوم تراکنش شامل امضاهای تراکنش یا اطلاعات شاهد میشود. سگویت به حذف اطلاعات شاهد از بلاک اصلی کمک میکند و در نتیجه به کاهش کارآمد اندازه تراکنش منجر میشود. بدین ترتیب، تراکنش فضای کمتری اشغال میکند و سرعت انجام تراکنش در هر بلاک تضمین میشود. نکته مهم دیگر در عملکرد سگویت به اصلاح هشهای تراکنش مربوط است. این موضوع حول مشکلات مرتبط با انعطافپذیری تراکنش میچرخد.
حل مشکل انعطافپذیری تراکنش توسط سگویت
روشی که سگویت پیاده کرده است و اطلاعات شاهد را تفکیک میکند، برجستهترین نکته حل مشکل انعطافپذیری تراکنش است. سگویت میتواند اطلاعات شاهد را از بلاک جدا کند و نگذارد اطلاعات تراکنش را تغییر داد. بهروزرسانی سگویت یک زنجیره جانبی جداگانه و خارج از شبکه بلاکچین اصلی برای ذخیرهسازی اطلاعات شاهد ایجاد میکند. بدین ترتیب، کلاهبردارانی همانند استیون دیگر نمیتوانند آیدی تراکنشها را تغییر دهند. نکته مهم دیگر درباره حل مشکل انعطافپذیری تراکنش توسط سگویت، پشتیبانی از نسخههای قبلی (Backward Compatibility) است. نودهایی که با پروتکل سگویت بهروزرسانی شدهاند، همچنان میتوانند با نودهایی که بهروزرسانی نشدهاند همکاری کنند. به چنین بهروزرسانیهایی، سافت فورک (Soft Fork) گفته میشود. از طرف دیگر، هاردفورکها از نسخههای قبلی پشتیبانی نمیکنند و این موضوع ممکن است به تفکیک شبکههای بلاکچین منجر شود؛ بنابراین، سگویت راهکاری برای ثبت و ذخیرهسازی اطلاعات شاهد در بلاکچین اصلی در اختیار دارد. دستورالعملهای دقیق نحوه استفاده از سگویت نشان میدهند که سگویت به رمزگذاری تمام اطلاعات شاهد در زنجیره جانبی میپردازد، در حالی که کد اصلی و مبنا را در بلاکچین اصلی ذخیره میکند.
ثبت دیدگاه
0دیدگاه
دیدگاهی ثبت نشده است.
اولین نفری باشید که دیدگاهتان ثبت میشود.