Web3
Account Abstraction - Đơn giản hóa trải nghiệm người dùng và self-custody
#
Marketing
16 min read
25/12/2022
95
0
0

Nội dung chính

  • Account abstraction (AA) là một phương pháp để biến tài khoản người dùng thành một hợp đồng thông minh. Điều này giúp đơn giản hóa trải nghiệm người dùng (UX) và cho phép người dùng lưu giữ tài sản của họ một cách an toàn hơn.

  • StarkNet và zkSync, hai trong số ZK-Rollups hàng đầu, đã ra mắt account abstraction gốc. Ethereum đang nghiên cứu giải pháp account abstraction ngắn hạn (EIP-4337).

  • Hoạt động hackathon liên quan đến AA gần đây cho thấy hệ sinh thái sẽ sớm xuất hiện các ứng dụng tận dụng ví được cung cấp bởi AA.

icon-menu

Mở đầu

Nền tảng cho sự phát triển trong tương lai của một công nghệ mới là những người sớm chấp nhận. Họ giữ cho công nghệ và bất kỳ ứng dụng nào hoạt động bất chấp UX khó khăn và không chắc chắn.

Crypto vẫn đang trong giai đoạn ứng dụng ban đầu. Thị trường bò tiếp theo sẽ nhằm mục đích kéo ngành crypto ra xa hơn dọc theo đường cong chấp nhận và thu hút người dùng phổ thông. Các ngành dọc tập trung vào người tiêu dùng như ứng dụng xã hội phi tập trung và gaming dường như có vị trí tốt để thúc đẩy sự mở rộng này. Tuy nhiên, khả năng tiếp cận và UX vẫn còn nhiều thiếu sót.

Rất ít người dùng muốn hiểu sự phức tạp của blockchain, tải xuống ví, ký giao dịch hoặc trả phí gas. Thay vào đó, họ muốn tiện ích (ví dụ: thực hiện thanh toán tại điểm bán hàng, chơi trò game hoặc tạo nội dung cho cộng đồng của họ).

Ngoài ra, tầm quan trọng của self-custody (tự lưu ký) thậm chí còn trở nên rõ ràng hơn do các vấn đề về thanh khoản mà các sàn giao dịch phải đối mặt. Người dùng cần các phương pháp rõ ràng và an toàn để lưu giữ tài sản của họ.

AA nhằm mục đích đơn giản hóa UX trong các ứng dụng Web3. Nó làm mờ nhạt đi sự phức tạp của việc lưu ký, ví và blockchain và thay thế chúng bằng UX quen thuộc.

 Với account abstraction, người dùng không cần phải tải ví xuống và ký giao dịch mỗi khi họ hoàn thành. Thay vào đó, các giao dịch có thể được gộp lại và phê duyệt cùng một lúc. Đó là một cải tiến lớn về UX cho các ứng dụng Web3.

 Bên cạnh những cải tiến về UX, AA mang đến những cải tiến về bảo mật bằng cách biến tài khoản người dùng thành một hợp đồng thông minh. Các giải pháp quản lý khóa được kích hoạt trong ví, cho phép người dùng dễ dàng đổi key. Các tính năng bổ sung bao gồm thiết lập giám sát gian lận và tạo các mức giới hạn chi tiêu cho mỗi khóa ký (signing key).

Để hiểu cách chúng cải thiện cấu trúc hiện tại, trước tiên chúng ta cần làm nổi bật cấu trúc tài khoản cơ sở hiện tại trên một trong những blockchain được sử dụng rộng rãi nhất – Ethereum.

Sơ lược về tài khoản Ethereum

Có hai loại tài khoản trên Ethereum: tài khoản thuộc sở hữu bên ngoài ( externally owned accounts - EOA) như Metamask và tài khoản hợp đồng thông minh như ví multi-sig.

Tài khoản sở hữu bên ngoài

EOA có ba thuộc tính: số dư ETH, nonce và địa chỉ.

Địa chỉ của EOA được lấy từ người ký, bao gồm một cặp khóa riêng và khóa chung. Chủ sở hữu EOA sử dụng khóa riêng để ký các tin nhắn và giao dịch. Khi Ethereum Virtual Machine (EVM) nhận được một giao dịch, nó đảm bảo chữ ký hợp lệ cho tài khoản. Các quy tắc mô tả chính xác cách xác thực giao dịch được hard-code vào chính EVM. Điều này có nghĩa:

  • Việc không tách người ký khỏi EOA sẽ khiến khóa riêng tư của tài khoản trở thành “chìa khóa đến vương quốc” chỉ một và duy nhất. Đánh mất private key có nghĩa là tất cả tiền sẽ bị đóng băng mãi mãi trong tài khoản đó. Nếu private key bị đánh cắp, thì kẻ tấn công có thể rút tiền từ tài khoản ngay bây giờ và mãi mãi.

  • Tài khoản đã ký giao dịch cũng phải là tài khoản thanh toán phí gas cho giao dịch. Đây là lý do tại sao số dư ETH là thuộc tính cơ bản của tài khoản.

  • Logic xác thực giao dịch được hard-code vào EVM – mọi chữ ký phải sử dụng cùng một sơ đồ chữ ký (ECDSA). Không được phép thay thế sơ đồ bất kỳ sơ đồ nào khác.

Ví hợp đồng thông minh

Để giải quyết một số vấn đề liên quan đến EOA, các dự án như Gnosis và Argent đã phát triển ví hợp đồng thông minh. Mã code của ví hợp đồng thông minh chỉ ra thực thể nào được phép xác thực giao dịch. Ví multi-sig như Gnosis Safe là một ví dụ phổ biến về ví hợp đồng thông minh. Một trong những lợi ích của ví multi-sig là khả năng có nhiều người ký trên một tài khoản, thay vì một khóa riêng tư như trường hợp của EOA.

Có những lợi ích khác cho người dùng ví hợp đồng thông minh liên quan đến EOA, nhưng việc có hai loại tài khoản riêng biệt tạo ra những thách thức cho việc sử dụng hàng ngày. Hầu hết các ứng dụng Web3 được phát triển bằng cách sử dụng giả định rằng các EOA sẽ ký các giao dịch, không phải ví multi-sig chẳng hạn. Ví hợp đồng thông minh cũng thường đi kèm với phí gas bổ sung. Điều này làm cho L2 trở nên hấp dẫn đối với các nhà phát triển thử nghiệm account abstraction.

Các phương pháp đã được tạo ra để giải quyết các thách thức triển khai do ví hợp đồng thông minh đặt ra, nhưng chúng có thể phức tạp và cuối cùng, việc kết hợp các phương pháp này là tùy thuộc vào các nhà phát triển.

Sức mạnh của Account Abstraction

Nếu không có account abstraction, mạng lưới Ethereum sẽ có các yêu cầu cơ bản, cứng nhắc để ký giao dịch. Logic được hard-code vào hệ thống. Account abstraction loại bỏ lớp cứng nhắc này và thay thế nó bằng một giao diện thiết kế linh hoạt. “Abstraction” có nghĩa là các tài khoản trở thành hợp đồng thông minh với logic xác thực linh hoạt và có thể lập trình được, thay vì logic được hard-code vào hệ thống.

Case study về giao thức Lens

Giao thức Lens, ví dụ: đã cho phép các tính năng cụ thể mà account abstraction sẽ khái quát hóa hơn nữa. Người dùng của Lens và các ứng dụng được xây dựng trên Lens có thể tận dụng triển khai account abstraction đặc biệt thông qua Dispatcher – một công cụ cho phép người dùng ủy quyền ký tên cho một tài khoản riêng biệt.

Nó cũng cho phép Dispatcher thanh toán phí gas của các giao dịch này. Công cụ này rất hấp dẫn đối với người dùng (và các giao thức khác đã triển khai các tính năng tương tự), với Dispatcher chiếm hơn 4,3 triệu giao dịch trên Polygon.

Tổng phí gas từ những hành động này hiện là ~138.000 trong MATIC – tính đến ngày 4 tháng 12 là ~127.000 USD. Điều này được thiết lập để phát triển theo thời gian song song với hệ sinh thái Lens. Tuy nhiên, giả sử mọi người dùng đều kích hoạt chức năng dispatcher thì bootstrap một mạng lưới xã hội chi tiêu 127.000 USD trong hơn 7 tháng bằng cách trợ cấp cho hoạt động của người dùng là tương đối rẻ.

Mặc dù đây không phải là một phép so sánh tương đồng thực sự, nhưng trong một số giai đoạn nhất định của chiến dịch khai thác thanh khoản của Aave trên Ethereum, giao thức đã thanh toán hơn 2200 stkAAVE mỗi ngày. Ngay cả với giá AAVE hiện tại, ~140.000 USD mỗi ngày – gấp 1,1 lần số tiền được trợ cấp trong suốt thời gian tồn tại của Giao thức Lens.

Từ Crypto Natives đến người dùng phổ thông

Lens đã được áp dụng mạnh mẽ. Điều này một phần nhờ vào trải nghiệm người dùng mượt mà hơn được kích hoạt bởi các khái niệm account abstraction. Tuy nhiên, có khả năng là hầu hết người dùng của Lens đều khá “crypto native” và đã sử dụng các ứng dụng Web3 khác trước Lens. Điều này có nghĩa là họ cảm thấy thoải mái với UX của các ví hiện tại và việc ký (và thanh toán) các giao dịch.

Tuy nhiên, chẳng hạn như giao thức Lens là một cải tiến mới mà các nhà phát triển sẽ tiếp tục xây dựng. Việc kết hợp các sản phẩm mới gốc Web3 với các tính năng được kích hoạt bằng account abstraction (ví dụ: Dispatcher) dẫn đến việc tái đánh giá quá trình giới thiệu của người dùng, tương tác của người dùng trong ứng dụng và các giải pháp quản lý khóa/tài khoản.

Giới thiệu người dùng

Hiện tại trong hầu hết các ứng dụng Web3, người dùng phải bắt đầu bằng cách tải ví xuống. Ngược lại, account abstraction cho phép có nhiều tùy chọn giới thiệu. Các ứng dụng có thể tích hợp với các ví hiện có hoặc người dùng có thể đăng nhập bằng tên người dùng/mật khẩu quen thuộc. Trong trường hợp thứ hai, các ứng dụng có khả năng tạo ra một chiếc ví thay mặt cho người dùng “ở phía sau hậu trường”. Trong trường hợp này, những thách thức xoay quanh sự đánh đổi giữa ví lưu ký (custodial) và ví không lưu ký (non-custodial).

Tương tác người dùng trong ứng dụng

Account abstraction có thể thay đổi hoàn toàn tương tác của người dùng với các ứng dụng Web3. Thông thường, người dùng phải thanh toán và ký vào từng giao dịch. Tuy nhiên, như case study về Lens đã chỉ ra, có nhiều cách để loại bỏ các thành phần này.

Các ứng dụng có thể trả phí giao dịch của người dùng một cách tự nhiên, giúp loại bỏ rào cản ban đầu trong việc đảm bảo ví của người dùng có đủ tiền để tương tác với ứng dụng. Các giao dịch cũng có thể được gộp lại và phê duyệt trong một chữ ký duy nhất. Đối với các ứng dụng hiện có, chẳng hạn như sàn giao dịch phi tập trung (DEX), người dùng phải phê duyệt token (giao dịch đầu tiên) và sau đó phê duyệt hoán đổi (giao dịch thứ hai). Với account abstraction, cả hai giao dịch có thể được gộp thành một.

Để đơn giản hóa các tương tác của người dùng, Dispatcher của Lens yêu cầu người dùng phải tin tưởng vào tài khoản. Key wallet theo phiên cố gắng hạn chế một số giả định tin cậy này bằng cách cung cấp phạm vi chặt chẽ hơn cho các tương tác này. Người dùng có thể ủy quyền ký đặc quyền cho một khóa mà ứng dụng tạo trong trình duyệt. Khóa có thể được định hình để chỉ sử dụng một lượng gas nhất định, chỉ tương tác với các hợp đồng và phương thức được chỉ định và hết hạn sau một thời gian nhất định. Ví dụ: một trò chơi có thể tích hợp với key wallet theo phiên và key này có thể được định hình để người dùng không cần ký rõ ràng các giao dịch mint NFT theo số tiền cụ thể.

Quản lý khóa

Ví EOA phụ thuộc vào người dùng đảm bảo cụm hạt giống (seed phrase) 12 từ hoặc 24 từ. Nếu bị mất hoặc bị đánh cắp, nội dung ví sẽ bị xâm phạm mãi mãi. Ví hợp đồng thông minh đã được sử dụng trong Web3, nhưng nhìn chung chúng chưa được tích hợp tốt vào các ứng dụng và làm như vậy sẽ dẫn đến sự phức tạp về kỹ thuật.

Các khái niệm hiện có như phục hồi xã hội (social recovery) và xoay khoá là những ví dụ điển hình về các cải tiến UX quan trọng được kích hoạt thêm bằng account abstraction. Các tính năng mới về quản lý khóa cũng đang được giới thiệu. Chẳng hạn, hardware signers tận dụng Secure Eniances của iPhone để ký giao dịch thay vì ví trình duyệt. Nhóm Braavos xây dựng trên StarkNet gần đây đã triển khai khả năng hardware signer vào ví di động của họ.

EIP-4337 & Triển khai gốc

Khái niệm account abstraction không phải mới lạ.Vào năm 2017, Vitalik là tác giả của một EIP về chủ đề này và các lần lặp lại khác đã được đề xuất trong thời gian chờ đợi. Rào cản chính đối với việc triển khai thực tế là những thay đổi này sẽ yêu cầu nâng cấp cốt lõi lên Ethereum. Những điều này nổi tiếng là khó phối hợp và những thay đổi cốt lõi khác (chẳng hạn như chuyển sang Proof-of-Stake) được ưu tiên cao hơn.

Giờ đây, The Merge đã diễn ra và câu chuyện đã chuyển sang việc xác định cách tiếp cận người dùng phổ thông được thèm muốn, sự quan tâm mới đang đổ dồn vào lĩnh vực nghiên cứu này. Một EIP được soạn thảo vào tháng 9 năm 2021, là EIP-4337 , đã đạt được traction. Ngoài ra, các L2 như zkSync và StarkNet đang xây dựng account abstraction một cách tự nhiên vào kiến ​​trúc hệ thống của chúng.

Account Abstraction (EIP-4337)

Lợi ích trước mắt của EIP-4337 là nó không yêu cầu thay đổi giao thức cốt lõi. Việc triển khai được chỉ định giới thiệu một mempool thay thế và “UserOperations” sẽ được sử dụng thay cho các giao dịch; cách tiếp cận này tránh mọi thay đổi giao thức cốt lõi.

Nguồn: Ismael Darwish

Về lý thuyết, EIP này sẽ mang lại con đường triển khai và sử dụng nhanh hơn. Tuy nhiên, các thay đổi sẽ được thực hiện ở ứng dụng, không phải giao thức.

Các nhà cung cấp cơ sở hạ tầng ví như Biconomy đang nỗ lực triển khai các giải pháp dựa trên kiến ​​trúc EIP-4337. Khi các chi tiết đặc điểm kỹ thuật tiếp tục được củng cố, những nhà cung cấp khác cũng sẽ tìm cách xây dựng các giải pháp tận dụng các tính năng được kích hoạt bởi EIP-4337.

L2s: Cơ sở chứng minh cho Account Abstraction

StarkNet và zkSync đều đang triển khai mạng lưới của họ với account abstraction được tích hợp sẵn trong giao diện tài khoản. OpenZeppelin, Argent, Ledger… đã cộng tác để thiết kế các giao diện tài khoản này. Các giải pháp mở rộng quy mô như zkSync và StarkNet là cơ sở thử nghiệm chính cho account abstraction vì chi phí gas rẻ hơn rất nhiều so với Ethereum Mainnet.

Trên các L2 này, chỉ có một loại tài khoản duy nhất – về cơ bản khác với Ethereum có cả EOAs và hợp đồng thông minh. Sự khác biệt này có nghĩa là mọi tài khoản đều hoạt động như một tài khoản hợp đồng thông minh. Các nhà phát triển có một giao diện tài khoản duy nhất để hiểu và các nhà phát triển ví có thể tiếp tục mở rộng chức năng mà các hợp đồng thông minh có thể cung cấp cho họ.

Đặc biệt, Argent (cùng với LedgerCartridge) đang phát triển các plug-ins để cho phép bất kỳ nhà phát triển nào tạo logic mà ví có thể tận dụng. Các key wallet theo phiên cũng cho phép trải nghiệm người dùng mượt mà hơn nhiều. Đầu năm nay, một proof of concept để sử dụng khóa theo phiên trong trò chơi Web3 đã được xây dựng trên Starknet. Kể từ đó, framework đã liên tục được tinh chỉnh và các nhà phát triển trò chơi sẽ có khả năng kết hợp các tính năng này vào trò chơi của riêng họ.

Lời kết

Khi nhiều thương hiệu lâu đời hơn tiếp tục tham gia vào không gian crypto và các ứng dụng trò chơi Web3 và xã hội phi tập trung được xây dựng, họ sẽ chia sẻ một trọng tâm duy nhất – đó là tạo ra các sản phẩm hữu ích. Mặc dù abstracting các khái niệm blockchain không phải là sự cân nhắc duy nhất để đạt được mục tiêu này, nhưng nó chắc chắn là một điều quan trọng. Reddit đang tận dụng cách tiếp cận này – chọn sử dụng “Digital Collectible” thay vì “NFTs”, “Vaults” thay vì “Wallets”. Các nhà xây dựng và nhà phát triển có thể dựa vào AA như một bộ công cụ để đạt được mục đích tạo ra các sản phẩm hữu ích.

Tuy nhiên, AA không phải là cách tiếp cận duy nhất để cải thiện Web3 UX. Các dự án khác như Web3Auth đang xây dựng bộ công cụ phát triển phần mềm (SDK) để các nhà phát triển có thể tận dụng cơ sở hạ tầng tính toán đa bên (multiparty computation – MPC) của họ và Coinbase đã ra mắt ví MPC. Công nghệ MPC loại bỏ nhu cầu của người dùng duy trì toàn bộ gánh nặng quản lý khóa riêng tư. Sự đánh đổi ở đây là một bên đáng tin cậy (ví dụ: Coinbase) được ra mắt.

Đối với người theo chủ nghĩa crypto thuần túy, điều này có thể không thể chấp nhận. Nhưng, ví dụ, Coinbase đã phát triển lòng tin trong cơ sở người dùng lớn của họ. Coinbase có thể cung cấp cho những người dùng này quyền truy cập vào DeFi và NFT (trên nhiều lớp cơ sở) trong một ứng dụng quen thuộc. Mặt khác, giải pháp MPC này cho phép Coinbase duy trì mối quan hệ người dùng.

Mặc dù cả công nghệ MPC và account abstraction đều có những ưu điểm riêng, nhưng các nhà xây dựng và nhà phát triển tại các cuộc thi hackathon gần đây đã và đang thử nghiệm account abstraction. Ví Starknet Burner đã giành chiến thắng trong cuộc thi hackathon Starknet vào đầu năm nay, hai AA đã giành được giải thưởng tại ETHBogota và Authsome đã giành được giải thưởng tiền thưởng Fuel hàng đầu tại cuộc thi hackathon ETHLisbon. Xu hướng này dự kiến ​​sẽ tiếp tục khi các ứng dụng tích hợp với các ví này, cho phép phát triển các sản phẩm và dịch vụ mới.

Bài viết được Bùi Huỳnh Như Phương thuộc FXCE Crypto biên tập từ “Account Abstraction: Simplifying User Experience and Self-Custody” của tác giả Seth Bloomberg; với mục đích cung cấp thông tin và phi lợi nhuận. Chúng tôi không khuyến nghị đầu tư và không chịu trách nhiệm cho các quyết định đầu tư liên quan đến nội dung bài dịch.

#Web3
#Infrastructure
#Ethereum
ic-comment-blueComment
#