Tác giả: Roy Sheinfeld
Nguồn: https://bitcoinmagazine.com/technical/spark-explained-like-youre-five
Một số độc giả có thể nhớ rằng tôi đã viết một bài báo cách đây nhiều năm có tựa đề " Hiểu Mạng Lightning bằng bàn tính ", được viết sau khi nhận ra rằng nhiều người chưa hiểu đầy đủ về Mạng Lightning. Vào thời điểm đó, mục đích của tôi không phải là giải thích chi tiết về mật mã và cách triển khai của Mạng Lightning, mà là làm sáng tỏ các khái niệm cốt lõi đằng sau các kênh thanh toán. Tôi đã sử dụng bàn tính như một phép ẩn dụ để tập trung sự chú ý của người đọc vào các khái niệm hơn là cơ chế hoạt động. Phương pháp này đã khá hiệu quả, và từ đó mọi người đã sử dụng phép so sánh bàn tính này để giải thích các kênh Lightning cho người mới bắt đầu.
Gần đây, tôi cảm thấy vô cùng bực bội.
Tôi nhận thấy một tình huống tương tự khi thảo luận về Spark. Một số người biết nói " statechain " ( bản dịch tiếng Trung ), nhưng với hầu hết mọi người, chỉ có vậy. Cũng giống như đối diện Lightning Network, vấn đề không phải là thiếu thông minh hay lười biếng, mà đơn giản là thiếu hiểu biết về mô hình tư duy cơ bản. Vì vậy, tôi sẽ thử lại điều tương tự: giải thích cách Spark hoạt động từ góc độ khái niệm, mà không sử dụng thuật ngữ mật mã.
Hai mảnh ghép hình
Tính năng cốt lõi của Spark là cho phép người dùng nhận và gửi Bitcoin mà không cần phát tán giao dịch lên blockchain. Nói cách khác, khi quyền sở hữu Bitcoin thay đổi, từ góc nhìn của mạng blockchain, nó dường như không di chuyển. Thay vào đó, chỉ những cá nhân có thể cùng nhau ủy quyền chi tiêu Bitcoin đó mới thay đổi. Quyền ủy quyền chung này được chia sẻ giữa người dùng và một nhóm các nhà điều hành (được gọi là "Các thực thể Spark (SE)").
Để giải thích cách thức hoạt động này, hãy tưởng tượng bạn đang chi tiêu một lượng Bitcoin từ thiết bị Spark của mình, điều này đòi hỏi phải giải một câu đố đơn giản gồm hai mảnh ghép:
- Người dùng nắm giữ một phần của bức tranh toàn cảnh;
- Mảnh ghép còn lại của bức tranh đang nằm trong tay SE.
Bitcoin chỉ có thể được sử dụng khi ghép được hai mảnh ghép giống nhau. Các loại tiền tệ khác nhau sử dụng các kiểu ghép hình khác nhau.
Giờ chúng ta hãy cùng xem quy trình chuyển giao quyền sở hữu diễn ra như thế nào.
Ban đầu, Alice giữ một mảnh ghép hình trùng khớp với một mảnh ghép hình khác do SE (Security Engineer) nắm giữ. Cô có thể sử dụng Bitcoin của mình trong thiết bị Spark bằng cách ghép hai mảnh ghép đó lại với nhau. Khi Alice muốn gửi Bitcoin cho Bob, cô đã nhờ Bob tạo một bộ ghép hình mới với SE. Điều quan trọng là bản thân bộ ghép hình không thay đổi: bộ ghép hình cũ và bộ ghép hình mới (các hình dạng) vẫn giống nhau; chỉ có hình dạng của các mảnh ghép tạo nên nó thay đổi. Bộ ghép hình mới được thiết kế dành cho Bob: một mảnh ghép thuộc về Bob, và mảnh còn lại thuộc về SE. Từ đó trở đi, chỉ có mảnh ghép trong tay Bob mới có thể được ghép với mảnh ghép trong tay SE. Alice vẫn có thể giữ mảnh ghép cũ của mình, nhưng điều đó vô ích. Bởi vì SE đã đốt mảnh ghép trùng khớp với mảnh ghép của Alice, nên mảnh ghép của Alice không thể được ghép với mảnh ghép của bất kỳ ai và không thể được sử dụng để chi tiêu Bitcoin. Do đó, quyền sở hữu đã được chuyển giao cho Bob một cách hiệu quả, mặc dù Bitcoin do thiết bị Spark kiểm soát không di chuyển trong blockchain.

Bob sau đó có thể lặp lại quy trình tương tự, gửi cùng một lượng Bitcoin cho Carol; và cứ thế tiếp tục. Mỗi lần chuyển khoản được thực hiện bằng cách thay thế các mảnh ghép của bức tranh (thay vì phát tán giao dịch trong blockchain).
Điều này đương nhiên đặt ra câu hỏi: điều gì sẽ xảy ra nếu SE không loại bỏ phần sở hữu cũ của mình? Trong trường hợp này, SE có thể thông đồng với chủ sở hữu trước đó (như Alice) để chi tiêu Bitcoin lẽ ra thuộc về chủ sở hữu mới (như Bob). Chúng ta cần tin tưởng SE – rằng họ sẽ đốt phần sở hữu ban đầu của mình trong khi hỗ trợ việc chuyển giao quyền sở hữu. Tuy nhiên, điều quan trọng cần hiểu là SE không phải là một cá nhân; đó là một nhóm các nhà điều hành, và các phần sở hữu ở phía SE không do một nhà điều hành duy nhất nắm giữ. Việc thay thế một phần sở hữu đòi hỏi sự hợp tác giữa nhiều nhà điều hành. Mỗi bên có thể bí mật nắm giữ một phần sở hữu cũ hoặc tạo lại nó sau đó. Do đó, miễn là một nhà điều hành trung thực trong quá trình chuyển giao, điều đó đủ để ngăn chặn việc kích hoạt lại một phần sở hữu cũ.

Ý tưởng cốt lõi rất đơn giản: Spark không chuyển Bitcoin trong blockchain ; khi thực hiện việc đó, nó chỉ đơn giản là thay thế người có quyền Bitcoin. Vị trí của Bitcoin mà nó kiểm soát trong Chuỗi vẫn không thay đổi; chỉ có các phần khớp với nhau mới bị thay đổi.
Để giữ cho phần giải thích ngắn gọn, tôi đã cố tình bỏ qua cơ chế thoát hiểm đơn phương của Spark , một phần quan trọng trong mô hình bảo mật của nó, nhưng việc thảo luận về nó sẽ đi chệch khỏi khái niệm cốt lõi mà tôi muốn nhấn mạnh. Điều quan trọng là, Spark không phải là một hệ thống mà người dùng phụ thuộc hoàn toàn vào SE (Spark Exchange). Mặc dù các giao dịch hàng ngày dựa trên ủy quyền liên kết, Spark vẫn cung cấp cho người dùng tùy chọn chi tiêu tiền của họ một cách độc lập trong blockchain mà không cần sự hợp tác của SE. Cơ chế thoát hiểm này đã được thiết kế ngay từ đầu, nhưng nó nằm ngoài phạm vi của bài viết này.
(qua)




