در این مطلب، مکانیزم فنی اما جذاب سگویت را به سادهترین شکل ممکن بررسی میکنیم و به شما نشان میدهیم این فناوری چگونه با تغییر ساختار بلاکها، هزینههای شما را کاهش داده است. از تشخیص انواع آدرسهای بیت کوین تا یادگیری تفاوتهای فنی آنها، همه آن چیزی است که در ادامه خواهید آموخت تا از این پس با اطمینان و دانش کاملتری تراکنشهای خود را مدیریت کنید.
سگویت چیست و چه نقشی در شبکه بیت کوین دارد؟
تصور کنید بیت کوین یک دفترچه یادداشت بزرگ است که در هر صفحهی آن، مقدار محدودی تراکنش نوشته میشود. با گذشت زمان و افزایش محبوبیت بیت کوین، این صفحات به سرعت پر میشدند و کاربران مجبور بودند برای اینکه تراکنش خرید بیت کوین آنها زودتر در صفحه نوشته شود، هزینه یا کارمزد بیشتری بپردازند. اینجا بود که نیاز به یک راهکار هوشمندانه برای مدیریت بهتر فضای این صفحات احساس شد و سگویت به عنوان فرشتهی نجات وارد میدان شد. در ادامه این مفهوم را به صورت دقیق بررسی میکنیم.
تعریف ساده مفهوم Segregated Witness
عبارت سگویت یا SegWit مخفف دو کلمه Segregated Witness است. اگر بخواهیم این عبارت را کلمه به کلمه ترجمه کنیم، به معنی شاهد جدا شده است. اما این نام شاید در نگاه اول کمی گیجکننده باشد. بیایید آن را ساده کنیم:
در دنیای رمزنگاری و بیت کوین، کلمهی Witness یا شاهد، در واقع اشاره به همان امضای دیجیتال (Digital Signature) دارد که پای هر تراکنش زده میشود تا اعتبار آن تایید گردد. کلمهی Segregated هم به معنای جداسازی است.
پس سگویت به زبان خیلی ساده یعنی: جداسازی امضای دیجیتال از بخش اصلی اطلاعات تراکنش.
برای اینکه بهتر متوجه شوید، یک نامهی اداری را در نظر بگیرید که باید در یک پاکت کوچک جا شود. اگر مهر و امضای پای نامه خیلی بزرگ و جاگیر باشد، فضای کمی برای نوشتن متن اصلی نامه باقی میماند. سگویت میگوید: بیایید امضا را از پایین نامه ببریم و روی یک برگه ضمیمه منگنه کنیم. با این کار، متن نامهی اصلی جای کمتری میگیرد و ما میتوانیم نامههای بیشتری را در آن پاکت کوچک قرار دهیم.
هدف اصلی سگویت در شبکهی بیت کوین دقیقا همین بود؛ آزاد کردن فضای بلاکها برای جای دادن تراکنشهای بیشتر، بدون اینکه نیاز باشد سایز اصلی بلاک را تغییر دهیم.
تاریخچه کوتاه و خالق ایده سگویت (Pieter Wuille)
این ایده یکشبه به وجود نیامد. در کنفرانس مقیاسپذیری بیت کوین که در دسامبر سال 2015 در هنگکنگ برگزار شد، یک توسعهدهندهی نابغه به نام پیتر وایل (Pieter Wuille) این ایده را مطرح کرد. پیتر وایل یکی از موسسان شرکت بلاکاستریم و از توسعهدهندگان اصلی بیت کوین کور (Bitcoin Core - نرمافزار اصلی شبکه بیت کوین) است.
او پیشنهاد داد که برای حل مشکل شلوغی شبکه و همچنین رفع برخی باگهای امنیتی، از روش سگویت استفاده شود. البته پیادهسازی این ایده زمانبر بود و در نهایت پس از بحثهای فراوان در جامعهی بیت کوین، در آگوست سال 2017 به عنوان یک سافت فورک (Soft Fork - بهروزرسانی نرمافزاری که با نسخههای قدیمی هم سازگار است) روی شبکه فعال شد.
تفاوت ساختاری بلاکها قبل و بعد از اجرای سگویت
برای درک عمیقتر تاثیر سگویت، باید ببینیم که یک بلاک در شبکه بیت کوین قبل و بعد از این بهروزرسانی چه تغییری کرده است:
- ساختار قدیمی (Legacy): در مدل قدیمی، هر بلاک محدودیت حجمی مشخصی معادل 1 مگابایت داشت. تمام اطلاعات یک تراکنش، شامل اطلاعات فرستنده، گیرنده و از همه مهمتر دادههای امضا (Signature Data)، همگی باید در همین 1 مگابایت جا میشدند. نکته منفی اینجا بود که دادههای امضا حجم زیادی (گاهی تا 65 درصد حجم کل تراکنش) را اشغال میکردند و باعث میشدند تعداد تراکنشهای کمی در یک بلاک جا شود.
- ساختار جدید (SegWit): سگویت ساختار بلاک را تغییر داد. در این روش، دادههای امضا از بخش اصلی تراکنش بیرون کشیده شدند و در یک فضای جداگانه در انتهای بلاک قرار گرفتند. این کار دو نتیجهی مهم داشت:
- آزادسازی فضا: چون بخش سنگین امضا از بدنهی اصلی تراکنش جدا شد، حجم ظاهری تراکنشها کم شد و بلاکها توانستند تعداد بیشتری تراکنش را در خود جای دهند.
- مفهوم وزن بلاک: به جای محدودیت 1 مگابایتی ساده، معیار جدیدی به نام وزن بلاک (Block Weight) معرفی شد که اجازه میدهد بلاکها به صورت تئوری تا 4 مگابایت داده را مدیریت کنند (البته به شرطی که بخش زیادی از آن دادههای امضا باشد).
بهطور خلاصه، سگویت مانند یک فشردهسازی هوشمند عمل کرد که بدون تغییر قوانین اصلی و سختگیرانهی بیت کوین، ظرفیت بزرگراه تراکنشها را افزایش داد.
بررسی چالشهای قدیمی شبکه و دلیل نیاز به آپدیت SegWit
برای اینکه ارزش واقعی سگویت را درک کنیم، باید به عقب برگردیم و ببینیم شبکهی بیت کوین قبل از سال 2017 با چه مشکلاتی دستوپنج نرم میکرد. بیت کوین در روزهای اولیهی خود مانند یک جادهی خلوت بود که خودروها به راحتی و با سرعت در آن حرکت میکردند؛ اما با افزایش محبوبیت جهانی آن، این جاده به شدت شلوغ شد و ترافیک سنگینی ایجاد گردید. توسعهدهندگان متوجه شدند که ساختار قدیمی پاسخگوی این حجم از استقبال نیست و شبکه با دو چالش اساسی روبرو شده است.
مفهوم مقیاسپذیری و محدودیت سایز بلاک در بیت کوین
اولین و مهمترین چالش، مسئلهی مقیاسپذیری (Scalability) بود. مقیاسپذیری به زبان ساده یعنی توانایی یک سیستم برای بزرگ شدن و مدیریت تعداد زیادی از کاربران بدون افت سرعت و کیفیت.
ساتوشی ناکاموتو، خالق بیت کوین، برای جلوگیری از حملات سایبری و اسپم شدن شبکه، سایز هر بلاک را به 1 مگابایت محدود کرده بود. این محدودیت در سالهای ابتدایی مشکلی ایجاد نمیکرد، اما وقتی تعداد تراکنشها زیاد شد، این فضای 1 مگابایتی به سرعت پر میشد.
نتیجه چه بود؟
- صفهای طولانی از تراکنشهای در انتظار تایید شکل گرفت.
- کاربران مجبور شدند برای اینکه تراکنش آنها زودتر تایید شود، رقابت کنند و کارمزدهای بسیار بالاتری بپردازند.
این وضعیت نشان داد که بیت کوین برای تبدیل شدن به یک سیستم پرداخت جهانی، نیاز به فضای بیشتری دارد.
مشکل انعطافپذیری تراکنش یا Transaction Malleability چیست؟
چالش دوم کمی فنیتر اما بسیار حیاتی بود: باگی به نام انعطافپذیری تراکنش یا همان چکشخواری.
برای درک این موضوع، بیایید تصور کنیم هر تراکنش بیت کوین یک "کد پیگیری" منحصربهفرد دارد که به آن شناسهی تراکنش (TxID) میگویند. در سیستم قدیمی، این کد پیگیری بر اساس تمام اطلاعات تراکنش، از جمله امضای دیجیتال کاربر ساخته میشد.
مشکل اینجا بود که امضای دیجیتال یک ماهیت ریاضی خاص دارد؛ یعنی میتوان شکل ظاهری کد امضا را کمی تغییر داد بدون اینکه اعتبار آن باطل شود (مثل اینکه عدد 4 را به صورت 2+2 بنویسیم؛ ظاهر تغییر کرده اما ارزش همان است).
هکرها یا افراد سودجو میتوانستند قبل از تایید نهایی تراکنش، شکل امضا را تغییر دهند. با این کار:
تراکنش همچنان معتبر بود و پول منتقل میشد. اما کد پیگیری (TxID) تغییر میکرد.
این تغییر کد پیگیری باعث میشد فرستنده فکر کند تراکنش انجام نشده است (چون کد پیگیری اصلی را در شبکه پیدا نمیکرد)، در حالی که پول از حسابش کسر شده بود. این نقص فنی مانع بزرگی برای توسعهی راهکارهای پیشرفته و لایه دوم بود، زیرا این سیستمها به ثبات کد پیگیری نیاز حیاتی داشتند.
چگونه دادههای امضا فضای بلاک را اشغال میکردند؟
حالا بیایید این دو مشکل را کنار هم بگذاریم. همانطور که گفتیم، هر بلاک فقط 1 مگابایت ظرفیت داشت. بررسیهای فنی نشان میداد که بخش زیادی از این فضای ارزشمند توسط دادههای امضا (Witness Data) اشغال میشود.
دادههای امضا در واقع همان رمزنگاریهای پیچیدهای هستند که اثبات میکنند شما مالک واقعی بیت کوین هستید. جالب است بدانید که در تراکنشهای قدیمی، امضاها حدود 65 درصد از حجم کل یک تراکنش را تشکیل میدادند!
این یعنی بلاکهای بیت کوین پر از دادههای امنیتی و امضا شده بودند و فضای کمی برای اصل اطلاعات تراکنش (مانند فرستنده، گیرنده و مبلغ) باقی میماند.
بنابراین، راهحل منطقی این بود: اگر بتوانیم این امضاهای حجیم را از بدنهی اصلی تراکنش بیرون بکشیم و جدا کنیم، هم فضای بلاک آزاد میشود (حل مشکل مقیاسپذیری) و هم کد پیگیری تراکنش دیگر وابسته به امضا نخواهد بود (حل مشکل چکشخواری). این دقیقا همان کاری است که سگویت انجام داد.
سگویت چگونه کار میکند و مشکلات را حل کرده است؟
اکنون که با مشکلات قدیمی شبکه آشنا شدید، نوبت به بررسی راهکار سگویت میرسد. سگویت مانند یک جراح ماهر، بدون اینکه به قلب تپندهی بیت کوین (قوانین اصلی) آسیبی برساند، ساختار داخلی آن را اصلاح کرد. این بهروزرسانی با تغییر چیدمان دادهها، هم سرعت را بالا برد و هم امنیت را افزایش داد. بیایید ببینیم این جادو چگونه اتفاق میافتد.
مکانیزم جداسازی امضای دیجیتال از دادههای تراکنش
همانطور که در بخش قبل اشاره کردیم، مشکل اصلی این بود که امضای دیجیتال، فضای زیادی از بلاک را اشغال میکرد. سگویت با یک ترفند هوشمندانه وارد عمل شد:
در تراکنشهای سنتی، امضای دیجیتال (Witness) درست در کنار اطلاعات فرستنده و گیرنده قرار داشت. سگویت آمد و گفت: "امضا برای تایید تراکنش ضروری است، اما نیازی نیست که در بدنهی اصلی تراکنش جا خوش کند."
بنابراین، سگویت دادههای امضا را از بخش اصلی تراکنش جدا کرد و آنها را به انتهای ساختار بلاک، در فضایی مجزا فرستاد. اگر بخواهیم یک مثال ملموس بزنیم، تصور کنید میخواهید با هواپیما سفر کنید.
- حالت قبل از سگویت: شما (اطلاعات تراکنش) مجبور بودید چمدانهای سنگین خود (امضا) را روی پای خود در کابین مسافران نگه دارید. این کار باعث میشد فضای کابین خیلی زود پر شود و مسافران کمتری سوار شوند.
- حالت بعد از سگویت: یک واگن جداگانه برای بارها در نظر گرفته شد. حالا شما چمدان سنگین را تحویل قسمت بار میدهید و خودتان با فضای بیشتر در کابین مینشینید. در نتیجه، هواپیما میتواند مسافران (تراکنشهای) بیشتری را حمل کند.
تاثیر حذف امضا بر افزایش ظرفیت بلاک و کاهش وزن تراکنش
با جدا شدن امضاها، فضای خالی قابل توجهی در بلاکهای 1 مگابایتی ایجاد شد، اما سگویت پا را فراتر گذاشت و شیوهی محاسبهی حجم بلاک را هم تغییر داد. قبل از سگویت، همه چیز بر اساس "بایت" و "مگابایت" سنجیده میشد، اما سگویت واحد جدیدی به نام وزن بلاک (Block Weight) را معرفی کرد.
در این سیستم جدید، دادهها ارزشگذاری متفاوتی دارند:
- دادههای اصلی تراکنش: (مثل آدرس فرستنده و گیرنده) ضریب وزنی 4 میگیرند (سنگین و مهم).
- دادههای امضا (Witness): ضریب وزنی 1 میگیرند (سبکتر محاسبه میشوند).
این تغییر محاسبه چه فایدهای دارد؟
- تخفیف در کارمزد: چون دادههای امضا (که حجم زیادی دارند) حالا وزن کمتری در شبکه اشغال میکنند، کارمزد نهایی برای کاربر ارزانتر تمام میشود.
- افزایش ظرفیت واقعی: اگرچه روی کاغذ سایز بلاک همچنان محدودیتهایی دارد، اما با این روش فشردهسازی و وزندهی جدید، بلاکهای بیت کوین عملاً میتوانند تا حدود 4 برابر دادهی بیشتری نسبت به قبل در خود جای دهند (چیزی معادل 4 مگابایت تئوری).
رفع باگ انعطافپذیری تراکنش و امنیت شبکه
شاید مهمترین دستاورد فنی سگویت که کمتر به چشم کاربران عادی میآید، حل مشکل چکشخواری یا همان انعطافپذیری تراکنش باشد.
همانطور که گفتیم، قبلاً شناسهی تراکنش (TxID) با استفاده از دادههای امضا ساخته میشد و اگر کسی امضا را دستکاری میکرد، شناسه عوض میشد.
سگویت با جدا کردن امضا از بدنهی اصلی، این معادله را برای همیشه حل کرد. در روش سگویت، شناسهی تراکنش فقط از اطلاعات اصلی (فرستنده، گیرنده، مبلغ) ساخته میشود و امضای دیجیتال دیگر نقشی در تولید این شناسه ندارد.
نتیجهی این تغییر ساختاری بسیار درخشان بود:
- شناسهی ثابت: حتی اگر هکرها سعی کنند امضا را دستکاری کنند، چون امضا دیگر جزو مواد اولیهی ساخت شناسه نیست، "کد پیگیری تراکنش" هیچ تغییری نمیکند و ثابت میماند.
- امنیت لایه دوم: با حل این مشکل، بستر برای پروژههای بزرگی مثل شبکه لایتنینگ (Lightning Network - راهکاری برای تراکنشهای بسیار سریع و ارزان بیت کوین) فراهم شد. شبکه لایتنینگ برای عملکرد صحیح به شناسههای تراکنش ثابت و غیرقابل تغییر نیاز داشت و سگویت این جاده را هموار کرد.
تفاوت انواع آدرسها و فرمتهای مختلف سگویت
وقتی وارد دنیای بیت کوین میشوید و قصد دارید کیف پول (Wallet) خود را بسازید یا آدرس آن را برای کسی بفرستید، ممکن است با حروف و اعداد مختلفی روبرو شوید که کمی گیجکننده به نظر برسند. شاید از خود بپرسید چرا آدرس دوست من با عدد 1 شروع میشود اما آدرس من با bc1؟ آیا این تفاوتها مهم هستند؟
پاسخ مثبت است. انتخاب نوع آدرس، دقیقاً مانند انتخاب نوع سرویس اینترنت است؛ همهی آنها شما را به شبکه متصل میکنند، اما سرعت و هزینهی آنها متفاوت است. در شبکه بیت کوین سه نوع آدرس اصلی وجود دارد که شناخت آنها به شما کمک میکند تا در هزینههای تراکنش صرفهجویی کنید.
آشنایی با آدرسهای لگسی Legacy (شروع با عدد 1)
آدرسهای لگسی یا سنتی، قدیمیترین فرمت آدرس در شبکهی بیت کوین هستند. این آدرسها همان فرمت اولیهای هستند که ساتوشی ناکاموتو طراحی کرد.
- نشانه ظاهری: این آدرسها همیشه با عدد 1 شروع میشوند.
- ویژگیها: این نوع آدرس نسبت به حروف کوچک و بزرگ حساس است (یعنی حرف A با a تفاوت دارد) که احتمال خطای انسانی را بالا میبرد.
- هزینه: تراکنشهایی که از این آدرسها انجام میشوند، سنگینترین حجم داده را دارند. به همین دلیل، بیشترین کارمزد را پرداخت میکنند.
استفاده از آدرسهای لگسی مانند استفاده از خودروهای قدیمی و پرمصرف است؛ آنها کار میکنند و قابل اعتماد هستند، اما هزینهی سوخت (کارمزد) بالایی دارند و فضای زیادی را در جاده اشغال میکنند. امروزه استفاده از این آدرسها مگر در موارد خاص که کیف پولهای قدیمی مجبور به استفاده هستند، توصیه نمیشود.
آدرسهای سگویت تو در تو یا P2SH (شروع با عدد 3)
با ورود سگویت، نیاز به یک مرحلهی میانی بود تا سیستمهای قدیمی بتوانند با سیستم جدید ارتباط برقرار کنند. آدرسهای تو در تو یا Nested SegWit نقش این پل ارتباطی را بازی میکنند. نام فنی این آدرسها P2SH است که مخفف Pay To Script Hash میباشد.
- نشانه ظاهری: این آدرسها با عدد 3 شروع میشوند.
- ویژگیها: این فرمت مانند یک بستهبندی سازگار عمل میکند. یعنی ساختار سگویت را درون یک پوستهی قدیمی میپیچد تا همهی کیف پولها بتوانند آن را شناسایی کنند. همچنین از قابلیت چند امضایی (Multi-Sig) پشتیبانی میکند که برای امنیت حسابهای مشترک عالی است.
- هزینه: کارمزد تراکنش در این آدرسها کمتر از آدرسهای لگسی (شروع با 1) است، اما هنوز به ارزانی حالت کاملاً بومی نیست.
این آدرسها تعادل خوبی بین سازگاری با سیستمهای قدیمی و کاهش هزینه ایجاد کردهاند.
آدرسهای سگویت بومی یا Native SegWit (شروع با bc1)
این مدرنترین و بهینهترین نوع آدرس در شبکهی بیت کوین است. به این فرمت، Bech32 هم گفته میشود. اگر میخواهید از تمام قدرت و مزایای سگویت بهرهمند شوید، باید به سراغ این آدرسها بروید.
- نشانه ظاهری: این آدرسها با عبارت bc1 شروع میشوند (معمولاً bc1q).
- ویژگیها: تمام حروف این آدرسها کوچک هستند (Case-insensitive)؛ این یعنی هنگام تایپ یا خواندن آنها، نگرانی بابت اشتباه گرفتن حروف بزرگ و کوچک وجود ندارد و خوانایی آن برای انسان و کامپیوتر راحتتر است.
- هزینه: این آدرسها کموزنترین تراکنشها را ایجاد میکنند و در نتیجه کمترین کارمزد ممکن را در شبکه دارند.
استفاده از سگویت بومی مانند استفاده از یک خودروی برقی مدرن است؛ سریع، کمهزینه و کارآمد. تنها نکته این است که برخی از صرافیها یا کیف پولهای خیلی قدیمی ممکن است هنوز توانایی ارسال پول به این فرمت مدرن را نداشته باشند، هرچند امروزه اکثر سرویسدهندگان معتبر از آن پشتیبانی میکنند.
جدول مقایسهای: تفاوت کارمزد و سرعت در انواع آدرسهای بیت کوین
برای اینکه در یک نگاه بتوانید تفاوت این سه نوع آدرس را ببینید و بهترین گزینه را برای کیف پول خود انتخاب کنید، جدول زیر را بررسی کنید:
|
نوع آدرس
|
پیشوند (شروع با)
|
میزان کارمزد
|
سرعت و کارایی
|
وضعیت سازگاری
|
|
لگسی (Legacy)
|
1
|
بسیار بالا
|
پایین
|
سازگار با تمام کیف پولهای قدیمی و جدید
|
|
سگویت تو در تو (Nested)
|
3
|
متوسط
|
متوسط
|
سازگاری بالا (پل ارتباطی)
|
|
سگویت بومی (Native)
|
bc1
|
بسیار پایین
|
بسیار بالا
|
پشتیبانی توسط اکثر کیف پولهای مدرن
|
نکتهی طلایی: اگر کیف پول شما (مانند تراست والت، لجر یا اکسودوس) به شما اجازه میدهد بین این آدرسها انتخاب کنید، همیشه گزینهی Native SegWit (bc1) را انتخاب کنید تا کمترین هزینه را بپردازید. اما اگر طرف مقابل شما از یک صرافی بسیار قدیمی استفاده میکند که آدرس bc1 را نمیشناسد، میتوانید از آدرس شروع شده با 3 استفاده کنید.
مزایای کلیدی فعالسازی SegWit برای کاربران و شبکه
تا اینجا متوجه شدیم که سگویت چگونه از نظر فنی، چیدمان دادهها را تغییر میدهد. اما شاید سوال اصلی شما این باشد: "این تغییرات فنی چه سودی برای من به عنوان یک کاربر ساده دارد؟" واقعیت این است که سگویت فقط یک ارتقای نرمافزاری خشک و خالی نیست؛ بلکه تاثیر مستقیمی بر جیب شما و تجربهی کاربریتان هنگام استفاده از بیت کوین دارد. بیایید این مزایا را یکییکی بررسی کنیم.
کاهش چشمگیر کارمزد تراکنشها برای کاربران
ملموسترین و جذابترین فایدهی سگویت برای همهی ما، ارزانتر شدن انتقال بیت کوین است. همانطور که گفتیم، در سیستم سگویت دادههای امضا از بدنهی اصلی تراکنش جدا میشوند و وزن کمتری در محاسبهی نهایی پیدا میکنند.
از آنجا که ماینرها (کسانی که تراکنشها را تایید میکنند) بر اساس وزن و حجم اشغال شده کارمزد میگیرند، وقتی تراکنش شما سبکتر باشد، طبیعی است که هزینهی کمتری بپردازید.
استفاده از آدرسهای سگویت (بهویژه آدرسهای Native که با bc1 شروع میشوند) میتواند کارمزد تراکنش شما را نسبت به آدرسهای قدیمی تا حد قابل توجهی کاهش دهد. این یعنی اگر شما یک معاملهگر فعال هستید که مدام بیت کوین جابجا میکنید، استفاده از سگویت در درازمدت مبلغ چشمگیری را برایتان صرفهجویی میکند.
افزایش سرعت تایید تراکنشها و کاهش تراکم شبکه
مزیت دوم، سریعتر شدن فرآیند تایید تراکنشهاست. برای درک بهتر، شبکهی بیت کوین را مانند یک اتوبوس در نظر بگیرید که ظرفیت مسافرانش (تراکنشها) محدود است. قبل از سگویت، این اتوبوسها خیلی زود پر میشدند و مسافران زیادی در ایستگاه منتظر میماندند تا اتوبوس بعدی برسد.
سگویت با فشردهسازی اطلاعات و جداسازی امضاها، عملاً باعث شد که این اتوبوسها بتوانند مسافران بیشتری را سوار کنند. وقتی در هر بلاک تعداد تراکنشهای بیشتری جا بگیرد:
- صف انتظار خلوت میشود: تراکنشها کمتر در صف انتظار یا همان ممپول (Mempool - فضای حافظهای که تراکنشهای تایید نشده در آن منتظر میمانند) معطل میشوند.
- تایید سریعتر: احتمال اینکه تراکنش شما در اولین بلاک بعدی تایید شود، بسیار بالاتر میرود.
بنابراین، سگویت کمک کرد تا ترافیک سنگین شبکه در روزهای شلوغ بازار، روانتر مدیریت شود و کاربران ساعتها منتظر تایید انتقال خود نمانند.
هموار کردن مسیر برای راهحلهای لایه دوم مانند شبکه لایتنینگ
شاید استراتژیکترین فایدهی سگویت که آیندهی بیت کوین را تغییر داد، رفع باگ امنیتی چکشخواری بود. این کار باعث شد تا مسیر برای فناوریهای پیشرفتهتر باز شود.
مهمترین این فناوریها، شبکهی لایتنینگ (Lightning Network) است. لایتنینگ یک راهکار لایه دوم (Layer 2 - سیستمی که روی بلاکچین اصلی سوار میشود تا سرعت را بالا ببرد) است که امکان پرداختهای آنی و با کارمزد تقریبا صفر را فراهم میکند.
چرا سگویت برای لایتنینگ حیاتی بود؟
- شبکهی لایتنینگ برای ایجاد کانالهای پرداخت امن بین کاربران، نیاز دارد که شناسهی تراکنشها کاملاً ثابت و غیرقابل تغییر باشد.
- قبل از سگویت، به دلیل مشکل چکشخواری، این ثبات وجود نداشت و ایجاد شبکهی لایتنینگ امن عملاً غیرممکن بود.
بنابراین، اگر امروز میتوانیم قهوهی صبحانهی خود را با بیت کوین و در کسری از ثانیه حساب کنیم، مدیون زیرساختی هستیم که سگویت با اصلاح مشکلات بنیادین شبکه فراهم کرده است.
ماجرای هارد فورک سگویت 2X و تفاوت آن با سگویت اصلی
داستان سگویت فقط به یک بهروزرسانی فنی ساده ختم نمیشود. در سال 2017، بر سر اینکه چگونه باید مشکل شلوغی شبکه را حل کرد، اختلاف نظر شدیدی بین اعضای جامعهی بیت کوین شکل گرفت که به "جنگ سایز بلاک" معروف شد. در دل این جنگ، طرحی به نام سگویت 2X متولد شد که با سگویت اصلی تفاوتهای بنیادین داشت. بیایید این ماجرای تاریخی را بررسی کنیم.
پیشنهاد SegWit2x چه بود و چرا مطرح شد؟
در آن زمان، دو گروه اصلی در دنیای بیت کوین وجود داشتند:
- توسعهدهندگان و کاربران: که معتقد بودند امنیت و غیرمتمرکز بودن شبکه خط قرمز است و باید با احتیاط پیش رفت (طرفدار سگویت معمولی).
- ماینرها و شرکتهای بزرگ: که به دنبال سود بیشتر و افزایش سریع ظرفیت شبکه بودند.
گروه دوم معتقد بودند که جداسازی امضاها (سگویت) به تنهایی کافی نیست و باید سایز بلاک را هم از 1 مگابایت به 2 مگابایت افزایش داد. آنها در جلسهای موسوم به "توافقنامهی نیویورک"، طرحی را امضا کردند که شامل دو مرحله بود:
- مرحله اول: فعالسازی سگویت (که انجام شد).
- مرحله دوم: اجرای یک هارد فورک (Hard Fork - تغییری اساسی و غیرقابل بازگشت در قوانین شبکه که نسخهی جدید را با نسخهی قدیمی ناسازگار میکند) برای دو برابر کردن سایز بلاک.
نام این پروژه SegWit2x گذاشته شد؛ یعنی سگویت به علاوهی 2 برابر شدن ظرفیت. در حالی که سگویت اصلی یک تغییر نرم و سازگار بود، سگویت 2X قصد داشت ساختار فیزیکی بلاکها را به اجبار تغییر دهد.
دلایل مخالفت جامعه بیت کوین و شکست پروژه SegWit2x
با اینکه این طرح توسط شرکتهای بزرگ و ماینرهای قدرتمند حمایت میشد، جامعهی کاربری و توسعهدهندگان اصلی بیت کوین به شدت با آن مخالفت کردند. این مخالفتها دلایل منطقی و امنیتی داشت:
- خطر متمرکز شدن شبکه: مخالفان استدلال میکردند که اگر سایز بلاکها زیاد شود، حجم کلی بلاکچین به شدت سنگین خواهد شد. در این صورت، کاربران عادی دیگر نمیتوانند روی کامپیوترهای خانگی خود فول نود (Full Node - کامپیوتری که تاریخچهی کامل بلاکچین را ذخیره و بررسی میکند) اجرا کنند. نتیجه این میشد که شبکه فقط در دست شرکتهای بزرگی که سرورهای قدرتمند دارند باقی میماند و بیت کوین خاصیت مردمی بودن خود را از دست میداد.
- روش تصمیمگیری غیردموکراتیک: بیت کوین متعلق به هیچ شرکت یا گروه خاصی نیست. کاربران از اینکه تعدادی مدیرعامل و ماینر در یک اتاق دربسته برای آیندهی بیت کوین تصمیم گرفته بودند، خشمگین شدند. آنها معتقد بودند تغییرات باید با اجماع عمومی همهی کاربران انجام شود، نه با زور سرمایهداران.
- مشکلات فنی و امنیتی: تیم توسعهدهندهی SegWit2x عجلهی زیادی داشت و قابلیت مهمی به نام محافظت در برابر بازپخش (Replay Protection) را در کد خود قرار نداده بود. بدون این قابلیت، ممکن بود وقتی شما در یک شبکه تراکنش انجام میدهید، همان تراکنش به صورت ناخواسته در شبکهی دیگر هم انجام شود و دارایی کاربران به خطر بیفتد.
در نهایت، فشار جامعهی کاربری و کمپینهای مردمی (مانند کمپین "NO2X") باعث شد که حامیان این طرح عقبنشینی کنند. درست چند روز قبل از تاریخ مقرر برای اجرا در نوامبر 2017، پروژهی SegWit2x لغو شد. این پیروزی نشان داد که در دنیای بیت کوین، قدرت واقعی در دست کاربران است، نه ماینرها و شرکتهای بزرگ.
راهنمای کاربردی: استفاده از سگویت در کیف پولها و صرافیها
حالا که با مزایای فنی و اقتصادی سگویت آشنا شدید، نوبت به بخش عملی ماجرا میرسد. شاید بپرسید: "چطور میتوانم از این قابلیت استفاده کنم تا کارمزد کمتری بدهم؟" خبر خوب این است که استفاده از سگویت اصلا پیچیده نیست و در بسیاری از ابزارهای امروزی به یک استاندارد تبدیل شده است. در این بخش، نکات کاربردی برای استفادهی روزمره را بررسی میکنیم.
کدام کیف پولها و صرافیها از سگویت پشتیبانی میکنند؟
امروزه تقریبا تمام کیف پولهای معتبر و صرافیهای بزرگ جهانی خودشان را با این بهروزرسانی هماهنگ کردهاند. اما برای اطمینان، بیایید نگاهی به وضعیت پشتیبانی در پلتفرمهای مختلف بیندازیم:
- کیف پولهای سختافزاری: برندهای مشهوری مانند لجر (Ledger) و ترزور (Trezor) به صورت کامل از سگویت پشتیبانی میکنند. وقتی در حال نصب یا ایجاد حساب بیت کوین در این دستگاهها هستید، معمولاً از شما پرسیده میشود که میخواهید حساب معمولی (Legacy) بسازید یا حساب سگویت (SegWit). پیشنهاد ما همیشه انتخاب گزینهی سگویت یا همان Native SegWit است.
- کیف پولهای نرمافزاری (موبایل و دسکتاپ): اکثر اپلیکیشنهای محبوب نیز این قابلیت را دارند:
- تراست والت (Trust Wallet): این کیف پول محبوب به صورت پیشفرض از آدرسهای سگویت (bc1) استفاده میکند.
- اکسودوس (Exodus): در این کیف پول هم آدرس پیشفرض روی حالت سگویت تنظیم شده است.
- بلو والت (BlueWallet): یکی از بهترین کیف پولهای تخصصی بیت کوین است که به شما اجازه میدهد هر نوع آدرسی که دوست دارید (لگسی، سگویت یا نیتیو سگویت) بسازید.
- الکتروم (Electrum): یک کیف پول دسکتاپ قدیمی و قدرتمند که کنترل کاملی روی انتخاب نوع آدرس به شما میدهد.
- صرافیها: بیشتر صرافیهای بزرگ خارجی مثل بایننس، کوینبیس و کراکن از سگویت پشتیبانی میکنند. در مورد صرافیهای ایرانی، وضعیت متفاوت است. بسیاری از آنها از سگویت پشتیبانی میکنند، اما برخی ممکن است هنوز روی سیستم قدیمی باشند.
نکته مهم: هنگام واریز بیت کوین به صرافی یا برداشت از آن، حتماً چک کنید که صرافی از چه شبکهای پشتیبانی میکند. اگر صرافی گزینهی BTC (SegWit) را داشت، حتماً آن را انتخاب کنید تا کارمزد کمتری بپردازید.
آیا ارسال بیت کوین از آدرس لگسی به سگویت و برعکس امکانپذیر است؟
این یکی از بزرگترین ترسهای کاربران تازهکار است. سوال رایج این است: "اگر من از کیف پول قدیمی خودم که آدرسش با 1 شروع میشود، به کیف پول جدید دوستم که آدرسش با bc1 شروع میشود بیت کوین بفرستم، آیا پولم گم میشود؟"
پاسخ کوتاه و قاطع این است: خیر، هیچ مشکلی پیش نمیآید.
شبکهی بیت کوین طوری طراحی شده است که تمام این آدرسها با هم سازگاری کامل دارند. به این ویژگی در دنیای نرمافزار سازگاری با عقب (Backward Compatibility) میگویند. برای درک بهتر، سیستم تلفن همراه را در نظر بگیرید:
تصور کنید شما یک گوشی هوشمند مدرن و گرانقیمت دارید (آدرس سگویت) و مادربزرگتان یک تلفن دکمهای قدیمی دارد (آدرس لگسی). آیا چون گوشیهایتان متفاوت است نمیتوانید با هم تماس بگیرید؟ قطعا میتوانید. شبکه مخابرات این ارتباط را برقرار میکند.
در بیت کوین هم دقیقا همینطور است:
- شما میتوانید از آدرس قدیمی (Legacy) به آدرس سگویت (SegWit) بیت کوین بفرستید.
- شما میتوانید از آدرس سگویت به آدرس قدیمی بیت کوین بفرستید.
- شما میتوانید از آدرسهای میانی (که با 3 شروع میشوند) به هر دو نوع دیگر ارسال انجام دهید.
بنابراین، هنگام انتقال دارایی نگران نوع آدرس مبدا و مقصد نباشید؛ شبکهی بیت کوین هوشمند است و تراکنش شما را به درستی پردازش میکند. تنها تفاوت در همان میزان کارمزدی است که هنگام ارسال پرداخت میکنید.
منابع:
Investopedia
Support.blockchain