Nội dung
- SegWit là gì?
- Những lợi ích chính của SegWit là gì?
- Tăng công suất lưu trữ của khối
- Tăng tốc độ giao dịch
- Khắc phục lỗi về sửa đổi giao dịch
- SegWit và Mạng Lightning
- So sánh SegWit và SegWit2x
- Kết luận
SegWit là gì?
Segregated Witness (Cách ly Vật chứng) (SegWit) là một bản nâng cấp giao thức được phát triển vào năm 2015. Bản nâng cấp này được phát triển nhằm giải quyết vấn đề về khả năng mở rộng mà các mạng blockchain đã và vẫn đang phải đối mặt cho đến ngày nay.
Trung bình, mạng Bitcoin xác nhận một khối mới sau mỗi 10 phút, mỗi khối chứa một số lượng giao dịch. Do vậy, kích thước khối ảnh hưởng đến số lượng giao dịch có thể được xác nhận trong mỗi khối. Hiện tại, mạng blockchain Bitcoin có thể xử lý khoảng 7 giao dịch mỗi giây.
SegWit có khả năng tổ chức lại dữ liệu khối, trong đó các chữ ký sẽ không còn được đặt cùng với dữ liệu về giao dịch. Nói cách khác, bản nâng cấp SegWit bao gồm việc cách ly các vật chứng (chữ ký) khỏi dữ liệu giao dịch. Điều này cho phép nhiều giao dịch được lưu trữ trong một khối duy nhất và do đó làm tăng thông lượng giao dịch của mạng.
Với việc chỉ có thể xử lý khoảng 7 giao dịch mỗi giây, giao dịch Bitcoin đôi khi có thể mất nhiều thời gian để thực hiện. Điều đó khiến tốc độ xử lý của mạng này chậm hơn nhiều so với các giải pháp thanh toán và mạng tài chính thông thường với khả năng xử lý hàng ngàn giao dịch mỗi giây.
SegWit được phát triển vào năm 2015 bởi nhà phát triển Bitcoin, ông Pieter Wuille, cùng với những người cộng sự phát triển Bitcoin Core. Vào tháng 8 năm 2017, bản nâng cấp SegWit đã được triển khai như một bản cập nhật phần mềm không bắt buộc (soft fork) trên mạng Bitcoin.
Hiện nay có một số dự án tiền điện tử sử dụng SegWit, bao gồm Bitcoin và Litecoin. Việc nâng cấp giao thức mang lại một số lợi ích, chẳng hạn như cải thiện tốc độ giao dịch và công suất khối. Ngoài ra, SegWit đã giải quyết vấn đề được gọi là lỗi sửa đổi giao dịch (malleability bug), được thảo luận dưới đây.
Những lợi ích chính của SegWit là gì?
Tăng công suất lưu trữ của khối
Một trong những công dụng lớn nhất của SegWit là tăng công suất khối. Bằng cách xóa dữ liệu chữ ký khỏi dữ liệu đầu vào giao dịch, khối có thể lưu trữ nhiều giao dịch hơn.
Giao dịch gồm hai thành phần chính: dữ liệu đầu vào và dữ liệu đầu ra. Về cơ bản, dữ liệu đầu vào chứa địa chỉ công khai của người gửi, trong khi dữ liệu đầu ra chứa địa chỉ công khai của người nhận. Tuy nhiên, người gửi phải chứng minh rằng họ đã chuyển tiền và họ làm điều đó thông qua chữ ký số.
Nếu không có SegWit, dữ liệu chữ ký có thể chiếm tới 65% kích thước khối. Với SegWit, dữ liệu chữ ký được tách ra khỏi dữ liệu đầu vào của giao dịch. Nhờ đó, kích thước khối hữu hiệu tăng từ 1 MB đến 4 MB.
Tuy nhiên, cần chú ý SegWit không thực sự tăng kích thước khối thực tế mà chỉ là một giải pháp kỹ thuật nhằm tăng kích thước khối hữu hiệu mà không phải tăng giới hạn kích thước khối (điều này sẽ cần một bản cập nhật phần mềm bắt buộc). Cụ thể hơn, kích thước khối thực tế vẫn là 1 MB, nhưng giới hạn kích thước khối hữu hiệu là 4 MB.
Ngoài ra, SegWit giúp đưa ra ý tưởng về trọng lượng khối. Có thể xem trọng lượng khối là một khái niệm thay thế cho kích thước khối. Về cơ bản, trọng lượng khối chứa tất cả dữ liệu khối không còn là một phần của trường dữ liệu đầu vào nữa, bao gồm dữ liệu giao dịch (1 MB) và dữ liệu chữ ký (tối đa 3 MB).
Tăng tốc độ giao dịch
Với khối có khả năng lưu trữ nhiều giao dịch hơn, SegWit cũng có khả năng tăng tốc độ giao dịch, vì số lượng giao dịch lớn hơn có thể di chuyển qua blockchain. Mặc dù thời gian đào khối vẫn giữ nguyên, nhưng khối đó xử lý được nhiều giao dịch hơn, do đó tỷ lệ TPS (số giao dịch mỗi giây) cao hơn.
Tốc độ giao dịch tăng cũng giúp giảm chi phí giao dịch trong mạng Bitcoin. Trước khi có SegWit, việc xử lý mỗi giao dịch thường mất đến $30, tuy nhiên, SegWit đã giảm chi phí đó chỉ còn dưới $1 cho mỗi giao dịch.
Khắc phục lỗi về sửa đổi giao dịch (malleability bug)
Một vấn đề trên Bitcoin là các chữ ký có thể bị giả mạo. Nếu chữ ký trên giao dịch bị thay đổi, nó có thể dẫn đến một giao dịch bị lỗi. Vì hầu như không thể thay đổi dữ liệu được lưu trữ trên blockchain, các giao dịch không hợp lệ có thể được lưu trữ vĩnh viễn trên blockchain.
Với SegWit, chữ ký không còn là một phần của dữ liệu giao dịch, bởi vậy kẻ tấn công sẽ không thể sửa đổi dữ liệu giao dịch nữa. Việc khắc phục sự cố này đã cho phép các cải tiến hơn nữa trong cộng đồng blockchain, bao gồm các giao thức lớp thứ 2 và hợp đồng thông minh.
SegWit và Mạng Lightning
Các giao thức lớp thứ hai đã được phát triển một phần nhờ vào việc sửa lỗi về khả năng sửa đổi giao dịch. Nói một cách đơn giản, các giao thức lớp thứ hai là các nền tảng hoặc sản phẩm mới được xây dựng dựa trên blockchain, chẳng hạn như Bitcoin. Một trong những giao thức lớp thứ hai phổ biến hơn là Mạng Lightning, một mạng thanh toán vi mô ngoài chuỗi.
Mạng Lightning là một giao thức lớp thứ hai hoạt động trên mạng Bitcoin. Mạng Lightning được thiết kế nhằm cho phép xác nhận nhiều giao dịch trong khoảng thời gian ngắn hơn, dẫn đến các giao dịch được xử lý nhanh hơn cho người dùng. Các giao dịch được thu thập ngoài chuỗi và được đệm hiệu quả để mạng Bitcoin xử lý.
Mạng Lightning ban đầu được phát triển cho Bitcoin. Tuy nhiên, một số dự án tiền điện tử và blockchain khác đang nỗ lực để triển khai công nghệ nghệ này cho mạng của họ. Công nghệ này sẽ không chỉ giúp giảm thời gian xác nhận giao dịch mà còn thúc đẩy sự phát triển của các giải pháp mới để giải quyết vấn đề khả năng mở rộng.
So sánh SegWit và SegWit2x
SegWit là một bản nâng cấp cập nhật phần mềm không bắt buộc (soft fork), tức là nó tương thích lùi. Nghĩa là các nút Bitcoin không được cập nhật để chứa SegWit vẫn có thể xử lý các giao dịch. Tuy nhiên, có một triển khai SegWit được đề xuất khác là SegWit2x (S2X), sẽ yêu cầu một nâng cấp bản cập nhật phần mềm bắt buộc (hard fork) .
SegWit và SegWit2x không chỉ khác biệt ở việc tạo nhóm các giao dịch mà với SegWit2x, kích thước khối cũng tăng (từ 1MB lên 2MB). Tuy vậy, kích thước khối lớn hơn sẽ tăng gánh nặng cho các nhà thao tác tại nút cũng như các thợ đào vì sẽ có nhiều dữ liệu cần được xử lý hơn.
Một sự khác biệt đáng chú ý khác là đề xuất SegWit được cộng đồng Bitcoin hỗ trợ và thực thi. Điều này đã dẫn đến khái niệm UASF, viết tắt của user-activated soft fork (bản cập nhật phần mềm không bắt buộc do người dùng kích hoạt).
Mặt khác, SegWit2x đã đề xuất thay đổi đáng kể trong một trong những quy tắc cơ bản của Bitcoin. Nhưng vì các nhà phát triển không thể đi đến thống nhất về việc áp dụng và triển khai thay đổi nào, nên triển khai SegWit2x cuối cùng đã bị hoãn.
Kết luận
Việc triển khai SegWit đánh dấu bản nâng cấp giao thức lớn nhất của Bitcoin và việc nó được hỗ trợ và triển khai bởi cộng đồng phi tập trung làm khiến nó trở nên thú vị hơn.
Sự ra đời của SegWit là một bước tiến lớn giúp giải quyết nhiều vấn đề liên quan đến Bitcoin và các mạng blockchain khác – đặc biệt các vấn đề về khả năng mở rộng. Thông qua sự kết hợp của SegWit và các giao thức lớp thứ hai, mạng blockchain có thể xử lý số lượng giao dịch lớn hơn, với hiệu quả cao hơn và chi phí thấp hơn.
Mặc dù là một giải pháp mạnh mẽ và sáng tạo, SegWit vẫn chưa được áp dụng hoàn toàn. Hiện tại, chỉ có khoảng 53% địa chỉ Bitcoin sử dụng SegWit.