Những chi tiết nhỏ nhất trong một mô hình giao dịch đôi khi có thể dẫn đến hậu quả lớn hơn cả các tính năng nổi bật.
Dusk sử dụng một nonce gắn với tài khoản người gửi, và giá trị này sẽ tăng lên khi một giao dịch được thực thi thành công. Nhiệm vụ đơn giản của nó lại rất quan trọng: mạng có thể phân biệt một giao dịch mới với một giao dịch đã được dùng trước đó thay vì coi các yêu cầu giống hệt nhau là những hành động độc lập.
Tôi thích sự nhàm chán của cơ chế này.
Hạ tầng giao dịch tốt thường cần những quy tắc mà người dùng hiếm khi nghĩ tới cho đến khi có điều gì đó xảy ra sai sót. Nonce cung cấp một chuỗi rõ ràng cho thấy một tài khoản đã thực hiện những giao dịch nào.
Nhưng vẫn có một mặt khác của sự đơn giản đó.
Khi các giao dịch từ cùng một tài khoản phụ thuộc vào một chuỗi nonce theo thứ tự, thì các hành động độc lập không phải lúc nào cũng có thể hoạt động như thể chúng hoàn toàn không liên quan. Quy tắc về thứ tự tạo ra cấu trúc cho việc thực thi, nhưng nó cũng có thể đặt ra các ràng buộc đối với cách các giao dịch di chuyển qua hệ thống.
Vậy thì việc sắp xếp nonce theo cấp tài khoản có mang lại kỷ luật giao dịch đúng cho Dusk, hay việc tuân thủ tuần tự chặt chẽ sẽ trở thành trở ngại khi các ứng dụng tài chính cần thực thi song song nhiều hơn??
Tôi đã nghĩ về điều gì xảy ra khi một giao dịch đi đến Dusk.
Ban đầu, có cảm giác như chỉ có một câu hỏi:
**“Mạng có nên chấp nhận giao dịch này không?”**
Nhưng nhìn kỹ hơn, thực ra có hai câu hỏi khác nhau.
Trước hết, giao dịch có tuân thủ các quy tắc của giao thức không?
Sau đó, giả sử là có, các bên tham gia có đồng ý về trạng thái phát sinh từ giao dịch đó không?
Sự khác biệt này rất dễ bị bỏ sót, vì từ bên ngoài, cả hai bước đều dẫn đến cùng một kết quả: một trạng thái được chấp nhận.
Nhưng xét về mặt kiến trúc, chúng là hai nhiệm vụ khác nhau.
Nếu có gì đó trục trặc, việc tách chúng ra sẽ giúp dễ hơn để hỏi chính xác điều gì đã hỏng. Giao dịch không hợp lệ? Hay giao dịch hợp lệ, nhưng các bên lại bất đồng về trạng thái kết quả?
Tôi nghĩ việc tách như vậy là một lựa chọn thiết kế mạnh mẽ.
Nhưng nó cũng tạo ra một câu hỏi mới.
Mọi ranh giới giữa các trách nhiệm lại là một lần bàn giao. Và mọi lần bàn giao cần hoạt động đúng đắn khi có điều bất ngờ xảy ra.
Vì vậy tôi cứ quay lại điều này:
**Việc tách tính hợp lệ khỏi sự đồng thuận có làm cho Dusk dễ suy luận hơn trong các tình huống lỗi hay không, hay mỗi ranh giới bổ sung lại tạo thêm một nơi khác mà hệ thống có thể bị hỏng?**
Càng đọc về @Dusk _Foundation, tôi càng nghĩ rằng bản thân quyền riêng tư không phải là phần khó nhất.
Dusk sử dụng các bằng chứng ZK để giữ chi tiết giao dịch ở chế độ riêng tư, đồng thời vẫn chứng minh rằng giao dịch là hợp lệ.
Điều đó nghe có vẻ hữu ích cho tài chính được quản lý, nơi bạn có thể không muốn mọi chi tiết giao dịch đều được nhìn thấy bởi tất cả mọi người.
Nhưng rồi câu hỏi lớn hơn xuất hiện:
Nếu các chi tiết bị ẩn, thì ai sẽ là người có thể xem chúng khi họ cần?
Tôi thích cách Dusk coi quyền riêng tư và khả năng kiểm toán có thể là những thứ hoạt động cùng nhau.
Nhưng mức độ hiển thị càng mang tính chọn lọc thì các quy tắc về quyền truy cập càng trở nên quan trọng.
Vì vậy tôi vẫn cứ tự hỏi:
Quyền riêng tư có thể lập trình thực sự đang giải quyết vấn đề minh bạch cho các thị trường được quản lý, hay chỉ đơn giản là dời phần khó sang việc truy cập và xác minh?
Mình cứ mãi nghĩ về một điều khác với TermMax: thứ tự giao dịch.
Giao thức có thể có các cơ chế cho vay và đi vay được xác định cẩn thận, nhưng giao dịch vẫn phải đi qua môi trường blockchain nơi thứ tự có thể quan trọng.
Điều đó tạo ra một loại rủi ro khác.
MEV không nhất thiết là sự thất bại của chính thiết kế cho vay. Đó là hệ quả của cách các giao dịch được xử lý xung quanh thiết kế đó, và nó có thể ảnh hưởng đến việc thực thi thông qua các yếu tố như sắp xếp bất lợi hoặc trượt giá.
Mình nghĩ đây là một sự phân biệt quan trọng, vì một giao thức có thể có cơ chế tài chính vững chắc nhưng vẫn khiến người dùng gặp vấn đề ở cấp độ thực thi.
Vậy phân tích giao thức có nên coi thứ tự giao dịch là một phần của mô hình rủi ro cốt lõi của TermMax, hay coi đó là một rủi ro riêng do môi trường thực thi xung quanh tạo ra??
Tôi cứ nghĩ “tính hoàn tất nhanh” chủ yếu là nói đến việc xác nhận một khối nhanh hơn, rồi sau đó tôi xem cách Dusk mô tả tính hoàn tất dạng cuộn (rolling finality), và hóa ra đó không phải phần thú vị nhất.
Sự đồng thuận Succinct Attestation của Dusk không chỉ nhằm đạt được tính hoàn tất trong vài giây. Bản whitepaper mô tả rolling finality như một cách để giới hạn số lần lặp đồng thuận cần thiết trước khi một khối trở thành hoàn tất.
Sự khác biệt nhỏ này lại rất quan trọng.
Thay vì lặp đi lặp lại việc tốn tài nguyên mạng để chứng minh rằng cùng một khối đã hoàn tất, quy trình sẽ tiến lên phía trước trong khi vẫn đảm bảo công việc hoàn tất được giữ trong giới hạn. Tôi thích thiết kế này cho hạ tầng tài chính, bởi việc thanh toán sẽ không thực sự hữu ích nếu mỗi bước bổ sung lại tạo thêm một lớp chờ đợi và tính toán.
Nhưng bên dưới đó là một câu hỏi.
Bạn cần ít lần lặp đồng thuận hơn thì tính hoàn tất càng trở nên hiệu quả. Đồng thời, những lần lặp đó cũng chính là thứ tạo nên mức độ tin cậy của mạng rằng một khối nên được coi là hoàn tất.
Vậy thì cân bằng đúng ở đâu?
Việc giới hạn số vòng hoàn tất khiến Dusk phù hợp hơn cho thanh toán tài chính, hay hiệu quả cuối cùng sẽ trở thành sự đánh đổi với mức độ công việc đồng thuận mà người ta mong muốn??
Những điều về cấu trúc kho của TermMax đã khiến tôi suy nghĩ lại ý nghĩa thực sự của “quản lý thanh khoản”.
Một kho không chỉ đơn giản là nơi khác để đậu vốn. Thiết kế sử dụng cơ chế kế toán kiểu ERC-4626 và cho phép triển khai vốn qua nhiều thị trường tương thích thay vì coi mọi vị thế thị trường như những khoang hoàn toàn tách biệt.
Tôi thích sự tách bạch đó vì việc quản lý vốn có thể diễn ra ở trên cấp độ từng thị trường.
Nhưng chính tại đây câu hỏi lại trở nên khó hơn.
Nếu một kho có thể tương tác với nhiều thị trường hơn thì vốn có thể trở nên hữu ích hơn, nhưng quyết định vốn đó nên nằm ở đâu cũng trở nên quan trọng hơn.
Việc triển khai vốn trên diện rộng thực sự có cải thiện hiệu quả không, hay nó lại khiến việc quản lý rủi ro khó lý giải hơn??
Tôi đã đào sâu lý do tại sao Dusk thưởng cho cử tri khi ủng hộ các ứng viên từ những vòng lặp trước, dù đã từng thất bại.
Ban đầu, quy trình trông có vẻ đơn giản:
Đề xuất → Xác thực → Phê chuẩn
Nhưng phần thú vị nằm ở điều xảy ra khi một vòng lặp thất bại.
Thay vì để khối bị lỗi biến mất, Dusk lại tạo lý do để các ủy ban sau mang nó quay trở lại.
Điều khiến tôi bất ngờ là phần thưởng cử tri này được thêm vào vì một mục đích cụ thể: khuyến khích các ủy ban tương lai bỏ phiếu cho ứng viên từ các vòng lặp trước.
Vì vậy, giao thức đã bổ sung một động lực tài chính để việc khôi phục một khối bị thất bại trở nên đáng làm.
Nhờ đó, một vòng lặp thất bại bớt giống như ngõ cụt và giống hơn với việc mạng vẫn sẵn sàng tiếp tục khôi phục.
Câu hỏi thú vị là: iDusk có đang thông minh khi thưởng cho ủy ban hoàn thành công việc dang dở, hay việc này cho thấy khôi phục vốn cần một cú “thúc” về tài chính ngay từ đầu?
Tôi bắt đầu xem xét quản trị TMX theo một cách khác khi tôi nhận ra điều mà việc staking được cho là sẽ thay đổi.
Người nắm giữ TMX có thể tham gia vào quản trị, nhưng staking cũng có thể mang lại các quyền quản trị nâng cao liên quan đến những thứ như tham số rủi ro thị trường và danh sách whitelisting của curator.
Điều đó khiến tôi thấy hứng thú hơn so với việc chỉ có thêm một hệ thống bỏ phiếu khác.
Những quyết định đó có thể tác động trực tiếp đến cách các thị trường lãi suất cố định được vận hành, vì vậy quản trị trở nên gắn liền với cấu hình thực tế của giao thức thay vì chỉ là các đề xuất ở mức khái quát.
Điểm tích cực là điều hiển nhiên: những người tham gia trong dài hạn có thể có nhiều ảnh hưởng hơn.
Nhưng điều đó lại đặt ra một câu hỏi khó hơn. Việc tập trung hóa quyết định nhiều hơn có thể giúp tăng trách nhiệm giải trình, hoặc cũng có thể khiến chất lượng phán đoán của một nhóm nhỏ trở nên quan trọng hơn rất nhiều.
Việc quản trị được nâng cấp có tạo ra các quyết định giao thức tốt hơn không, hay chỉ khiến quyền lực quản trị trở nên tập trung hơn??
Có điều gì đó về việc phát hành gốc trên Dusk cứ làm tôi băn khoăn.
Trước đây tôi từng nghĩ rằng token hóa và phát hành gốc về cơ bản là cùng một thứ, chỉ khác cách gọi. Không phải vậy.
Token hóa bắt đầu từ một tài sản đã tồn tại và tạo ra một phiên bản biểu diễn trên chuỗi của nó. Phát hành gốc đi xa hơn: chính bản thân chứng khoán có thể có vòng đời được cấu trúc trực tiếp trên chuỗi ngay từ thời điểm phát hành.
Thiết kế Zedger của Dusk thật sự đáng chú ý ở chỗ nó không chỉ giới hạn ở việc nắm giữ một phiên bản tokenized. Bản whitepaper mô tả sự hỗ trợ cho các chứng khoán có thể được token hóa hoặc được phát hành gốc, với các hàm vòng đời như đúc (minting), đốt (burning) và các hành động doanh nghiệp (corporate actions) được tích hợp sẵn vào mô hình tài sản.
Nghe thì có vẻ gọn gàng hơn với tôi.
Nhưng nó cũng đặt ra một câu hỏi khó hơn. Nếu nhiều hơn vòng đời của chứng khoán được đưa lên chuỗi, thì nhiều phần của vòng đời đó phải tuân theo các quy tắc của bên phát hành, sàn giao dịch/địa điểm và thẩm quyền pháp lý. Chỉ riêng năng lực kỹ thuật thôi không khiến tài sản trở nên “native” trong thực tế.
Đó là phần mà tôi cứ phải quay lại.
Việc đưa vòng đời của chứng khoán đến gần chuỗi hơn có làm cho các thị trường được quản lý trở nên thực sự “native” hơn không, hay chỉ đơn giản là chuyển thêm sự phức tạp về quy định vào chính bản thân tài sản??
Tôi cứ nghĩ rằng khả năng mở rộng trong blockchain thường được mô tả quá hẹp.
Một chuỗi có thể xử lý nhiều giao dịch hơn nhưng vẫn trở nên không phù hợp cho các ứng dụng tài chính nếu việc thực thi trở nên khó đoán khi mức hoạt động tăng lên.
Điều khiến tôi quan tâm ở Dusk là họ coi khả năng mở rộng như một bài toán hệ thống thay vì chỉ là một con số thông lượng lớn hơn. Kiến trúc tách các mối quan tâm ra giữa đồng thuận, mạng và thực thi, nhờ đó mỗi lớp có một nhiệm vụ cụ thể hơn.
Nghe có vẻ gọn gàng hơn việc chỉ đuổi theo một con số TPS gây chú ý.
Nhưng bên dưới điều đó còn một câu hỏi. Các ứng dụng tài chính không chỉ cần năng lực khi nhu cầu thấp. Chúng cần hệ thống vẫn hoạt động ổn định và có thể dự đoán được khi nhiều quy trình (workflow) cùng lúc cạnh tranh để giành tài nguyên.
Năng lực lý thuyết cao hơn thì hữu ích. Còn năng lực có thể dự đoán được thì khó hơn.
Vậy cách tiếp cận theo lớp của Dusk thực sự có phải là con đường tốt hơn để xây dựng hạ tầng tài chính có khả năng mở rộng, hay việc tách hệ thống thành nhiều thành phần chuyên biệt hơn chỉ tạo ra thêm sự phức tạp cần phải quản lý??
Tôi đã dành một thời gian để xem xét lớp mạng @Dusk và nhận ra mình chú ý nhiều hơn đến một thứ mà hầu hết người dùng không bao giờ thấy: các khối thực sự di chuyển qua mạng như thế nào.
Kadcast sử dụng một thiết kế ngang hàng (peer-to-peer) có cấu trúc, dựa trên định tuyến kiểu Kademlia thay vì chỉ đơn giản đẩy mọi thông điệp tới mọi peer được kết nối. Ý tưởng là làm cho việc lan truyền (propagation) trở nên nhắm mục tiêu hơn và giảm lượng giao tiếp dư thừa diễn ra trong mạng.
Nghe có vẻ như đó là một chi tiết phụ trợ của backend.
Có lẽ là không.
Với một chuỗi liên quan đến hoạt động tài chính, hiệu quả mạng cuối cùng sẽ trở thành một phần của trải nghiệm người dùng. Nếu các nút dành ít công sức hơn để chuyển đi lặp lại cùng một thông tin, thì sẽ có thêm chỗ để mạng xử lý công việc hữu ích thay vì hao tổn cho chi phí liên lạc.
Điều tôi ít chắc chắn hơn là sự đánh đổi. Một hệ thống lan truyền có cấu trúc hơn có thể giảm lãng phí, nhưng đồng thời nó cũng đưa vào nhiều giả định hơn về cách mạng được tổ chức và cách các nút kết nối với nhau.
Vậy việc lan truyền khối thông minh hơn có cải thiện một cách đáng kể nền tảng cho việc thanh toán tài chính hay cấu trúc mạng bổ sung lại tạo ra sự phức tạp khiến việc quản lý ở quy mô lớn trở nên khó khăn hơn không??
Hầu hết các ứng dụng EVM coi tính minh bạch như một tính năng. Nhưng trong tài chính thể chế, giả định đó bắt đầu không còn đúng.
DeFi hoạt động tốt với số dư và giao dịch công khai. Các tổ chức thường cần một thứ khác: chứng minh một giao dịch là hợp lệ mà không phải công khai toàn bộ danh mục, bảng cân đối kế toán hoặc các đối tác.
Đó là lúc DuskEVM trở nên thú vị.
Dusk vẫn giữ môi trường Solidity và EVM quen thuộc, đồng thời sử dụng thực thi bí mật, mã hóa và các bằng chứng không kiến thức để tách biệt việc xác minh khỏi khả năng nhìn thấy.
Mạng có thể xác minh rằng các quy tắc đã được tuân thủ mà không buộc tất cả mọi người phải xem dữ liệu gốc.
Sự khác biệt đó quan trọng.
Quyền riêng tư không nhất thiết phải đánh đổi lấy việc thiếu kiểm chứng. Nó có thể là việc kiểm soát ai được xem cái gì, trong khi vẫn giữ cho trạng thái có thể được chứng minh.
Thách thức thực sự là làm cho việc tạo bằng chứng, hiệu năng, tích hợp và khả năng công bố chọn lọc hoạt động một cách tin cậy ở quy mô lớn.
Khi tài sản được token hóa và việc các tổ chức áp dụng blockchain tiếp tục tăng trưởng, câu hỏi có thể không còn là liệu dữ liệu tài chính có nên nằm trên onchain hay không.
Mà là mức độ dữ liệu đó thực sự cần phải được nhìn thấy.
Bài toán thiết kế EVM thế hệ tiếp theo có thể không phải là thực thi.
Hôm nay tôi lục lọi các tài liệu đồng thuận @Dusk , và phần khiến tôi chú ý không phải là khía cạnh quyền riêng tư.
Mà là mức độ Dusk nhấn mạnh vào điều gì xảy ra sau khi một giao dịch đã được chấp nhận.
Giả định Xác thực Ngắn gọn (Succinct Attestation) được thiết kế để mang lại tính hoàn tất cuối cùng (finality) tất định cho Dusk khi một khối đã được phê chuẩn. Điều đó có nghĩa là giao dịch không chỉ “có khả năng” ở lại đó khi các khối mới tiếp tục được thêm vào. Nó đạt đến một trạng thái cuối cùng được xác định.
Nghe có vẻ là một chi tiết kỹ thuật cho đến khi bạn nghĩ về các tài sản tài chính.
Nếu bạn đang thanh toán cho một chứng khoán được mã hóa hoặc một giao dịch giao-vs-thanh-toán (delivery-versus-payment), thì sự không chắc chắn về việc trạng thái sổ cái có thể vẫn thay đổi hay không sẽ trở thành một vấn đề vận hành.
Vì vậy, tôi bắt đầu xem Dusk ít như một chuỗi tập trung vào quyền riêng tư hơn và nhiều như một hệ thống thanh toán bù trừ.
Câu hỏi thú vị với tôi là liệu tính hoàn tất cuối cùng tất định có thực sự trở nên quan trọng hơn quyền riêng tư khi các tài sản tài chính thực sự bắt đầu được chuyển lên onchain.
Vì việc che giấu một giao dịch là hữu ích.
Nhưng việc biết chính xác khi nào giao dịch đó trở nên cuối cùng có thể cũng quan trọng không kém.
Tôi đã dành một chút thời gian xem qua các tài liệu giao dịch của Dusk, và phần khiến tôi dừng lại không phải là chính bằng chứng ZK.
Mà là những gì xảy ra sau khi giao dịch trở nên riêng tư.
Phoenix ẩn số tiền, người gửi và các ghi chú cụ thể khỏi những người quan sát công khai, nhưng Dusk cũng hỗ trợ khóa xem (viewing keys) và tiết lộ có chọn lọc khi một bên được ủy quyền thực sự cần bằng chứng.
Điều đó tạo ra một mô hình thú vị hơn câu “quyền riêng tư = không ai có thể nhìn thấy bất cứ thứ gì.”
Một cơ quan quản lý, kiểm toán viên hoặc tổ chức phát hành có thể cần xem một điều gì đó mà phần còn lại của thị trường không cần phải thấy.
Vì vậy, bài toán thiết kế thực sự không phải là che giấu giao dịch.
Mà là quyết định ai được xem phần thông tin bị ẩn, và vì lý do gì.
Chỗ này khiến quyền riêng tư bắt đầu trông giống vấn đề kiểm soát truy cập hơn là một công tắc nhị phân.
Khiến tôi tự hỏi liệu quyền riêng tư ở cấp độ tổ chức cuối cùng phụ thuộc nhiều vào chính mật mã hay phụ thuộc vào các quy tắc chi phối việc công bố.