Giới thiệu
Khả năng mở rộng đề cập rộng rãi đến khả năng phát triển của hệ thống để đáp ứng nhu cầu ngày càng tăng. Trong điện toán, bạn có thể tăng hiệu suất của máy bằng cách nâng cấp phần cứng của máy để thực hiện một số tác vụ nhất định nhanh hơn. Khi nói về khả năng mở rộng của blockchain, chúng tôi đề cập đến việc tăng cường khả năng xử lý nhiều giao dịch hơn.
Các giao thức như Bitcoin có nhiều điểm mạnh, nhưng khả năng mở rộng không phải là một trong số đó. Nếu Bitcoin được chạy trong cơ sở dữ liệu thuộc sở hữu tập trung, quản trị viên sẽ tương đối dễ dàng tăng tốc độ và thông lượng. Nhưng các đề xuất giá trị của Bitcoin (tức là khả năng chống kiểm duyệt) yêu cầu nhiều người tham gia đồng bộ hóa một bản sao của blockchain.
Vấn đề về khả năng mở rộng blockchain
Việc chạy một nút Bitcoin tương đối rẻ và ngay cả các thiết bị đơn giản cũng có thể làm được điều đó. Nhưng vì hàng nghìn nút cần phải cập nhật lẫn nhau nên có những hạn chế nhất định về dung lượng của chúng.
Giới hạn được đặt cho số lượng giao dịch có thể được xử lý trên chuỗi, để không cho phép cơ sở dữ liệu phát triển đến kích thước khó sử dụng. Nếu nó trở nên quá lớn và quá nhanh, các nút sẽ không thể theo kịp. Hơn nữa, nếu các khối quá lớn, chúng không thể được chuyển tiếp nhanh chóng trên mạng.
Kết quả là, chúng ta thấy mình đang ở một điểm nghẽn. Một blockchain có thể được xem như một dịch vụ xe lửa khởi hành theo những khoảng thời gian đã định. Mỗi toa chỉ có số lượng ghế hạn chế và để có được vé, du khách phải đấu giá để đảm bảo có chỗ. Nếu mọi người đều cố gắng lên tàu cùng một lúc thì giá sẽ cao. Tương tự, một mạng bị tắc nghẽn do các giao dịch đang chờ xử lý sẽ yêu cầu người dùng phải trả phí cao hơn để xem giao dịch của họ được đưa vào kịp thời.
Một giải pháp là làm cho toa tàu lớn hơn. Điều này có nghĩa là có nhiều chỗ ngồi hơn, lượng hành khách cao hơn và giá vé rẻ hơn. Nhưng không có gì đảm bảo rằng số ghế sẽ không lấp đầy như trước đây. Các toa xe không thể được mở rộng vĩnh viễn, cũng như các khối hoặc giới hạn khí khối không thể mở rộng vô hạn. Điều này làm cho việc duy trì các nút trên mạng trở nên đắt hơn vì chúng sẽ cần phần cứng đắt tiền hơn để duy trì đồng bộ hóa.
Người tạo ra Ethereum Vitalik Buterin đã đặt ra Bộ ba bất khả thi về khả năng mở rộng để mô tả thách thức mà các chuỗi khối phải đối mặt. Ông đưa ra giả thuyết rằng các giao thức phải đánh đổi giữa khả năng mở rộng, bảo mật và phân cấp. Những điều này có phần mâu thuẫn với nhau – bằng cách tập trung quá nhiều vào hai trong số các tài sản, tài sản thứ ba sẽ kém hiệu quả.
Vì lý do này, nhiều người coi khả năng mở rộng là thứ cần đạt được ngoài chuỗi, trong khi tính bảo mật và phân cấp phải được tối đa hóa trên chính blockchain.
Giải pháp mở rộng quy mô ngoài chuỗi là gì?
Mở rộng quy mô ngoài chuỗi đề cập đến các phương pháp cho phép các giao dịch được thực hiện mà không làm xáo trộn chuỗi khối. Các giao thức cắm vào 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 sẽ đi sâu vào hai trong số những tiến bộ đá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
Chuỗi bên là gì?
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à chuỗi bên có thể tương tác với nhau, nghĩa là tài sản có thể di chuyển tự do từ chuỗi này sang chuỗi khác.
Có một số cách để đảm bảo rằng tiền có thể được chuyển qua. Trong một số trường hợp, tài sản được chuyển khỏi chuỗi chính bằng cách gửi vào một địa chỉ đặc biệt. Chúng không thực sự được gửi đi – thay vào đó chúng được khóa vào địa chỉ và số tiền tương ứng sẽ được phát hành trên sidechain. Một cách đơn giản hơn (mặc dù là tùy chọn tập trung) là gửi tiền cho người giám sát, người này sẽ đổi tiền gửi lấy tiền trên sidechain.
Chuỗi bên hoạt động như thế nào?
Giả sử bạn Alice của chúng ta có 5 bitcoin. Cô ấy muốn đổi chúng lấy 5 đơn vị tương đương trên một sidechain Bitcoin – hãy gọi chúng là sidecoin. Chuỗi bên được đề cập sử dụng 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 chuỗi bên và ngược lại.
Hãy nhớ rằng sidechain là một blockchain riêng biệt. Vì vậy, nó sẽ có các khối, nút và cơ chế xác thực khác nhau. Để nhận được sidecoin của mình, Alice sẽ gửi 5 bitcoin của mình đến một địa chỉ khác. Nó có thể thuộc sở hữu của ai đó, người sau đó sẽ ghi có 5 sidecoin vào địa chỉ sidechain của cô ấy sau khi họ nhận được bitcoin. Ngoài ra, nó có thể có một số loại thiết lập giảm thiểu độ tin cậy trong đó sidecoin được tự động ghi có sau khi phần mềm phát hiện khoản thanh toán.

Alice hiện đã chuyển đổi 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 để mua một chiếc áo hoodie Binance. Khi cô ấy muốn quay 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à gửi đến địa chỉ mà cô kiểm soát trên chuỗi chính.
Tại sao sidechains được sử dụng?
Bạn có thể tự hỏi ý nghĩa của việc này là gì. Tại sao Alice không sử dụng chuỗi khối Bitcoin?
Câu trả lời là sidechain có thể có khả năng làm những việc mà Bitcoin không thể làm được. Blockchains là hệ thống đánh đổi được thiết kế cẩn thận. Mặc dù Bitcoin là loại tiền điện tử an toàn và phi tập trung nhất nhưng nó không phải là loại tiền tốt nhất về mặt thông lượng. Mặc dù giao dịch Bitcoin nhanh hơn các phương thức thông thường nhưng nó vẫn tương đối chậm khi so sánh với các hệ thống blockchain khác. Các khối được khai thác cứ sau mười phút và phí có thể tăng đáng kể khi mạng bị tắc nghẽn.
Phải thừa nhận rằng có lẽ không cần mức độ bảo mật này đối với các khoản thanh toán nhỏ hàng ngày. Nếu Alice đang trả tiền cho một ly cà phê, cô ấy sẽ không đứng đợi giao dịch được xác nhận. Cô ấy sẽ phải xếp hàng và đồ uống của cô ấy sẽ nguội khi nó được giao.
Sidechains không bị ràng buộc bởi các quy tắc tương tự. Trên thực tế, họ thậm chí không cần sử dụng Proof of Work để hoạt động. Bạn có thể sử dụng bất kỳ cơ chế đồng thuận nào, tin cậy một trình xác thực duy nhất hoặc điều chỉnh bất kỳ số lượng tham số nào. Bạn có thể thêm các nâng cấp không tồn tại trên chuỗi chính, tạo ra các khối lớn hơn và thực thi các quyết toán nhanh chóng.
Điều thú vị là các sidechain thậm chí có thể có các lỗi nghiêm trọng mà không ảnh hưởng đến chuỗi cơ bản. Đ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 đòi hỏi sự đồng thuận từ phần lớn mạng lưới.
Với điều kiện là người dùng hài lòng với sự đánh đổi, chuỗi bên có thể là một bước không thể thiếu để mở rộng quy mô hiệu quả. Không có yêu cầu nào đối với các nút chuỗi chính để lưu trữ mọi giao dịch từ sidechain. Alice có thể tham gia sidechain bằng một giao dịch Bitcoin duy nhất, thực hiện hàng trăm giao dịch sidecoin và sau đó thoát khỏi sidechain. Đối với chuỗi khối Bitcoin, cô ấy chỉ thực hiện hai lần – một để vào và một để thoát.
Plasma của Ethereum cũng tương tự nhưng có một số khác biệt lớn. Đọc thêm về nó: Ethereum Plasma là gì?
Giới thiệu các kênh thanh toán
Kênh thanh toán là gì?
Các kênh thanh toán phục vụ cùng mục đích như sidechain về khả năng mở rộng, nhưng về cơ bản chúng rất khác nhau. Giống như sidechain, chúng đẩy các giao dịch ra khỏi chuỗi chính để ngăn chặn việc blockchain bị quá tải. Tuy nhiên, không giống như sidechain, chúng không yêu cầu một blockchain riêng để hoạt động.
Kênh thanh toán sử dụng hợp đồng thông minh để cho phép người dùng giao dịch mà không cần xuất bản giao dịch của họ lên blockchain. Nó làm như vậy bằng cách sử dụng một thỏa thuận được thực thi bằng phần mềm giữa hai người tham gia.
Kênh thanh toán hoạt động như thế nào?
Trong các mô hình như Lightning Network phổ biến, trước tiên hai bên sẽ gửi tiền vào địa chỉ mà họ cùng sở hữu. Đây là một địa chỉ có nhiều chữ ký, một địa chỉ yêu cầu hai chữ ký để chi tiêu tiền. Vì vậy, nếu Alice và Bob tạo một địa chỉ như vậy, tiền chỉ có thể được chuyển đi khi có sự đồng ý của cả hai người.
Giả sử mỗi người gửi 10 BTC vào một địa chỉ hiện chứa 20 BTC. Sẽ rất dễ dàng để họ giữ một bảng cân đối kế toán bắt đầu bằng việc Alice và Bob đều có 10 BTC mỗi người. Nếu Alice muốn đưa cho Bob một đồng xu, họ có thể cập nhật nó thành Alice có 9 BTC, Bob có 11 BTC. Họ sẽ không phải xuất bản lên blockchain khi tiếp tục cập nhật các số dư này.

Tuy nhiên, khi đến thời điểm, giả sử Alice có 5 BTC và Bob có 15 BTC. Sau đó, họ có thể tạo một giao dịch gửi số dư này đến địa chỉ do các bên sở hữu, ký tên và phát đi.
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, họ chỉ thực hiện hai hoạt động trên chuỗi: một cho giao dịch cấp vốn ban đầu và một để phân bổ lại số dư khi chúng 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ư ngay lập tức vì chúng diễn ra ngoài chuỗi. Không cần phải trả phí khai thác và không cần chờ xác nhận khối.
Tất nhiên, ví dụ được thảo luận ở trên yêu cầu cả hai bên phải hợp tác, đây không phải là tình huống lý tưởng cho người lạ. Tuy nhiên, các cơ chế đặc biệt có thể được sử dụng để trừng phạt bất kỳ nỗ lực gian lận nào, do đó các bên có thể tương tác với nhau một cách an toàn mà không cần tin tưởng.
Định tuyến thanh toán
Rõ ràng, các kênh thanh toán thuận tiện cho cả hai bên mong đợi khối lượng giao dịch lớn. Nhưng nó trở nên tốt hơn. Mạng lưới các kênh này có thể được bổ sung thêm, nghĩa là Alice có thể thanh toán cho một bên mà cô ấy không kết nối trực tiếp. Nếu Bob mở kênh với Carol, Alice có thể trả tiền cho cô ấy nếu có đủ dung lượng. Cô ấy sẽ chuyển tiền về phía kênh của Bob, Bob sẽ chuyển tiền về phía kênh của Carol. Nếu Carol được kết nối với một người tham gia khác, Dan, điều tương tự cũng có thể được thực hiện.
Mạng như vậy phát triển thành 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 đồng nghiệp. Thường sẽ có nhiều tuyến đường đến một đích và người dùng sẽ có thể chọn tuyến đường hiệu quả nhất.
Bớt tư tưởng
Chúng tôi đã thảo luận về hai phương pháp tiếp cận có khả năng mở rộng cho phép thực hiện các giao dịch mà không tạo gánh nặng cho blockchain cơ bản. Cả sidechain và công nghệ kênh thanh toán vẫn chưa trưởng thành, nhưng chúng đang ngày càng được tận dụng bởi những người dùng mong muốn khắc phục những thiếu sót của các giao dịch lớp cơ sở.
Khi thời gian trôi qua và ngày càng có nhiều người dùng tham gia mạng, điều quan trọng là phải duy trì tính phân cấp. Điều này chỉ có thể đạt được bằng cách thực thi các giới hạn về sự phát triển của chuỗi khối để các nút mới có thể dễ dàng tham gia. Những người ủng hộ các giải pháp khả năng 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 các chuỗi bên và mở/đóng kênh.

