
Kênh trạng thái - Giải pháp mở rộng Layer2 cho Ethereum
Tuyển chọn TechFlowTuyển chọn TechFlow

Kênh trạng thái - Giải pháp mở rộng Layer2 cho Ethereum
Khu vực kênh được chia thành kênh thanh toán và kênh trạng thái, trong đó kênh trạng thái được phát triển dựa trên nền tảng kênh thanh toán.
Tác giả: Trương Lạc Huy
Một Kênh là gì, tại sao cần kênh?
1.1 Tại sao cần kênh?
Khi số lượng người dùng và giao dịch trên blockchain tăng lên, dẫn đến tắc nghẽn giao dịch, tốc độ xử lý chậm và chi phí cao. Do đó, cần phải mở rộng khả năng mở rộng của blockchain, và kênh chính là một trong những giải pháp mở rộng.
1.2 Kênh là gì?
-
Thứ nhất: Kênh là một giải pháp xử lý bài toán mở rộng blockchain, là một mạng hoặc giao thức ngang hàng (p2p), cho phép hai bên thực hiện nhiều giao dịch với nhau, sau đó chỉ gửi kết quả xử lý và tính toán cuối cùng lên chuỗi để xác minh chữ ký và thanh toán. Kênh được chia thành kênh thanh toán và kênh trạng thái, trong đó kênh trạng thái phát triển từ kênh thanh toán.
-
Thứ hai: Kênh giảm thiểu tương tác trực tiếp với chuỗi chính thông qua giao dịch ngoài chuỗi, giúp giảm tải cho chuỗi chính và tiết kiệm chi phí cho người dùng.
-
Thứ ba: Mỗi kênh được quản lý bởi một hợp đồng thông minh đa chữ ký trên chuỗi chính. Để mở một kênh, hai bên cần triển khai hợp đồng trên chuỗi và gửi vào một lượng tài sản nhất định.
-
Thứ tư: Khi kênh được thiết lập, hai bên tạo ra trạng thái ban đầu, ghi nhận số dư khởi tạo của cả hai bên (ví dụ: Alice 5 ETH, Bob 5 ETH). Hai bên ký vào trạng thái ban đầu này và mỗi bên lưu giữ một bản trạng thái đã ký. Trạng thái ban đầu có thể được lưu trữ cục bộ trong cơ sở dữ liệu hoặc nơi lưu trữ an toàn của mỗi bên.
-
Thứ năm: Khi đóng kênh, hai bên cần xác nhận trạng thái cuối cùng, tạo chữ ký cho trạng thái cuối cùng, sau đó gửi trạng thái này lên blockchain để xác minh chữ ký và thanh toán, chính thức đóng kênh.
Hai Nguyên lý và quy trình hoạt động của kênh trạng thái
2.1 Tạo và triển khai hợp đồng đa chữ ký, thiết lập kênh
2.1.1 Triển khai hợp đồng đa chữ ký
Chuỗi chính (L1) cần triển khai một hợp đồng đa chữ ký để quản lý kênh. Hợp đồng này yêu cầu hai bên gửi vào một khoản tiền nhất định và khóa lại cho đến khi kênh được đóng, hoàn tất thanh toán và giải phóng tiền.
2.1.2 Gửi tiền vào
Sau khi hợp đồng được triển khai (hoặc đã tồn tại), hai bên cần gửi vào một lượng tiền nhất định, số tiền này sẽ bị khóa trong hợp đồng đa chữ ký hiện tại.
2.2 Giao dịch ngoài chuỗi
2.2.1 Tạo trạng thái ban đầu
Khi kênh được thiết lập, hai bên tạo ra trạng thái ban đầu, ghi nhận số dư khởi tạo của cả hai (ví dụ: Alice 5 ETH, Bob 5 ETH). Cả hai bên ký vào trạng thái ban đầu và lưu giữ riêng một bản đã ký. Trạng thái ban đầu có thể được lưu trong cơ sở dữ liệu cục bộ hoặc nơi lưu trữ an toàn của mỗi bên.

image.png
2.2.2 Thực hiện giao dịch
Alice chuyển 1 ETH cho Bob. Sau giao dịch, trạng thái số dư mới là: Alice 4 ETH, Bob 6 ETH. Cả hai bên ký xác nhận vào trạng thái số dư mới này.

image.png
2.2.3 Nhiều giao dịch liên tiếp
Hai bên có thể tiếp tục thực hiện nhiều giao dịch, cập nhật trạng thái số dư và ký xác nhận sau mỗi lần. Ví dụ, sau khi Bob chuyển 2 ETH cho Alice, trạng thái số dư mới là: Alice 6 ETH, Bob 4 ETH. Dữ liệu các giao dịch này được lưu cục bộ ở Alice và Bob, không gửi ngay lên blockchain.

image.png
2.3 Đóng kênh
2.3.1 Chuẩn bị đóng kênh
2.3.1.1 Xác nhận trạng thái cuối cùng
Alice và Bob cần xác nhận trạng thái giao dịch mới nhất hiện tại và đảm bảo cả hai đều đồng ý với trạng thái này. Trạng thái này ghi lại phân bổ số dư cuối cùng (ví dụ: Alice 6 ETH, Bob 4 ETH).
2.3.1.2 Tạo chữ ký cho trạng thái cuối cùng
Cả hai bên ký vào trạng thái cuối cùng, tạo thông tin bao gồm số dư cuối cùng và chữ ký của cả hai bên.

image.png
2.3.2 Gửi trạng thái cuối cùng lên blockchain
Bất kỳ bên nào trong Alice và Bob cũng có thể gửi trạng thái cuối cùng lên blockchain. Nội dung gửi bao gồm phân bổ số dư cuối cùng và chữ ký của cả hai bên.
2.3.3 Xác minh và thanh toán
2.3.3.1 Xác minh chữ ký
Blockchain xác minh chữ ký đã gửi để đảm bảo rằng trạng thái cuối cùng được cả hai bên công nhận. Logic xác minh thường bao gồm kiểm tra tính hợp lệ của chữ ký và xác minh chữ ký có khớp với trạng thái cuối cùng hay không.
2.3.3.2 Thanh toán số dư
Sau khi vượt qua xác minh, hợp đồng thông minh sẽ giải phóng tiền từ địa chỉ đa chữ ký cho hai bên theo phân bổ số dư trong trạng thái cuối cùng. Ví dụ: Alice nhận 6 ETH, Bob nhận 4 ETH.
2.3.3.3 Đánh dấu kênh đã đóng
Hợp đồng thông minh đánh dấu trạng thái kênh là đã đóng, ngăn chặn việc gửi trạng thái thêm lần nữa.
Ba Tại sao kênh cần được thiết kế dưới dạng hợp đồng đa chữ ký?
Việc thiết kế hợp đồng kênh dưới dạng hợp đồng đa chữ ký chủ yếu nhằm đảm bảo an toàn tài sản cho cả hai bên và yêu cầu sự đồng thuận của cả hai để chuyển tiền. Thiết kế này cung cấp thêm một lớp bảo mật, ngăn bất kỳ bên nào tự ý thao tác tiền mà không có sự đồng ý của bên kia. Dưới đây là một số lý do chính khiến hợp đồng kênh được thiết kế dưới dạng hợp đồng đa chữ ký:
3.1 Đảm bảo an toàn tài sản
Trong hợp đồng đa chữ ký, việc chuyển tiền cần có sự ủy quyền bằng nhiều chữ ký (thường là chữ ký của cả hai bên). Điều này đảm bảo rằng không bên nào có thể tự ý chuyển tiền, tăng cường mức độ an toàn cho tài sản.
3.2 Ngăn chặn gian lận
Hợp đồng đa chữ ký có thể hiệu quả ngăn chặn bất kỳ nỗ lực gian lận nào từ một bên. Vì mọi thao tác chuyển tiền đều cần xác nhận bằng chữ ký của cả hai, điều này đảm bảo tất cả giao dịch đều được cả hai bên đồng ý.
3.3 Thực hiện cơ chế xác nhận chữ ký cho giao dịch ngoài chuỗi
Hợp đồng đa chữ ký cho phép thực hiện nhiều giao dịch ngoài chuỗi, cập nhật trạng thái sau mỗi giao dịch thông qua xác nhận chữ ký. Trạng thái cuối cùng sẽ được gửi lên chuỗi để thanh toán sau khi cả hai bên đồng ý. Cơ chế này đòi hỏi xác nhận chữ ký từ cả hai bên, đảm bảo mọi bước thao tác đều minh bạch và được công nhận.
3.4 Đảm bảo tính chính xác khi đóng kênh
Khi đóng kênh, hợp đồng đa chữ ký đảm bảo việc gửi trạng thái cuối cùng và thanh toán cần có sự đồng thuận của cả hai bên. Điều này tránh tình trạng một bên đơn phương đóng kênh và chiếm lợi thế về phân bổ số dư.
Bốn So sánh ưu điểm và nhược điểm của kênh trạng thái
4.1 Ưu điểm
Thứ nhất: Chi phí giao dịch thấp, nâng cao hiệu quả giao dịch
Thứ hai: Dữ liệu không lên chuỗi, mang tính riêng tư cao
Thứ ba: Có giai đoạn thách thức (challenge period), đảm bảo an toàn tốt
4.2 Nhược điểm
Thứ nhất: Có giai đoạn thách thức, rút tiền chậm
Thứ hai: Không hỗ trợ hợp đồng thông minh ngoài chuỗi
Thứ ba: Yêu cầu cả hai bên phải luôn trực tuyến – Các bên tham gia cần duy trì kết nối để kịp thời nhận và xử lý cập nhật trạng thái giao dịch cũng như tham gia giải quyết tranh chấp; nếu một bên cố gắng đóng kênh một cách độc hại hoặc gửi trạng thái sai, bên còn lại đang trực tuyến có thể kịp thời can thiệp thông qua cơ chế giải quyết tranh chấp trên chuỗi
Thứ tư: Số lượng bên tham gia bị giới hạn – Một kênh thường chỉ có 2 bên, không thể có quá nhiều người tham gia
Thứ năm: Không phù hợp với mạng quy mô lớn, khả năng mở rộng kém.
Chào mừng tham gia cộng đồng chính thức TechFlow
Nhóm Telegram:https://t.me/TechFlowDaily
Tài khoản Twitter chính thức:https://x.com/TechFlowPost
Tài khoản Twitter tiếng Anh:https://x.com/BlockFlow_News













