
Định nghĩa lại kiến trúc tài khoản: Vì sao hệ thống ba khóa là giải pháp lý tưởng?
Tuyển chọn TechFlowTuyển chọn TechFlow

Định nghĩa lại kiến trúc tài khoản: Vì sao hệ thống ba khóa là giải pháp lý tưởng?
Việc yêu cầu người dùng cài đặt phần mềm ví và lưu cụm từ khôi phục trong quá trình nhập môn là không khả thi, chúng ta cần một phương pháp thân thiện, tương đối an toàn và có tính định hướng nhất định.
Tác giả: Norswap
Biên dịch: TechFlow
Tôi đã dành rất nhiều thời gian suy nghĩ về ví và việc nhập môn người dùng cho 0xFable. Dưới đây là một số quan điểm của tôi. Chúng ta sẽ thảo luận về:
-
Kiến trúc tài khoản lý tưởng theo tôi;
-
Các yếu tố bảo mật;
-
Tổng quan về các nhà cung cấp đăng nhập Web3 hiện có,
Rõ ràng là không nên yêu cầu người dùng cài đặt phần mềm ví và lưu cụm từ khôi phục trong quá trình nhập môn. Chúng ta cần một phương pháp thân thiện, tương đối an toàn và có tầm nhìn nhất định.
Kiến trúc
Mỗi người dùng sẽ nhận được một tài khoản thông minh riêng, bao gồm ba khóa:
-
Khóa thiết bị——ban đầu có thể được lưu trữ cục bộ, nhưng hy vọng trong tương lai có thể sử dụng khóa thông hành/webauthn.
-
Khóa bổ trợ, ví dụ như khóa do nhà cung cấp kiểm soát và được mở khóa thông qua đăng nhập xã hội.
-
Khóa sao lưu, ví dụ như khóa được bên thứ ba lưu giữ (có thể đơn giản là tệp đính kèm email hoặc được lưu trên Dropbox / Google Drive).
Nếu điều này nghe có vẻ không đủ kỹ thuật hoặc không an toàn, e rằng bạn đã bị những lời đường mật của các nhà cung cấp làm mê hoặc, vì thực tế chúng không an toàn hơn thế này (và thường thì còn kém an toàn hơn—ví dụ, cả khóa (2) và (3) đều do cùng một bên kiểm soát).
Trong cấu hình này, bạn có thể thực hiện thao tác bằng khóa thiết bị mà không cần sự tương tác của người dùng. Đối với chuyển tiền và giao dịch liên quan đến tài sản, bạn có thể yêu cầu sử dụng khóa bổ trợ.
Mô hình đơn giản là để người dùng đăng nhập bằng Google/Apple/Facebook, sau đó thêm một lời nhắc xác nhận. Điều này giúp việc nhập môn trở nên dễ dàng. Tuy nhiên, nếu người dùng cần độ an toàn cao hơn, họ có thể thay thế khóa này bằng một EOA truyền thống. Ngoài ra, bất kỳ cặp khóa nào cũng có thể được dùng để thay thế khóa sao lưu, vốn chỉ cần là một tệp được lưu trữ trên đám mây.
Phân tích bảo mật
Độ an toàn đến đâu? Trong hầu hết trường hợp, nó là an toàn. Hai thiết bị hoặc thực thể phải bị xâm phạm đồng thời thì mới dẫn đến mất tài sản.
Tuy nhiên, có một số rủi ro cấu hình có thể làm giảm mức độ an toàn. Ví dụ: lưu trữ khóa sao lưu trên Google Drive đồng thời gán khóa bổ trợ cho tài khoản Google của bạn. Hoặc sử dụng một ví nóng làm khóa bổ trợ, điều này mang lại rủi ro giống như khóa thiết bị. Người dùng có thể làm mất khóa sao lưu của mình. Tốt nhất là nên nhắc nhở người dùng định kỳ thay đổi khóa thiết bị, buộc họ phải tìm thấy khóa sao lưu.
Nếu khóa sao lưu được lưu trữ công khai, nó cũng rất dễ bị đánh cắp. Điều này còn tệ hơn cả ví nóng, nơi khóa được mã hóa trên ổ đĩa (và cần mật khẩu để giải mã trong bộ nhớ). Dù sao đi nữa, việc áp dụng khóa thông hành (cho phép bạn sử dụng xác thực thiết bị để đăng nhập ứng dụng) sẽ giải quyết vấn đề này.
Cần hiểu rằng đăng nhập xã hội đồng nghĩa với việc tin tưởng vào một nhà cung cấp. Về cơ bản, nhà cung cấp có một khóa mà họ có thể sử dụng tùy ý, nhưng họ cam kết chỉ sử dụng theo yêu cầu của bạn sau khi bạn đăng nhập bằng tài khoản xã hội. Cuối cùng, lưu ý rằng khi khóa bổ trợ do chính người tạo dapp cung cấp, hoặc không có lời nhắc xác nhận, thì người tạo dapp có thể dễ dàng lừa người dùng (vì họ viết frontend sở hữu khóa thiết bị và kiểm soát hoặc có thể kiểm soát khóa bổ trợ).
Tổng quan về các nhà cung cấp hiện tại
Hiện nay ai đang cung cấp cái này? Theo tôi biết, không ai cả. Vấn đề thường là, hoặc là không có khóa sao lưu, hoặc khóa đó do cùng một thực thể quản lý (ví dụ như ví Coinbase).
Thị trường chủ yếu chia thành hai loại:
-
Các nhà cung cấp cung cấp giải pháp đa khóa tích hợp, hoặc sử dụng tài khoản thông minh, hoặc sử dụng MPC (tính toán đa bên - một kỹ thuật mật mã học) để kết hợp nhiều khóa thành một EOA duy nhất.
-
Các nhà cung cấp cấp thấp hơn, tự lưu trữ khóa người dùng và cho phép họ ký sau khi đăng nhập.
Có rất nhiều nhà cung cấp toàn bộ chuỗi cung ứng ở đây: Particle Network, Privy, Alembic Tech, Magic, Web3Auth, Turnkey, Dynamic, 0xPass, Fireblocks, Portal, Capsule, ZeroDev, Keyp, Circle Developers.
Nhà lưu trữ khóa như: Lit Protocol, Amazon.
Vâng, có rất nhiều thứ như vậy. Về cơ bản giữa chúng không có nhiều khác biệt. Khi mô hình kinh doanh minh bạch, chi phí thường dao động từ 0,02 đến 0,05 đô la Mỹ mỗi người dùng mỗi năm. Theo tôi, điều này dường như khá hợp lý.
Điều thú vị là tất cả những thứ này đều được định vị như các công cụ phát triển. Dường như không có công ty nào cố gắng áp dụng các công nghệ này để trở thành ví chính cho người dùng.
Tất nhiên, để làm việc với các dapp hiện có, bạn cần cài đặt phần mềm ví. Vì vậy, lợi thế của hệ thống giảm xuống chỉ còn việc loại bỏ cụm từ khôi phục. Nhưng bạn cũng có thể khiến các dapp quảng bá bạn như cách dễ nhập môn nhất (nếu họ tích hợp bạn, thậm chí không cần cài đặt phần mềm ví). Bạn có được người dùng, dapp có thể nhập môn miễn phí và dễ dàng. Cả hai bên cùng có lợi.
Lo ngại về nhà cung cấp
Ngoài việc không triển khai kiến trúc lý tưởng của tôi, các giải pháp này thường còn đưa vào các yếu tố tập trung lớn, ví dụ như API REST, hoặc một số tính toán MPC, nếu họ ngừng hoạt động, bạn sẽ không thể tự thực hiện các tính toán đó (hoặc công bố công khai? Đã được kiểm toán?).
Hiện tại chưa rõ chuyện gì xảy ra nếu bạn ngừng hợp tác với nhà cung cấp. Họ đang nắm giữ (một phần) khóa của người dùng bạn! Điều này rất giống với mối lo ngại của tôi về Rollups-as-a-service.
Sau đó, một người sáng lập RaaS nói với tôi rằng có sự đánh đổi giữa việc cho phép thoát ra dễ dàng và ngăn chặn người sáng lập lừa người dùng của họ (điều này sẽ gây ảnh hưởng xấu đến RaaS).
Dưới đây là cách dễ dàng chuyển đổi nhà cung cấp bằng kiến trúc nêu trên: người dùng gửi lên chuỗi băm tài khoản xã hội của họ (ví dụ: [email protected]). Mỗi nhà cung cấp đăng nhập xã hội có khóa riêng của mình (không cần có khóa riêng cho từng người dùng, và thường cũng không an toàn hơn). Tài khoản thông minh tham chiếu đến một hợp đồng đơn thể (singleton contract), nơi lưu tài khoản nhà cung cấp hiện tại. Việc chuyển đổi nhà cung cấp chỉ đơn giản là thay đổi tài khoản này.
Những suy nghĩ cuối cùng
Rõ ràng là chúng ta đang tiến gần đến mục tiêu nhập môn lý tưởng. Lý tưởng nhất là các ví dễ nhập môn này xây dựng mối quan hệ trực tiếp với người dùng. Sau đó, các dapp có thể hoàn toàn bỏ qua vấn đề này và chỉ cần thiết lập quan hệ đối tác với ví, xác định ví đăng nhập mặc định là ai.
Nếu không thể đạt được điều đó, giải pháp của tôi phải là tự xây dựng hệ thống riêng—việc tạo nhà cung cấp đăng nhập xã hội riêng trong kiến trúc nêu trên không khó. Tuy nhiên, tôi "thà" sử dụng nhà cung cấp bên ngoài. Như đã nói ở trên, nếu người tạo dapp kiểm soát khóa miễn phí, thì hệ thống không hoàn toàn phi tập trung.
Chào mừng tham gia cộng đồng chính thức TechFlow
Nhóm Telegram:https://t.me/TechFlowDaily
Tài khoản Twitter chính thức:https://x.com/TechFlowPost
Tài khoản Twitter tiếng Anh:https://x.com/BlockFlow_News













