Mục lục:
Giới thiệu
Ba vấn đề nan giải khi mở rộng Blockchain
Kết quả là, chúng ta thấy mình đang gặp phải một điểm nghẽn nào đó. Một blockchain có thể được xem như một dịch vụ xe lửa khởi hành vào những khoảng thời gian đã định. Mỗi toa có số chỗ ngồi giới hạn và để có được vé, hành khách phải đấu giá để đảm bảo có một chỗ ngồi. Nếu tất cả mọi người cố gắng lên tàu cùng một lúc, giá vé sẽ cao. Tương tự, một mạng bị tắc nghẽn với các giao dịch đang chờ xử lý sẽ yêu cầu người dùng trả phí cao hơn để giao dịch của họ được xử lý.
Người tạo ra Ethereum, Vitalik Buterin, đã đặt ra 3 Vấn đề nan giản về khả năng mở rộng (Scalability Trilemma) để mô tả thách thức mà các blockchain phải đối mặt. Anh đưa ra giả thuyết rằng các giao thức luôn phải đánh đổi giữa khả năng mở rộng, bảo mật và tính phi tập trung. Chúng luôn mâu thuẫn với nhau – tập trung quá nhiều vào hai trong số các thuộc tính, thuộc tính thứ ba sẽ bị giảm sút.
Các giải pháp mở rộng ngoài chuỗi là gì?
Mở rộng ngoài chuỗi mô tả các cách tiếp cận cho phép các giao dịch được thực hiện mà không làm phình to blockchain. Các giao thức kết nối với chuỗi cho phép người dùng gửi và nhận tiền mà không cần giao dịch xuất hiện trên chuỗi chính. Chúng ta tìm hiểu hai giải pháp đáng chú ý nhất trên mặt trận này: sidechain và kênh thanh toán.
Giới thiệu về sidechain
Sidechain là gì?
Mỗi sidechain là một blockchain riêng biệt. Tuy nhiên, nó không phải là một nền tảng độc lập, vì nó được gắn với chuỗi chính theo một cách nào đó. Chuỗi chính và sidechain có thể tương tác với nhau, có nghĩa là nội dung có thể lưu chuyển tự do từ blockchain này sang blockchain kia.
Làm thế nào để một sidechain hoạt động?
Giả sử rằng Alice có năm bitcoin. Cô ấy muốn đổi chúng lấy năm đơn vị tương đương trên một sidechain Bitcoin – hãy gọi chúng là các đồng sidecoin. Sidechain được đề cập sử dụng một chốt hai chiều, nghĩa là người dùng có thể chuyển tài sản của họ từ chuỗi chính sang sidechain và ngược lại.
Alice hiện đã chuyển đổi số tiền của mình thành sidecoin, nhưng cô ấy luôn có thể đảo ngược quy trình để lấy lại bitcoin của mình. Bây giờ cô ấy đã tham gia sidechain, cô ấy có thể tự do giao dịch trên blockchain riêng biệt này. Cô ấy có thể gửi sidecoin hoặc nhận chúng từ người khác, giống như cách cô ấy làm trên chuỗi chính.
Ví dụ, cô ấy có thể trả cho Bob một sidecoin cho một chiếc áo khoác Binance. Khi cô ấy muốn lấy lại Bitcoin, cô ấy có thể gửi bốn sidecoin còn lại của mình đến một địa chỉ đặc biệt. Sau khi giao dịch được xác nhận, bốn bitcoin sẽ được mở khóa và chuyển đến địa chỉ mà cô ấy kiểm soát trên chuỗi chính.
Tại sao các sidechain được sử dụng?
Bạn có thể tự hỏi mục đích của điều này là gì. Tại sao Alice không sử dụng blockchain Bitcoin cho tiện?
Phải thừa nhận rằng các khoản thanh toán nhỏ hàng ngày có lẽ không cần tới mức độ bảo mật này. Nếu Alice cần trả tiền cho một ly cà phê, cô ấy sẽ không thể đợi giao dịch này được xác nhận. Cô ấy sẽ phải xếp hàng, và đồ uống của cô ấy sẽ nguội lạnh vào thời điểm nó được giao.
Điều thú vị là, ngay cả khi sidechain có các lỗi nghiêm trọng, chúng vẫn không ảnh hưởng đến chuỗi bên dưới. Điều này cho phép chúng được sử dụng làm nền tảng để thử nghiệm và triển khai các tính năng không đòi hỏi sự đồng thuận từ phần lớn mạng lưới.
Miễn là người dùng hài lòng với sự đánh đổi, các sidechain là một cách hiệu quả để mở rộng quy mô blockchain. Các node của chuỗi chính không cần phải lưu trữ mọi giao dịch từ sidechain. Alice có thể tham gia sidechain bằng một giao dịch Bitcoin, thực hiện hàng trăm giao dịch sidecoin và sau đó thoát khỏi sidechain. Trong quy trình đó, đối với blockchain Bitcoin, Alice chỉ cần thực hiện hai giao dịch – một để vào và một để thoát.
Giới thiệu về các kênh thanh toán
Kênh thanh toán là gì?
Các kênh thanh toán hoạt động như một kênh phụ để giúp blockchain tăng khả năng mở rộng - tương tự như sidechain, nhưng về cơ bản chúng rất khác nhau. Giống như các sidechain, các kênh thanh toán đẩy các giao dịch ra khỏi chuỗi chính để ngăn chặn sự cồng kềnh của blockchain. Tuy nhiên, không giống như các sidechain, chúng không yêu cầu một blockchain riêng biệt để hoạt động.
Kênh thanh toán hoạt động như thế nào?
Giả sử, mỗi người gửi 10 BTC vào một địa chỉ, và địa chỉ ấy hiện có 20 BTC. Sẽ thật dễ dàng để họ giữ một bảng cân đối trong đó ghi rõ rằng Alice và Bob mỗi người có 10 BTC. Nếu Alice muốn tặng Bob một đồng tiền, họ có thể cập nhật nó để nó ghi nhận rằng Alice có 9 BTC, Bob có 11 BTC. Họ sẽ không phải xuất bản lên blockchain ngay cả khi họ tiếp tục cập nhật những số dư này.
Tuy nhiên, tại một thời điểm phù hợp, giả sử khi Alice có 5 BTC và Bob có 15 BTC. Họ có thể tạo một giao dịch gửi các số dư này đến các địa chỉ thuộc sở hữu của các bên, ký tên và ghi lên blockchain.
Trước đó, Alice và Bob có thể đã ghi lại mười, một trăm hoặc một nghìn giao dịch trên bảng cân đối kế toán của họ. Nhưng đối với blockchain, chúng chỉ thực hiện hai hoạt động trên chuỗi: một cho giao dịch nạp tiền ban đầu và một để phân bổ lại số dư khi tất cả giao dịch hoàn tất. Ngoài hai giao dịch này, tất cả các giao dịch khác đều miễn phí và gần như diễn ra tức thì vì chúng được thực hiện bên ngoài chuỗi. Không có phí phải trả cho các thợ đào và không có xác nhận khối nào cần thực hiện.
Định tuyến thanh toán
Rõ ràng, các kênh thanh toán là công cụ thuận tiện khi hai bên có khối lượng giao dịch cao. Ngoài ra chúng còn các ưu điểm khác nữa. Một mạng lưới các kênh này có thể được chia thành nhiều phần, có nghĩa là Alice có thể trả tiền cho một bên mà cô không có các kết nối trực tiếp. Nếu Bob có một kênh mở với Carol, Alice có thể trả tiền cho cô ấy với điều kiện là có đủ tiền. Cô ấy sẽ đẩy tiền về phía kênh của Bob, và Bob sẽ lần lượt đẩy chúng đến Carol. Nếu Carol được kết nối với người tham gia khác, Dan, điều tương tự có thể được thực hiện.
Một mạng như vậy phát triển thành một cấu trúc liên kết phân tán, nơi mọi người kết nối với nhiều bên ngang hàng. Thường sẽ có nhiều tuyến đường đến một điểm đến và người dùng sẽ chọn tuyến đường hiệu quả nhất.
Tổng kết
Chúng ta đã thảo luận về hai phương pháp tiếp cận giúp tăng khả năng mở rộng của blockchain, cho phép thực hiện các giao dịch mà không tạo gánh nặng cho blockchain chính. Cả công nghệ sidechain và các kênh thanh toán vẫn chưa hoàn toàn hoàn thiện, nhưng chúng đang được ứng dụng ngày càng nhiều bởi những người dùng muốn khắc phục những nhược điểm của các giao dịch ở lớp cơ sở.
Trong tương lai, khi nhiều người dùng tham gia mạng, điều quan trọng là duy trì tính phi tập trung. Điều này chỉ có thể đạt được bằng cách tạo ra các giới hạn đối với sự tăng trưởng của blockchain, để các node mới có thể dễ dàng tham gia. Những người đề xuất các giải pháp mở rộng ngoài chuỗi tin rằng, theo thời gian, chuỗi chính sẽ chỉ được sử dụng để giải quyết các giao dịch có giá trị cao hoặc để chốt vào/ra khỏi các sidechain và mở/đóng các kênh thanh toán.