Tuần này, một thông tin ngắn gọn từ Crypto Briefing khiến tôi chú ý: Crypto Clarity Act đã bước vào vòng đàm phán cuối cùng, trọng tâm là các điều khoản đạo đức. Không có chi tiết về nội dung, không có tên dự án cụ thể, không có dữ liệu thị trường. Chỉ có một câu duy nhất: "cuộc đàm phán cuối cùng" và "điều khoản đạo đức".
Là một kỹ sư đã kiểm toán hàng trăm hợp đồng thông minh, tôi không thể dừng lại ở việc theo dõi tin tức. Tôi cần phân tích: nếu đạo luật này được thông qua, nó sẽ thay đổi cấu trúc code của bạn như thế nào? Bởi vì một điều khoản đạo đức, nếu được định nghĩa sai, không chỉ là một dòng chữ trong văn bản pháp luật. Nó sẽ trở thành đặc tả kỹ thuật mà các nhà phát triển phải hiện thực hóa.
Crypto Clarity Act là một đề xuất lập pháp của Mỹ nhằm xác định tài sản số là chứng khoán, hàng hóa, hay một loại tài sản độc lập. Mục tiêu là tạo ra sự rõ ràng cho thị trường. Nhưng tin tức hiện tại chỉ cho thấy hai điểm mốc: quá trình lập pháp gần kết thúc, và đạo luật có thể "định hình tương lai của quản lý tài sản số". Điều này ảnh hưởng đến niềm tin thị trường và sự ủng hộ từ phía các nhà lập pháp. Tuy nhiên, sự mơ hồ đang ở mức tối đa: chúng ta không biết điều khoản đạo đức là gì.
Khi tôi xem xét các dự án blockchain, tôi luôn tìm kiếm rủi ro trong thiết kế. Với một đạo luật, rủi ro nằm ở định nghĩa. "Đạo đức" là một từ trừu tượng. Trong toán học, bạn có thể định nghĩa một giới hạn bằng epsilon-delta, chính xác và kiểm chứng được. Trong chính sách công, "đạo đức" có thể mang một trăm cách hiểu. Cách hiểu đó sẽ được một ai đó viết thành mã máy tính. Và mã máy tính không có khả năng tự giải thích thế nào là "công bằng" hay "minh bạch".
Dựa trên kinh nghiệm audit của tôi, tôi có thể chỉ ra một kịch bản. Giả sử đạo luật yêu cầu các giao thức phi tập trung phải có "cơ chế ngừng khẩn cấp" khi một giao dịch có dấu hiệu vi phạm đạo đức. Ai có quyền kích hoạt cơ chế đó? Nếu là một tổ chức phi tập trung, bạn cần định nghĩa quy trình biểu quyết. Nếu là một cơ quan trung ương, bạn vừa tạo ra một admin key khổng lồ—một cách tấn công hoàn hảo.
Tôi nhớ lần kiểm toán 0x Protocol v2 vào năm 2018. Tôi dành ba tháng để đọc từng dòng code và phát hiện 7 lỗi liên quan đến phí và front-running. Những lỗi đó không đến từ một cuộc tấn công vũ trụ nào. Chúng đến từ những giả định không được nói rõ. Cũng như vậy, nếu Crypto Clarity Act nói rằng "các token phải được thiết kế để bảo vệ người dùng", thì ai đó sẽ quyết định token đó có cần một danh sách trắng hay không.
Năm 2020, khi DeFi Summer bắt đầu, tôi so sánh mã nguồn Uniswap v2 và Compound. Tôi tìm thấy một điểm khác biệt: phí quản lý mà Compound tính cao hơn 0.5% so với whitepaper. Điều đó không gây ra thiệt hại ngay lập tức, nhưng nó chứng minh một nguyên tắc: văn bản tài liệu và code thực tế có thể lệch nhau. Với một đạo luật, sự lệch đó có thể là hàng tỷ đô la.
Nếu Crypto Clarity Act đưa ra một định nghĩa cụ thể về "quyền tài sản" dựa trên khả năng chuyển nhượng, các dự án game NFT hoặc tài sản trong metaverse sẽ phải thiết kế lại cơ chế lưu trữ. Các hợp đồng thông minh tôi đã audit cho CryptoPunks–liên quan đến metadata chậm 3 giây trên mainnet–cho thấy rằng việc tối ưu hóa hiển thị không phải là vấn đề chính. Vấn đề là định nghĩa về quyền sở hữu. Nếu bạn sử dụng IPFS để lưu dữ liệu, bạn phải chấp nhận một mô hình phân tán. Nhưng nếu luật yêu cầu dữ liệu phải được lưu trữ có thể truy xuất trong một khoảng thời gian nhất định, bạn sẽ phải tạo một lớp lưu trữ tập trung phía sau. Đó là một điểm quay đầu.
Hệ sinh thái Layer 2 hiện tại cũng không tránh khỏi. Năm 2022, khi thị trường sụp đổ, tôi dành thời gian nghiên cứu Optimism và Arbitrum. Tôi thu thập 100 giao dịch thực tế, và phát hiện ra rằng Optimism rẻ hơn 40% cho token ERC-20 nhưng đắt hơn 10% cho hoán đổi. Kết quả đó được công bố, một quỹ đầu tư đã liên hệ và mời tôi làm cố vấn kỹ thuật. Điều tôi nhận ra: sự khác biệt về chi phí không phải là một quy luật tự nhiên, mà là một lựa chọn thiết kế. Các chuỗi Layer 2 có thể lựa chọn giữa bảo mật, tốc độ và chi phí. Một đạo luật mới về đạo đức có thể buộc họ chọn thêm một yếu tố thứ tư: tuân thủ.
Hãy tưởng tượng rằng một điều khoản đạo đức yêu cầu tất cả các nhà điều hành nút mạng phải được xác minh danh tính. Điều đó khiến cho việc trở thành một validator ẩn danh trở nên bất hợp pháp. Khi đó, các giao thức Byzantine Fault Tolerance, vốn dựa trên giả định rằng một phần ba số nút có thể là gian lận, sẽ phải xem xét lại mô hình đe dọa của chúng. Một nút được xác minh danh tính có thể chịu trách nhiệm pháp lý, nhưng nó không đảm bảo rằng nút đó không bị tấn công. Trên thực tế, nó có thể trở thành mục tiêu. Kẻ tấn công biết chính xác ai đang vận hành nút đó.
Không có gì là "đạo đức" tuyệt đối trong một hệ thống kỹ thuật thuần túy. Chỉ có các tiêu chuẩn được con người lựa chọn. Một giao thức có thể trung lập về mặt đạo đức, nhưng khi bạn thêm một điều khoản yêu cầu những người tham gia phải "hành động có trách nhiệm", bạn mở ra một không gian cho hàng trăm cách diễn giải. Mỗi cách diễn giải có thể trở thành một cơ chế trừng phạt. Và các cơ chế trừng phạt, nếu được viết sai, có thể bị thao túng.
Tôi đã viết một báo cáo 50 trang cho một quỹ ETF vào năm 2024, phân tích rủi ro của Aave v3 và Uniswap v3. Trong đó tôi chỉ ra rằng xác suất oracle gặp sự cố là khoảng 0.02% mỗi năm, nhưng xác suất một mô hình quản trị thay đổi bất ngờ lại cao hơn rất nhiều. Lỗi không nằm ở code, mà nằm ở giả định. Nếu Crypto Clarity Act khiến cho một nhóm phát triển phải thêm một chức năng quản trị mới để tuân thủ, thì họ có thể vô tình tạo ra một lỗ hổng. Kiến trúc thông minh là kiến trúc tối giản. Mỗi dòng thêm vào đều làm tăng diện tích tấn công.
Đây là điểm phản trực giác: Một đạo luật được tạo ra để mang lại sự rõ ràng có thể tạo ra sự mơ hồ nguy hiểm nhất. Bởi vì các nhà phát triển sẽ buộc phải phiên dịch ngôn ngữ pháp lý sang ngôn ngữ máy. Quá trình phiên dịch đó không bao giờ hoàn hảo.
Hãy nhìn vào một khái niệm đơn giản như "giao dịch nội bộ" trong thị trường truyền thống. Trong blockchain, ai là người nội bộ? Một người nắm giữ 51% số token? Một nhà phát triển biết trước thời điểm nâng cấp? Một thợ mỏ thấy các giao dịch trong mempool? Nếu đạo luật cố gắng định nghĩa "nội bộ" một cách máy móc, nó sẽ không thể phủ hết các khả năng. Kẻ tấn công chỉ cần tìm một định nghĩa chưa được code thành luật, rồi khai thác qua kẽ hở đó.
Khi tôi đánh giá các giao thức cho quỹ tổ chức, tôi luôn tìm kiếm một điểm mù trong kế hoạch khôi phục. Nếu một cơ quan quản lý yêu cầu bạn phải có khả năng "dừng giao dịch" khi một dự án bị phát hiện lừa đảo, bạn sẽ đặt quyền đó vào đâu? Trong một multisig? Trong một DAO? Hay trong một contract đặc biệt? Mỗi lựa chọn đều là một quyết định kỹ thuật, không phải một quyết định đạo đức. Nhưng rồi các quyết định kỹ thuật này sẽ quyết định ai thực sự có quyền điều khiển hệ thống.
Crypto Clarity Act có thể trở thành một chuẩn mực toàn cầu. Nó có thể giúp các quỹ đầu tư phân bổ vốn an toàn hơn. Tuy nhiên, tôi thấy một mối nguy hiểm lớn hơn nhiều trong các cuộc đàm phán tập trung vào đạo đức: họ có thể quên rằng blockchain, trước tiên, là một hệ thống toán học. Đạo đức không thể được chứng minh bằng một bằng chứng số học. Nó chỉ có thể được thực thi qua các quy tắc đồng thuận.
Vậy hãy hỏi các nhà lập pháp: bạn muốn mọi validator phải tuân theo một tiêu chuẩn đạo đức, hay bạn muốn họ tuân theo một tiêu chuẩn kỹ thuật rằng một phần ba trong số họ có thể là kẻ tấn công? Bạn không thể có cả hai. Vì nếu bạn cố gắng ép tất cả validator vào một khuôn mẫu đạo đức, bạn sẽ phá vỡ giả định cơ bản về tính chống kiểm duyệt. Hệ thống sẽ trở nên mong manh, dễ bị thao túng hơn.
Không có gì là miễn phí trong thiết kế hệ thống. Chỉ có sự đánh đổi. Nếu bạn lựa chọn tuân thủ, bạn phải trả giá bằng sự phân quyền. Nếu bạn lựa chọn phân quyền, bạn phải trả giá bằng khả năng kiểm soát. Một đạo luật không thể phá vỡ quy luật đó.
Trong 24 giờ tới, nếu các cuộc đàm phán được công bố với các điều khoản đạo đức cụ thể, các nhà phát triển không nên chờ đợi bản dịch chính thức. Họ nên chuẩn bị trước các phương án kỹ thuật. Hãy tự hỏi: nếu luật yêu cầu bạn thêm một hàm "pause", bạn có thể thiết kế nó an toàn nhất có thể như thế nào? Nếu luật yêu cầu xác minh danh tính, bạn sẽ lưu trữ dữ liệu đó ở đâu? Nếu luật yêu cầu bạn xóa một token khỏi sàn giao dịch phi tập trung, bạn có thể làm điều đó mà không phá vỡ tính thanh khoản của toàn bộ pool?
Đó là những câu hỏi mà tôi vẫn thường hỏi khi kiểm toán một hợp đồng. Khi tôi phát hiện một lỗi trong 0x Protocol v2, tôi không chỉ báo cáo lỗi. Tôi phải chỉ ra cách khai thác nó như thế nào. Các nhà phát triển blockchain giờ đây cũng cần làm như vậy với đạo luật này: phải mô phỏng cách đạo luật có thể bị khai thác.
Một điều khoản đạo đức có thể nghe như một lời hứa. Nhưng nó chỉ thực sự có ý nghĩa khi nó được viết thành code. Và một khi nó được viết thành code, nó sẽ không còn là đạo đức nữa. Nó là một cơ chế. Cơ chế đó có thể tốt hoặc xấu. Tôi không có dữ liệu để nói rằng Crypto Clarity Act tốt hay xấu. Tôi chỉ có thể nói rằng: nếu các bạn viết luật, hãy nhớ rằng có những kỹ sư sẽ đọc nó bằng ngôn ngữ của biên dịch, không phải bằng ngôn ngữ của triết học.
Chúng ta đang đứng trước một bước ngoặt. Các cuộc đàm phán cuối cùng này không chỉ quyết định số phận của một đạo luật; chúng quyết định xem thế hệ hợp đồng thông minh tiếp theo sẽ được xây dựng dựa trên sự tin tưởng vào toán học, hay dựa trên sự tin tưởng vào những lời hứa đạo đức có thể bị mã hóa sai cách. Tôi không thể chọn thay họ. Nhưng tôi có thể nhắc họ một điều: code sẽ luôn nói sự thật cuối cùng.


