State Channel là gì? Tìm hiểu ‘Kênh trạng thái’ trong Giao dịch ngoài chuỗi

State Channel là gì? Tìm hiểu 'Kênh trạng thái' trong Giao dịch ngoài chuỗi

Trong những năm gần đây, công nghệ Blockchain đã trở thành một chủ đề được quan tâm, mặc dù sự chấp nhận trên toàn thế giới đối với công nghệ này vẫn chưa thể kết luận được do khả năng mở rộng, tính ẩn danh và chi phí giao dịch của nó.

Trong bài viết này, sẽ làm cho bạn hiểu các vấn đề được đề cập ở trên đang hạn chế việc áp dụng Blockchain trên các ứng dụng hàng ngày như thế nào. Chúng ta hãy giả định rằng Alice và Bob đang chơi một trò chơi cờ vua được thiết kế trên đỉnh cao của công nghệ Blockchain. Để thực hiện một nước đi, người chơi bắt buộc phải trả phí giao dịch và chờ xác nhận nước đi trên Blockchain vì nước cờ yêu cầu thay đổi trạng thái và thay đổi trạng thái cần được cam kết trên Blockchain.

Thời gian xác nhận và phí xác nhận như vậy làm cho công nghệ Blockchainkhông thể tiếp cận với bàn tay nhỏ bé. Ngay cả khi chúng ta bỏ qua vấn đề phí giao dịch, các giải pháp Blockchain hiện tại không thể mở rộng cho các ứng dụng phi tập trung (DApps). Kênh trạng thái (State channel) giải quyết những mối quan tâm này mà không làm tăng đáng kể rủi ro cho bất kỳ người tham gia nào.

Kênh trạng thái (State channel) là gì?

Kênh trạng thái (State channel) là một kỹ thuật được thiết kế để cho phép người dùng thực hiện nhiều giao dịch trên Blockchain như thay đổi trạng thái hoặc chuyển tiền mà không cần cam kết tất cả các giao dịch với Blockchain.

Trong kênh trạng thái truyền thống, chỉ có hai giao dịch được thêm vào Blockchain, nhưng số lượng giao dịch vô hạn hoặc gần như vô hạn có thể được thực hiện giữa những người tham gia.

Ví dụ: Trong một trò chơi Cờ vua được xây dựng trên các kênh trạng thái (State channel), nước đi bắt đầu và nước đi đóng lại của trò chơi cờ vua phải được thực hiện trên Blockchain. Tất cả các động thái khác có thể được thực hiện ngoài chuỗi (off-chain) mà không cần sự tham gia của Blockchain. Các giao dịch ngoài chuỗi (off-chain transactions) này không yêu cầu phí với giá trị cuối cùng ngay lập tức.

  TCBS tiên phong sử dụng Blockchain với trái phiếu doanh nghiệp

Kênh thanh toán (Payment channel) là một trong những kênh triển khai của kênh trạng thái (State channels), trong đó xử lý các giao dịch chuyển tiền. Kênh trạng thái (State channels) là một hợp đồng thông minh (smart contract) thực thi các quy tắc được xác định trước cho các giao dịch ngoài chuỗi. Mỗi giao dịch tạo ra một trạng thái mới dựa trên trạng thái trước đó, được ký bởi mỗi bên, có thể cung cấp bằng mật mã trên blockchain. Mọi trạng thái mới đều làm cho trạng thái cuối cùng không hợp lệ vì hợp đồng thông minh chỉ thừa nhận trạng thái cao nhất là trạng thái hợp lệ.

Các kênh trạng thái (State channels) không có “định hướng” bởi vì chúng là sự tổng quát hóa và là phiên bản mạnh mẽ hơn của các kênh thanh toán (payment channels). Hãy coi kênh một chiều là kênh có trạng thái chỉ đơn giản là một giá trị trạng thái: “Khoản thanh toán của Alice cho Bob”. Hãy coi kênh hai chiều là kênh có hai giá trị trạng thái: “Số dư của Alice” và “Số dư của Bob”.

Hoạt động của các kênh trạng thái (State channels)

Trong ứng dụng kênh trạng thái (State channels), mỗi bên phải ký một giao dịch kênh ban đầu (opening – mở) và gửi tiền theo logic nghiệp vụ của ứng dụng. Người dùng cần phải trả chi phí giao dịch được xác định trước mỗi khi họ mở một kênh mới hoặc gửi tiền vào kênh đang hoạt động. Một giao dịch gửi tiền sẽ trích tiền từ tài khoản của người gửi tiền và chuyển nó đến địa chỉ hợp đồng thông minh.

Cơ chế gửi tiền này sẽ đảm bảo rằng sẽ không có chi tiêu gấp đôi xảy ra trong mạng trong chuỗi (on-chain) hoặc ngoài chuỗi (off-chain). Hợp đồng thông minh không được phép đúc (mint) hoặc phá hủy tiền, do đó ở mỗi trạng thái hợp lệ, tất cả những người tham gia kết hợp tiền bằng tổng số tiền đã ký gửi không hơn không kém.

  CryptoCookies: Tạo ra một phương thức giao dịch hoàn toàn mới trên Blockchain

Chúng ta hãy xem xét lại ví dụ được trích dẫn ở trên. Alice và Bob muốn mở một kênh thanh toán vì họ đang chơi trò chơi tic-tac-toe và sau mỗi trận đấu, họ muốn chuyển tiền. Ban đầu, cả hai đều ký vào giao dịch mở và đặt 100 và 100 tiền mặt vào bảng.

Alice và Bob dự kiến ​​sẽ chỉ trả phí giao dịch tại thời điểm mở kênh và giờ đây họ có thể chơi vô số vòng trò chơi mà không phải trả phí giao dịch với giao dịch cuối cùng ngay lập tức. Giả sử họ quyết định rời trò chơi sau vòng thứ n và trạng thái mới nhất là Alice 75 và Bob 125.

Alice hoặc Bob đều có thể gửi giao dịch đóng kênh với trạng thái mật mã hợp lệ mới nhất. Sẽ mất một khoảng thời gian và chi phí giao dịch để xác thực giao dịch đóng này và đến lượt nó, giao dịch sẽ gửi lại tiền mặt vào ví tương ứng.

Kênh thanh toán mang lại lợi ích so với các giao dịch trên chuỗi (on-chain)

  • Rẻ

Người tham gia trả phí xác nhận tại thời điểm mở và đóng kênh. Tất cả các giao dịch khác đều miễn phí dù số lượng giao dịch hàng trăm, hàng nghìn.

  • Tính chung cuộc tức thì

Trung bình, Bitcoin sẽ mất khoảng 10 phút để hoàn thành giao dịch và Ethereum sẽ mất từ ​​15 giây đến 5 phút nếu bạn trả phí gas Ethereum thông thường. Điều đó có nghĩa là nếu Alice thực hiện một bước đi, trò chơi sẽ dừng lại cho đến khi nước đi được xác nhận trên chuỗi (on-chain).

Ngược lại, tính cuối cùng của giao dịch kênh thanh toán phụ thuộc vào băng thông của mạng, càng nhiều thì băng thông càng nhanh.

  • Sự riêng tư

Tất cả các giao dịch trên đều được đăng ký trong sổ cái Blockchain và có sẵn trong phạm vi công cộng. Bất kỳ ai cũng có thể phân tích các dữ liệu Blockchain này và có được thông tin chi tiết về từng cá nhân.

  Blockchain là gì và nó được sử dụng để làm gì?

Ngược lại, các giao dịch ngoài chuỗi (off-chain) của kênh trạng thái (State Channel) không được cam kết trong Blockchain ngoại trừ các giao dịch mở và đóng để cung cấp cho người tham gia một mức độ riêng tư đáng kể.

  • Có thể mở rộng

Giao dịch ngoài chuỗi không thay đổi trạng thái trên chuỗi, do đó, ứng dụng kênh thanh toán có thể mở rộng. Và nếu chúng ta có thể xây dựng một mạng lưới các kênh thanh toán như Raiden Network hoặc Lightning Network, thì chúng ta không cần phải mở kênh trực tiếp giữa hai bên nếu có một số kênh gián tiếp dẫn đến khả năng mở rộng.

  • Bảo mật

Tính bảo mật của các trạng thái kênh thanh toán phụ thuộc vào cách hợp đồng thông minh xác thực các trạng thái, thông tin nào được đưa vào các trạng thái như (1) state nonce, (2) địa chỉ hợp đồng thông minh, (3) Id kênh, (4) trạng thái và tình trạng của các bên liên quan, v.v. Mỗi người tham gia sẽ tạo một chữ ký điện tử (digital signature) để xác thực trạng thái hiện tại.

Mục đích của việc đưa thông tin này vào trạng thái là làm cho mỗi trạng thái trở nên duy nhất trên toàn cầu như UUIDS. Địa chỉ hợp đồng thông minh và id kênh, được sử dụng cùng nhau để ngăn chặn các cuộc tấn công phát lại trong hợp đồng và trong hợp đồng.

Những thách thức còn lại của Kênh trạng thái (State Channel)

Kênh thanh toán sẽ khóa số tiền đã gửi trong hợp đồng thông minh và giải phóng nó sau khi kênh đã đóng. Không ai muốn khóa một lượng vốn lớn trong một hợp đồng thông minh làm cho các kênh thanh toán trở nên hữu ích cho các khoản thanh toán vi mô. Mỗi trạng thái bắt buộc tất cả những người tham gia phải ký, đó là lý do tại sao một người tham gia ngoại tuyến có thể dừng việc xử lý kênh thanh toán.

Theo: talentica

Khuyến cáo: Thông tin trên bài viết này chỉ mang tính tham khảo, không có bất kỳ lời khuyên nào về mua bán, đầu tư. Bạn hãy tự nghiên cứu trước khi thực hiện bất kỳ hình thức đầu tư nào.

Nội dung đề xuất