
SSP và Squads V4: hai thiết kế multisig trên Solana
Ví multisig là một loại ví cần nhiều hơn một sự phê duyệt trước khi tiền có thể di chuyển. Trên Solana, nhiều đội ngũ đã xây dựng các hệ thống multisig, và chúng không hoạt động giống nhau ở bên trong. Bài viết này so sánh hai trong số đó — Squads V4 và chương trình multisig của riêng SSP — không phải để chọn ra người chiến thắng, mà để cho thấy hai triết lý thiết kế trung thực, được lập luận kỹ càng, và mỗi triết lý phù hợp với ai.
Nếu đây là điểm dừng đầu tiên của bạn trong loạt bài, bài viết đồng hành về multisig Solana tự khởi tạo giải thích đầy đủ cách thiết kế của SSP hoạt động. Ở đây, chúng ta đặt nó cạnh lựa chọn lâu đời nhất trên mạng lưới.
Ghi nhận Squads V4 trước tiên
Squads V4 là multisig chiếm ưu thế trên Solana. Nó trưởng thành, bảo vệ giá trị hàng tỷ đô la, và đã được xem xét bởi một danh sách công ty bảo mật dài bất thường — OtterSec, Neodyme, Trail of Bits và Certora, công ty cuối cùng còn áp dụng kiểm chứng hình thức (chứng minh toán học rằng mã hoạt động đúng như đặc tả). Các ví như Fuse được xây dựng trên nó. Bất kỳ so sánh trung thực nào cũng phải bắt đầu từ đó: Squads là một nền tảng nghiêm túc, đã được tôi luyện qua thực chiến, và không điều gì dưới đây là lời chỉ trích nó.
Chương trình multisig của SSP cho Solana mang một hình hài khác vì nó được xây dựng cho một mục tiêu khác. Hai bên không cạnh tranh cho cùng một công việc, và phần còn lại của bài viết này nói về điều gì khác biệt và vì sao.
Một lưu ý về độ trưởng thành, nói thẳng
Một khác biệt quan trọng hơn bất kỳ lựa chọn thiết kế nào, nên nó được nói đầu tiên. Squads V4 chạy trên mạng chính (mainnet) của Solana — mạng lưới trực tiếp nơi tiền thật di chuyển — và đã trải qua các cuộc kiểm toán liệt kê ở trên. Chương trình multisig của SSP cho Solana, tại thời điểm viết bài, chỉ có trên devnet (mạng thử nghiệm của Solana, nơi token không có giá trị tiền tệ) và đang chờ một cuộc kiểm toán bảo mật bên ngoài. Nó chưa phải là thứ bạn nên tin tưởng giao tiền của mainnet. So sánh dưới đây nói về các đánh đổi thiết kế; nó không phải là khuyến nghị dùng phần mềm chưa được kiểm toán trên mainnet.
Ví được tạo ra như thế nào
Khác biệt rõ ràng nhất nằm ở cách một multisig ra đời.
Squads V4 tạo một multisig bằng một lệnh on-chain gọi là multisig_create_v2. Lệnh đó cần hai thứ: người tạo ví (người tạo) và một khóa mới, ngẫu nhiên, dùng một lần gọi là create_key. Địa chỉ on-chain của ví được suy ra từ create_key ngẫu nhiên đó — nên địa chỉ đơn giản là không tồn tại, và không thể được biết hay nạp tiền, cho đến khi giao dịch tạo được thực thi. Cũng có một người tạo hiện diện vào khoảnh khắc đó: một bên duy nhất thiết lập ví.
Chương trình của SSP không có bước tạo theo nghĩa đó. Địa chỉ multisig của nó được suy ra trực tiếp từ chính tập hợp thành viên — cụ thể, từ một dấu vân tay của danh sách thành viên đã sắp xếp cùng với ngưỡng phê duyệt. Vì đầu vào chỉ là "ai là thành viên" và "bao nhiêu người phải phê duyệt", bất kỳ ai biết những sự thật này đều có thể tính địa chỉ ngoại tuyến, trước khi bất cứ điều gì xảy ra on-chain. Đăng ký ví là không cần cấp phép: chương trình chỉ kiểm tra rằng các thành viên bạn trình ra thực sự tương ứng với địa chỉ được tuyên bố, nên địa chỉ chính danh chỉ có thể chứa tập hợp thành viên chính danh. Không có người tạo, và không có khóa ngẫu nhiên.
Bạn có thể nạp tiền cho nó trước khi nó tồn tại không?
Điều này nối tiếp trực tiếp từ điểm trước.
Với Squads V4, địa chỉ phụ thuộc vào một khóa ngẫu nhiên được chọn trong lúc tạo, nên bạn không thể nạp tiền trước — bạn tạo ví trước, rồi gửi tiền. Với thiết kế của SSP, vì địa chỉ là một hàm thuần túy của các thành viên và ngưỡng, bạn có thể tính địa chỉ tiền gửi và gửi tiền đến đó trước khi ví được đăng ký on-chain. Điều này phản chiếu cách Bitcoin hoạt động: một địa chỉ Bitcoin P2WSH là một hash của các quy tắc chi tiêu, và bất kỳ ai cũng có thể nạp tiền cho nó ngoại tuyến mà không cần bất kỳ giao dịch "tạo" nào. Khác với các multisig Solana chiếm ưu thế như Squads, chương trình của SSP mang đặc tính "địa chỉ chính là các quy tắc" đó đến Solana.
Vai trò đặc quy���n và quyền quản trị
Squads V4 là một nền tảng quản trị, và nó cung cấp các tính năng quản trị tương xứng. Mỗi thành viên có thể được gán một mặt nạ bit quyền — một tổ hợp của ba quyền: Khởi xướng (đề xuất một giao dịch), Bỏ phiếu (phê duyệt một giao dịch) và Thực thi (tiến hành một giao dịch đã được phê duyệt). Trên đó, một multisig Squads có thể tùy chọn có một config_authority: một khóa có thể tự mình thay đổi danh sách thành viên hoặc ngưỡng. Một multisig "được kiểm soát" giữ lại quyền đó; một multisig "tự trị" đặt nó về một giá trị rỗng để mọi thay đổi cấu hình thay vào đó phải qua một cuộc bỏ phiếu của thành viên. Đây là những tính năng thực sự, hữu ích cho các tổ chức muốn có một quản trị viên được chỉ định.
Chương trình của SSP cố tình không có bất cứ điều nào trong số đó. Mọi thành viên đều bình đẳng — không có các tầng quyền theo từng thành viên. Không có khóa quản trị và không có config_authority. Tập hợp thành viên và ngưỡng được cố định lúc đăng ký và bất biến sau đó; "xoay vòng một khóa" nghĩa là chuyển tiền sang một multisig mới với một tập hợp thành viên mới. Ngưỡng chỉ được kiểm tra khi tiền được chi tiêu, không bao giờ lúc đăng ký. Đánh đổi rất rõ ràng: Squads cho bạn sự linh hoạt về quản trị; SSP cho bạn một bề mặt nhỏ hơn, vì một vai trò đặc quyền không tồn tại thì không thể bị lừa đảo, bị đánh cắp hay bị lạm dụng.
Chi phí tạo ra nó
Tạo một multisig Squads V4 kéo theo một khoản phí giao thức được ghi nhận khoảng 0,1 SOL trả cho ngân quỹ của Squads, cộng thêm khoản tiền thuê Solana nhỏ (khoản đặt cọc có thể hoàn lại mà mọi tài khoản phải giữ để duy trì hoạt động). Chương trình của SSP không thu bất kỳ khoản phí giao thức nào: đăng ký một multisig chỉ tốn khoản tiền thuê Solana nền tảng. Đây không phải là một phán xét giá trị: một khoản phí giao thức tài trợ cho việc phát triển liên tục của một nền tảng lớn. Nó chỉ đơn giản là một trục khác mà hai thiết kế khác biệt nhau.
Hai triết lý, hai đối tượng
Lùi lại một bước và mô thức trở nên rõ ràng. Squads V4 là một nền tảng quản trị giàu tính năng: vai trò theo từng thành viên, quản trị viên tùy chọn, một cơ sở mã trưởng thành đã được kiểm toán, và các công cụ mà một tổ chức cần để quản lý một ngân quỹ với nhiều bên liên quan. Chương trình của SSP là một nguyên thủy tất định tối giản: địa chỉ là tập hợp thành viên, đăng ký không cần cấp phép, không có vai trò đặc quyền, và có càng ít cơ chế càng tốt giữa bạn và tiền của bạn.
Mỗi bên phù hợp với một nhu cầu khác nhau. Một DAO hay một công ty muốn có quản trị viên được chỉ định, quyền chi tiết và một lịch sử đã được kiểm chứng trên mainnet thì được Squads phục vụ tốt. Thiết kế của SSP nhắm tới một mô hình khác — một ví tiêu dùng 2-trong-2 và một thiết lập M-trong-N cho doanh nghiệp — nơi ưu tiên là địa chỉ ví phải dự đoán được, có thể nạp tiền trước và không có bất kỳ vai trò nào có thể trở thành một điểm hỏng đơn lẻ. SSP cố tình lược bỏ các tính năng quản trị của Squads: đối với trường hợp sử dụng của SSP, đơn giản là có ít thứ hơn để bị xâm phạm.
Để xem các lựa chọn của SSP thể hiện ra sao trước các kịch bản tấn công thực tế, bài viết học viện về các chế độ hỏng hóc của multisig và cách SSP giảm thiểu chúng đi qua các mô hình mối đe dọa một cách trực tiếp. Và nếu bạn muốn chi tiết kỹ thuật về cách suy ra của SSP, bài viết về multisig Solana tự khởi tạo là tài liệu tham chiếu chính danh. Còn về phía bên kia, mã nguồn và tài liệu của Squads V4 có sẵn công khai.
Bản tóm tắt trung thực
Ở đây không có multisig "tốt hơn", chỉ có những sự phù hợp tốt hơn. Squads V4 là lựa chọn trưởng thành, được kiểm toán kỹ lưỡng, giàu tính năng cho các tổ chức muốn có quản trị tích hợp sẵn. Chương trình của SSP là một thiết kế nhỏ hơn, lấy địa chỉ làm trọng tâm — hiện chỉ có trên devnet và đang chờ cuộc kiểm toán của nó — được xây dựng để một ví multisig cảm thấy dự đoán được như một địa chỉ Bitcoin. Hai triết lý trung thực, mỗi triết lý giải quyết bài toán mà những người xây dựng nó đã đặt ra để giải quyết.


