Kiến thức Trừu tượng hoá tài khoản là gì? Vì sao nó là tương lai của ví tiền số?

Với việc The Merge được chờ đợi từ lâu đã hoàn tất, Vitalik Buterin hiện đang chuyển sang một dự án đam mê khác: trừu tượng hóa tài khoản (hay còn gọi là Account Abstration, viết tắt là AA). Trừu tượng hóa tài khoản tạo ra một cơ hội duy nhất trong Ethereum để suy nghĩ lại về cách hoạt động của ví, tài khoản có thể làm gì và cách tài khoản tương tác với dApp.

63c64427b50c406134f7e598_Ethereum Account Abstraction-p-800.jpg

Bài đăng này sẽ đề cập đến động lực đằng sau việc trừu tượng hóa tài khoản, nó là gì, nó cho phép những trường hợp sử dụng nào và khi nào chúng ta mong đợi nó xuất hiện trên Ethereum.

‍Lịch sử Ethereum

Ethereum có hai loại tài khoản: Tài khoản thuộc sở hữu bên ngoài (EOA) và tài khoản thuộc Hợp đồng thông minh.
  • EOA là tài khoản truyền thống mà bạn tạo bằng ví như MetaMask. Chúng có một khóa riêng ẩn và một địa chỉ công khai có nguồn gốc và là những gì mà hầu hết người dùng sử dụng để tương tác với chuỗi khối.
  • Hợp đồng thông minh là các ứng dụng có thể lập trình có thể thực hiện các giao dịch nhưng không có khóa riêng liên quan. EOA hoặc các hợp đồng thông minh khác có thể giao dịch với các thực thể này, thực hiện một tập hợp các hành động được xác định trước dựa trên logic chương trình của chúng. Nhiều ứng dụng DeFi và ví trên Ethereum được xây dựng trên các tài khoản hợp đồng thông minh.
63c6469b1eafa48078f9b8a6_#1-Inside article.jpg

Trong mô hình lấy EOA làm trung tâm này, khái niệm về người ký và khái niệm về tài khoản được hợp nhất. Thực thể được ủy quyền chi tiêu token của bạn (người ký), cũng giống như thực thể giữ token của bạn (tài khoản). Điều này tạo ra vấn đề vì điều đó có nghĩa là nếu chủ tài khoản EOA mất khóa riêng, họ sẽ mất tài khoản. Tài khoản EOA khó bảo mật và khó khôi phục.

EOA cũng có một số hạn chế khác, vì phần lớn chức năng của chúng được mã hóa cứng vào giao thức Ethereum cốt lõi. Ví dụ: EOA chỉ cho phép sử dụng ECDSA (thuật toán chữ ký số đường cong elip) để xác minh chữ ký mà không có tùy chọn chuyển sang thuật toán an toàn lượng tử hoặc hiệu quả hơn. Để làm cho điều này cụ thể hơn, Gmail cho phép bạn bật 2FA trên tài khoản của mình. Khả năng tùy chỉnh tương tự không thể được thực hiện trên Ethereum ngày nay.

Đồng thời, thiết kế hiện tại của Ethereum yêu cầu tất cả các giao dịch phải được bắt đầu từ EOA và chỉ EOA đó mới có thể thanh toán phí gas (phải được thanh toán bằng ETH). Cũng không có cách nào để hoạt động hàng loạt (ví dụ: phê duyệt + gửi tiền), khiến Ethereum kém hiệu quả hơn.

63c64729a9bbed3cc2ec07dd_#2-Inside article.jpg


Khi hệ sinh thái Ethereum đã phát triển và các nhà phát triển muốn xây dựng các sản phẩm ngày càng phức tạp, những hạn chế này đã cản trở trải nghiệm sản phẩm. Ví dụ: một số DApp như Dark Forest yêu cầu người dùng thực hiện liên tiếp một số hành động trên chuỗi. Để đáp ứng điều này, người dùng phải phê duyệt thủ công mọi giao dịch từ ví của họ, điều này cực kỳ nặng nề hoặc ứng dụng sẽ tạo một tài khoản "đốt tạm" (burner) cho bạn, tạo khóa riêng tư và lưu trữ nó trong trình duyệt của bạn hoặc “vị trí an toàn” khác. Bất cứ khi nào bạn muốn giao dịch với Dapp, họ sẽ tự động ký giao dịch của bạn bằng khóa cá nhân mà bạn không hề hay biết.

Vấn đề với cách giải quyết thứ hai này là tài khoản "đốt tạm" của bạn hoàn toàn tách rời khỏi tài khoản chính của bạn. Điều này có nghĩa là bất kỳ số dư nào bạn có trên đó chỉ được bảo đảm bằng bất kỳ cơ chế bảo mật nào mà Dapp sử dụng, trái ngược với việc tận dụng OpSec mà bạn duy trì bằng ví ban đầu của mình.

Khi xem xét thiết lập này, tiện ích của việc có một thứ tài khoản “trừu tượng” hơn, khái quát hơn là hiển nhiên - thật tuyệt nếu có thể tách rời mối quan hệ giữa tài khoản và người ký. Đây là bản chất của sự trừu tượng hóa tài khoản – rằng tất cả các tài khoản sẽ là hợp đồng thông minh với logic tùy chỉnh của riêng chúng xác định giao dịch hợp lệ là gì. Các “ví hợp đồng thông minh” này có các phương thức tùy chỉnh riêng với các phương thức riêng để ký, bảo vệ phát lại và thanh toán gas, trong khi vẫn duy trì kết nối với khóa riêng.

63c6476b6d2554abfd85c8fe_#3-Inside article.jpg

Kể từ năm 2016, nền tảng Ethereum đã khám phá các cách tiếp cận khác nhau để trừu tượng hóa tài khoản, ví dụ: EIP-86, đã giới thiệu một “hợp đồng chuyển tiếp” để xác minh chữ ký trừu tượng và nonce, đồng thời cho phép các chương trình chứng nhận chữ ký khác với ECDSA và EIP-2938 vào năm 2020, điều này sẽ giới thiệu các thay đổi về giao thức Ethereum cho phép các giao dịch bắt đầu từ một hợp đồng thông minh thay vì EOA. Tuy nhiên, cả hai đề xuất này cuối cùng đều thất bại vì chúng sẽ yêu cầu những thay đổi đáng kể đối với Lõi của Ethereum và do đó cần thời gian phát triển đáng kể.

EIP-4337

Gần đây nhất vào năm 2021, Vitalik và những người khác đã gửi EIP-4337, giới thiệu AA mà không có bất kỳ thay đổi nào đối với Lõi Ethereum (và do đó không yêu cầu phân nhánh). Thay vào đó, nó đề xuất việc tạo ra một hệ thống cấp cao hơn, một mempool1 riêng biệt. Người dùng gửi UserOperations tới mempool mới, sau đó được đóng gói và gửi tới Ethereum dưới dạng một giao dịch.

Nó tách rời các phần hành động của EOA (như các giao dịch), hiện đang được triển khai như một phần Lõi của Ethereum và chuyển chúng sang Máy ảo Ethereum (EVM) để có tính linh hoạt, khả năng nâng cấp và khả năng tương tác cao hơn. Vì EVM là một môi trường thời gian chạy tách biệt với Lõi (Core) Ethereum, nên các sửa đổi có thể được thực hiện nhanh hơn.

Sự trừu tượng hóa EVM từ lõi cũng cho phép AA được sử dụng trên các chuỗi khối L2 khác, giúp chúng giao tiếp và tương tác dễ dàng hơn.

Các trường hợp sử dụng

AA mở ra rất nhiều trường hợp sử dụng, bao gồm:

1. Giao dịch được tài trợ

Các nhà phát triển DApp có thể chọn trợ cấp phí giao dịch như một phần của quy trình giới thiệu của họ, loại bỏ một trong những điểm cản trở lớn nhất đối với người dùng tiền điện tử mới. Hiện tại, người dùng tiềm năng phải đến một sàn giao dịch tập trung, đợi KYC, mua Ethereum, chuyển nó vào ví của họ để dùng thử hầu hết các DApp.

2. Thanh toán định kỳ trên ví tự quản

Hiện tại, tất cả các giao dịch trên ví tự quản lý (self custody) phải được phê duyệt đồng bộ. Với AA, các giao dịch có thể được lên lịch với thời gian trễ hoặc theo các luồng hướng sự kiện. Điều này sẽ cho phép bạn thiết lập một số thứ như thanh toán định kỳ trên ví tự quản lý.

3. Phục hồi xã hội

Trong các phương pháp khôi phục ví truyền thống, người dùng phải cung cấp cụm từ khôi phục hoặc cụm từ gốc để khôi phục ví của họ. Tuy nhiên, điều này có thể có vấn đề nếu người dùng mất quyền truy cập vào cụm từ khôi phục của họ hoặc nếu nó bị đánh cắp.

Với tính năng trừu tượng hóa tài khoản, có thể triển khai quy trình khôi phục xã hội trong đó người dùng có thể chỉ định nhiều cá nhân đáng tin cậy làm tác nhân khôi phục.

4. Ví nhiều chữ ký theo mặc định vì mỗi tài khoản là một hợp đồng thông minh

Trong ví đa chữ ký, nhiều cá nhân hoặc bên phải cung cấp chữ ký của họ trước khi giao dịch có thể được thực hiện. Hiện tại, ví đa chữ ký yêu cầu EOA bắt đầu giao dịch, thanh toán phí gas và sau đó gọi hợp đồng thông minh đa chữ ký. Sau đó, hợp đồng sẽ hoàn trả số tiền gas mà EOA đã thanh toán ban đầu.

Với tính năng trừu tượng hóa tài khoản, các tài khoản có thể được lập trình để yêu cầu nhiều chữ ký trước khi một giao dịch có thể được thực hiện, biến mọi tài khoản thành một ví đa chữ ký theo mặc định một cách hiệu quả. Điều này cho phép người dùng dễ dàng triển khai chức năng đa chữ ký mà không cần phải sử dụng hợp đồng ví đa chữ ký riêng biệt.

5. Session keys cho trò chơi

Hiện tại, người chơi trò chơi blockchain phải phê duyệt mọi hành động hoặc trao cho trò chơi toàn quyền kiểm soát ví của họ. Với AA, ví hợp đồng thông minh có thể được lập trình để tạo khóa ghi riêng chỉ cho phép giao dịch tự động với DApp cụ thể trong một khoảng thời gian cụ thể. Điều này cung cấp đặc quyền tối thiểu cho DApp và tăng tính bảo mật. Tất cả tài sản thuộc về tài khoản chính vẫn được bảo vệ.

Khi nào sự trừu tượng hóa tài khoản sẽ sẵn sàng?

EIP-4337 đang trong quá trình hoàn thiện và sẽ thay đổi trước khi hoàn thiện. Trong khi đó, một số chuỗi L2 đã bắt đầu triển khai các phiên bản trừu tượng hóa tài khoản của riêng họ: StarkNet, một L2 ZK-rollup, chỉ có một loại tài khoản duy nhất - một hợp đồng. Mô hình AA của nó cho phép người dùng tùy chỉnh thuật toán xác thực chữ ký và yêu cầu các bên khác thanh toán gas thay cho tài khoản giao dịch. zkSync, một bản rollup ZK khác, cũng đã triển khai tính năng trừu tượng hóa tài khoản trong bản phát hành 2.0 lấy cảm hứng từ EIP-4337. Việc triển khai chúng yêu cầu tất cả các tài khoản triển khai giao diện IAccount, giao diện này chứa các phương thức xác minh và thực hiện giao dịch cũng như chọn nhà tài trợ giao dịch tùy ý.

Những rủi ro của trừu tượng hóa tài khoản

Mặc dù AA cung cấp tính linh hoạt cao hơn, nhưng khả năng mở rộng của các giao dịch cũng làm tăng cơ hội cho các cuộc tấn công — mọi thành phần cần được bảo mật một cách riêng lẻ và toàn diện. Vì những thay đổi trong EIP-4337 có thể không tương thích ngược với các ví hợp đồng thông minh cũ hơn, nên việc chuyển sang tiêu chuẩn mới có thể gây ra các lỗi hoặc rủi ro bảo mật không lường trước được. Nếu quá trình này khiến ví hợp đồng thông minh mới trở nên dễ bị tấn công, kẻ tấn công có thể chuyển tiền ra khỏi tài khoản trừu tượng, phá vỡ EOA hoặc khóa riêng tư.

Ngoài ra, kiến trúc mới yêu cầu tất cả các ví gửi giao dịch đến hợp đồng cơ bản nhất, đó là hợp đồng trừu tượng hoá tài khoản. Do đó, điểm đầu vào này cần phải mạnh mẽ và được bảo vệ tốt vì nó cần đảm bảo rằng tất cả các giao dịch nhận được đều được ký và xác thực một cách thích hợp.

Một số vấn đề tiềm ẩn khác với việc trừu tượng hóa tài khoản bao gồm phí gas cao hơn - ví hợp đồng thông minh có thể yêu cầu nhiều sức mạnh xử lý để thực thi - và thiếu khả năng tương thích chuỗi chéo thực sự. Ví hợp đồng thông minh sẽ phải được triển khai riêng cho từng chuỗi và hầu hết các nỗ lực hiện tại để triển khai hỗ trợ đa chuỗi đều phức tạp.

AA có cạnh tranh với MPC không?

Do tính trừu tượng của tài khoản vẫn đang trong quá trình phát triển, nên một trong những lựa chọn thay thế thường được thảo luận là ví MPC. Ví MPC tận dụng khả năng tính toán của nhiều bên, một tập hợp các kỹ thuật mã hóa cho phép nhiều bên – mỗi bên nắm giữ dữ liệu riêng tư của mình – đánh giá một phép tính mà không bao giờ tiết lộ bất kỳ dữ liệu riêng tư nào do mỗi bên nắm giữ.

Không giống như ví đa chữ ký, nó nhân số lượng khóa và chìa khóa, ví MPC chia một khóa thành các phần riêng lẻ. Bằng cách này, thay vì một chủ sở hữu duy nhất phải chịu trách nhiệm về khóa riêng, nhiều bên có thể nắm giữ các phân vùng của khóa riêng. Với threshold signature (chữ ký ngưỡng), một tập hợp con của chúng có thể kết hợp với nhau để ký một giao dịch.

Ví MPC có thể hoạt động cùng với AA để cung cấp cho người dùng một hệ thống quản lý khóa an toàn. Hãy tưởng tượng bạn tạo một chiếc ví để giữ tiền của công ty bạn. Với MPC, bạn có thể phân tách các cặp khóa của ví, phân phối chúng cho nhân viên đáng tin cậy của công ty và định cấu hình để có sơ đồ chữ ký đa số. Với AA, bạn có thể cho phép một dịch vụ bên ngoài đã được kiểm duyệt — như công cụ lưu trữ web hoặc nhà cung cấp — tự động rút tiền từ tài khoản mà không cần phần lớn những người nắm giữ khóa ký vào mỗi lần. Bạn có thể đặt giới hạn về số lượng và tần suất giao dịch hàng ngày cho mỗi dịch vụ. Sức mạnh tổng hợp của MPC và AA cung cấp cho người dùng hệ thống quản lý khóa bảo mật bằng mật mã và công cụ tùy chỉnh mạnh mẽ.

Kết luận

Mặc dù AA đã được thảo luận từ những ngày đầu của Ethereum, nhưng cuối cùng chúng ta cũng thấy một số đề xuất thực tế để triển khai nó. Khi chúng ta nghĩ về thế hệ ví tiếp theo sẽ như thế nào, AA chắc chắn sẽ là điểm khởi đầu cho những đổi mới.




Blockchain, Crypto, DeFi, NFT, Tài sản số,... là những lĩnh vực biến đổi không ngừng. Để có thông tin và kiến thức cập nhật về lĩnh vực này, bạn chỉ cần truy cập BuocNgoat.com
 
Back
Top