Tác giả gốc: Yuxing, SevenX Ventures
Bài viết này chỉ nhằm mục đích học tập và giao tiếp và không mang tính chất tham khảo đầu tư.
Với sự mở rộng và mở rộng liên tục của các kịch bản ứng dụng Ethereum, những nhược điểm của giải pháp Tài khoản thuộc sở hữu bên ngoài (EOA) của ví Ethereum truyền thống dần bộc lộ: Chức năng của nó đơn giản và hiệu suất ở mức trung bình, không hỗ trợ các giao dịch đồng thời và có nhiều khóa vấn đề quản lý. Ví hợp đồng thông minh sử dụng Tài khoản hợp đồng (CA) làm địa chỉ ví. Đây là một giải pháp ví Ethereum tương đối mới có thể giải quyết những thiếu sót của ví EOA và mang lại nhiều chức năng mạnh mẽ hơn. Trong tương lai, bạn sẽ có thể chọn không bảo vệ cẩn thận khóa riêng của mình và tận hưởng mức độ bảo mật gần như tương tự; bạn cũng có thể tận hưởng sự tiện lợi của các sàn giao dịch tập trung hiện tại trong các sàn giao dịch phi tập trung, nhưng đồng thời, tiền luôn ở mức trong tay mình nên không phải lo khả năng xảy ra giông bão trên sàn...
Trong phiên bản mới của lộ trình Ethereum được phát hành cách đây không lâu, đặc tả hợp đồng thông minh trừu tượng hóa tài khoản ERC-4337 đã được viết vào The Splurge như một yếu tố chính để ví EOA chuyển sang ví hợp đồng thông minh. Vậy, ví hợp đồng thông minh chính xác là gì và mối quan hệ giữa tính trừu tượng của tài khoản và ví hợp đồng thông minh là gì, chúng được triển khai như thế nào, hình thức phát triển trong tương lai của nó là gì và những cơ hội và thách thức là gì?
Các loại tài khoản 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 hợp đồng (CA). Tài khoản bên ngoài là địa chỉ tài khoản ví gốc của Ethereum ghi lại số dư của người dùng. Tài khoản hợp đồng ban đầu không được thiết kế để ghi lại số dư địa chỉ ví của người dùng.
tài khoản bên ngoài
EOA là một khái niệm duy nhất dành cho Ethereum và các chuỗi tương thích EVM khác (hoặc các chuỗi giống EVM). Nói đúng ra, các chuỗi không phải EVM chính thống bao gồm BTC không có cài đặt này. Ví Metamask sử dụng tài khoản bên ngoài. Loại ví này còn được gọi là ví EOA và được kiểm soát bởi khóa riêng của người dùng. Quy tắc tạo của nó là:
Khóa riêng → Khóa chung → Keccak 256 Hash → 20 byte cuối → Chuỗi hex (địa chỉ EOA)
Quy tắc tạo này hoàn toàn bắt nguồn từ phép biến đổi toán học và địa chỉ này không tương ứng với bất kỳ hợp đồng thông minh nào. Khi sử dụng loại địa chỉ này cho các giao dịch, quy tắc xác minh nút là:
Chữ ký giao dịch → ec_recover → Khóa chung → địa chỉ (được tạo bằng các quy tắc trên) → So sánh địa chỉ sẽ được vận hành
Nếu quá trình xác minh thành công, hãy tiếp tục quá trình tiếp theo, nếu không giao dịch sẽ bị từ chối. Cài đặt cốt lõi của EOA trong Ethereum là đóng vai trò là người khởi tạo giao dịch và trả phí gas, tức là người kích hoạt giao dịch. Cho dù có bao nhiêu lệnh gọi hợp đồng theo sau một giao dịch thì giao dịch đó phải được bắt đầu bởi EOA ngay từ đầu và phải trả đủ gas. Quá trình giao dịch của địa chỉ EOA được hiển thị trong hình bên dưới.
Cơ chế giao dịch EOA đơn giản hóa Nguồn: Nethermind
Vấn đề về tài khoản bên ngoài
Hiện tại, tài khoản EOA là loại ví hoàn toàn phổ biến được người dùng sử dụng. Cộng đồng Ethereum đã bày tỏ một số lo ngại về EOA, bao gồm:
• Quản lý khóa: Cách duy nhất để có được tiền là biết khóa riêng. Vấn đề lớn nhất là điểm lỗi duy nhất. Đối với người dùng, khóa riêng là tài sản. Đối với người dùng, một khi khóa riêng bị mất hoặc bị đánh cắp đồng nghĩa với việc mất tài sản.
• Sự phụ thuộc vào chữ ký ECDSA: Chữ ký số đơn giản hơn và kháng lượng tử là một cải tiến rõ ràng so với ECDSA hiện tại.
• Giao dịch là một đối một với các thao tác: không thể thực hiện nhiều thao tác cùng một lúc sẽ tạo ra chi phí không cần thiết và trải nghiệm người dùng kém.
Với sự mở rộng liên tục của các kịch bản ứng dụng blockchain, người dùng không chỉ quản lý tài sản trên chuỗi của họ trên blockchain mà còn cả danh tính trên chuỗi, các mối quan hệ xã hội và thậm chí cả tín dụng trên chuỗi, v.v. Hiện tại, hầu hết các nội dung này chỉ được ánh xạ tới các cá nhân giả ẩn danh thông qua ví. Không chỉ người dùng đang gặp khó khăn với giải pháp quản lý khóa riêng tư của ví EOA dựa trên khả năng ghi nhớ mà còn có các ứng dụng trong nhiều ứng dụng do tính đơn giản của ví EOA. Cảnh bị hạn chế.
Có nhiều giải pháp ví cố gắng giải quyết những vấn đề này:
• Xung quanh các điểm lỗi duy nhất, ví MPC cung cấp giải pháp quản lý khóa riêng tốt hơn bằng cách sử dụng Lược đồ chữ ký ngưỡng (TSS), trong khi ví hợp đồng thông minh có thể giải quyết vấn đề này thông qua phục hồi xã hội, đa chữ ký và các giải pháp khác.
• Trải nghiệm người dùng tốt hơn, chức năng mạnh mẽ hơn và khả năng mở rộng, chẳng hạn như giao dịch hàng loạt, logic xác minh tùy chỉnh, v.v., chủ yếu do ví hợp đồng thông minh mang lại.
Ví MPC và ví hợp đồng thông minh không phải là giải pháp hoàn toàn độc lập. Ví hợp đồng thông minh cũng có thể sử dụng công nghệ MPC+TSS để quản lý ví hợp đồng thông minh. Unipass là một ví dụ điển hình.
Lưu ý: Ví MPC là ví sử dụng công nghệ điện toán bảo mật của nhiều bên. Nó tương đương với việc thuê M người quản lý cho kho tài sản của bạn. Mỗi người quản lý không thể mở kho một cách độc lập và việc sử dụng Lược đồ chữ ký ngưỡng (TSS) tương đương với việc đưa ra Kho tiền của bạn được thiết lập với một ổ khóa yêu cầu N chìa khóa để mở. Khi đó, giải pháp ví MPC + TSS tương đương với việc cung cấp giải pháp quản lý kho tiền đa vai trò. N người quản lý trong số người quản lý M cần cung cấp các chìa khóa mà họ quản lý cùng một lúc thời gian Khả năng mở hầm.
Tài khoản hợp đồng
CA là một tài khoản Ethereum có logic nội bộ, có thể là logic kinh doanh (Hợp đồng mã thông báo được sử dụng để kế toán, hợp đồng cầm cố được sử dụng để cho vay và thanh lý) hoặc logic tài khoản (chẳng hạn như logic đa chữ ký của gnosis safe) và logic sau Đó là Ví/Tài khoản Hợp đồng Thông minh (SCW). Ví Argent sử dụng ví hợp đồng thông minh, đi tiên phong trong mô hình phục hồi xã hội. Hợp đồng được kiểm soát bằng mã logic nội bộ và các quy tắc tạo của nó bao gồm TẠO và TẠO 2, sẽ không được thảo luận ở đây.
Không giống như EOA, không có sự tương ứng cần thiết giữa CA và khóa chung. Ví dụ: CA được tạo bởi gnosis safe có thể đặt bất kỳ số lượng khóa chung nào để mở khóa tài sản tương ứng với địa chỉ của nó; tất nhiên, CA cũng không thể đặt bất kỳ khóa nào, nhưng logic của các CA khác sẽ xác định liệu nó có thể được mở khóa hay không, chẳng hạn như DeFi Với hợp đồng cho vay, bạn có thể lấy lại tài sản đã cầm cố miễn là bạn hoàn trả được số tiền đó.
Tất cả tài sản trên Ethereum ngoại trừ ETH đều do CA thực hiện và logic kinh doanh như DeFi đều do CA triển khai. Tuy nhiên, việc CA không thể chủ động vận hành và trả phí gas cũng hạn chế khả năng của CA.đề xuấtHy vọng rằng CA sẽ có thể tự trả tiền xăng.
Nguồn giao dịch ví hợp đồng thông minh: Nethermind
Vì các giao dịch chỉ có thể bắt đầu từ EOA nên để cải thiện trải nghiệm người dùng, ví hợp đồng thông minh thường cung cấp dịch vụ chuyển tiếp để nhận tin nhắn đã ký từ người dùng và gửi EOA từ nhà cung cấp dịch vụ đến chuỗi. Ví EOA nhận ra không có phí gas.
Hiện tại, không có tiêu chuẩn vận hành cho ví hợp đồng thông minh (EIP-4337 dự kiến sẽ trở thành tiêu chuẩn), vì vậy mọi dự án đều phải sử dụng giải pháp siêu giao dịch như Mạng trạm xăng Ethereum (GSN) hoặc hướng tới Tạo và quản lý sở hữu các dịch vụ chuyển tiếp, cũng như quản lý cơ chế tính phí và kiểm toán các hợp đồng thông minh phức tạp của họ.
Ví hợp đồng thông minh
Đúng như tên gọi, Ví/Tài khoản hợp đồng thông minh (SCW) là giải pháp ví sử dụng CA làm địa chỉ. Nó được đặc trưng bởi logic nội bộ. Ví hợp đồng thông minh có thể thực hiện nhiều chức năng mà EOA không thể đạt được, chẳng hạn như thanh toán gas, giao dịch hàng loạt , nhiều Chữ ký, quản lý quyền, ủy quyền ngoại tuyến, khôi phục mạng xã hội, v.v.
Tài khoản hợp đồng là một hợp đồng thông minh tách biệt với người ký (người ủy quyền) và có thể có logic ký và khôi phục riêng. Điều này có nghĩa là nếu bạn mất quyền truy cập vào Người ký, điều đó không nhất thiết có nghĩa là bạn mất quyền truy cập vào tài khoản của mình. Một lần nữa, đây là nơi mà cái tên Trừu tượng hóa tài khoản xuất phát. Tài khoản được trừu tượng hóa từ người ký.
Trừu tượng hóa tài khoản
Tình trạng hiện tại của Ethereum là đại đa số mọi người đang sử dụng ví EOA, bởi vì hiện tại tất cả các giao dịch trong Ethereum đều phải bắt đầu bằng EOA và EOA phải có một số ETH để thanh toán gas, điều này khiến người dùng mới không thể tham gia nhanh chóng. Chúng tôi cần một giải pháp cho phép người dùng sử dụng ví hợp đồng thông minh chứa logic xác minh tùy ý, giải pháp này được gọi là Account Tóm tắt (AA).
Nói một cách đơn giản, kết quả của việc trừu tượng hóa tài khoản là:
Trước đây, bạn lưu trữ tiền trong địa chỉ ví Ethereum EOA. Mặc dù bị hạn chế bởi nhiều địa chỉ EOA khác nhau, bạn cũng thích sự đơn giản và tiện lợi khi sở hữu tài sản bằng khóa riêng;
Giờ đây, bạn lưu trữ tiền trên địa chỉ hợp đồng thông minh Ethereum, bạn có thể kiểm soát tài sản ví của mình mà không cần quản lý khóa riêng. Việc tách biệt người ký và chính tài khoản cho phép bạn thực hiện các hoạt động giao dịch ở mức bảo mật thấp hơn. Bản thân tài khoản được đặt ở mức độ bảo mật cao hơn.
Mục tiêu của Tắt tài khoản là giảm số lượng loại tài khoản từ 2 (EOA và hợp đồng) xuống 1 (chỉ hợp đồng) và chuyển các chức năng như xác minh chữ ký, thanh toán gas và bảo vệ tấn công lặp lại từ giao thức cốt lõi sang giao thức lõi. EVM . Việc triển khai tính năng trừu tượng hóa tài khoản luôn là nỗ lực của nhiều nhà phát triển Ethereum, như có thể thấy từ lịch sử của EIP.
Lịch sử EIP
Khái niệm trừu tượng hóa tài khoản được Vitalik đề xuất lần đầu tiên vào năm 2016 và ông đã đưa ra đề xuất đầu tiên vào năm 2017. Trong những năm qua, đã có nhiều đề xuất liên quan đến việc trừu tượng hóa tài khoản, trong đó quan trọng nhất là EIP-3074 và EIP-4337. EIP-3074 được đề xuất sớm hơn EIP-4337 một năm, nhưng EIP-4337 đã được đưa vào phiên bản mới trong lộ trình của Ethereum, lý do chính là việc triển khai EIP-4337 cần nhẹ hơn và không cần sửa đổi cốt lõi của giao thức Ethereum và không có rủi ro bảo mật như EIP-3074. Các vấn đề di chuyển người dùng, vấn đề về gas quá mức và các vấn đề bảo mật hợp đồng thông minh tiềm ẩn trong EIP-4337 là những vấn đề phổ biến đối với ví hợp đồng thông minh. Vitalik tin rằng cách thực tế nhất để loại bỏ tài khoản là bắt đầu hỗ trợ mạnh mẽ ERC-4337 trong thời gian ngắn, và sau đó EIP theo thời gian đã được thêm vào để bù đắp cho những điểm yếu của nó.
Lịch sử EIP tóm tắt tài khoản
EIP-86: Năm 2017, Vitalik đã đề xuất EIP-86 trong nỗ lực giới thiệu ví hợp đồng thông minh có thể được coi là hợp đồng chuyển tiếp. Các hợp đồng chuyển tiếp này sẽ chỉ chấp nhận các giao dịch từ một địa chỉ điểm vào, từ đó bất kỳ ai cũng có thể gửi giao dịch miễn là chúng tuân theo một định dạng cụ thể.
EIP-1014: Các hợp đồng chuyển tiếp này sẽ được triển khai đến một địa chỉ cụ thể dựa trên mã của chúng, đưa ra ý tưởng mà sau này phát triển thành EIP-1014, đề xuất mã opcode CREATE 2. Vì EIP-86 yêu cầu những thay đổi đáng kể đối với giao thức nên cuối cùng nó đã không được hợp nhất, trong khi EIP-1014 được sáp nhập vào năm 2018.
EIP-2938: Vào tháng 9 năm 2020, Vitalik Buterin, Ansgar Dietrichs và Matt Garnett đã đề xuất EIP-2938, yêu cầu các hợp đồng thông minh đặc biệt được xác định là ví hợp đồng thông minh sẽ chỉ chấp nhận các giao dịch trừu tượng tài khoản. Loại giao dịch mới này được hỗ trợ bởi EIP- 2718 được giới thiệu. Họ sẽ lập trình đặt mức gas tối đa cho các giao dịch và thực hiện các phương pháp xác minh tùy ý. EIP-2938 Hai mã opcode mới cần được thêm vào EVM để giúp các giao dịch trở nên khả thi. Các opcode này thay đổi đáng kể giao thức cốt lõi và quá trình kết hợp những thay đổi đó có thể kéo dài.
EIP-3074: Vào tháng 10 năm 2020, Ansgar Dietrichs, Matt Garnett và những người khác đã đề xuất EIP-3074, giới thiệu hai mã hoạt động mới: AUTH và AUTHCALL. Khi được sử dụng cùng nhau, chúng cho phép các hợp đồng thông minh gửi các giao dịch thay mặt EOA, chẳng hạn như có thể thực hiện được nhiều chữ ký, giao dịch theo đợt và được tài trợ, khôi phục khóa và gửi tiền dễ tiếp cận hơn trên các sàn giao dịch CeFi. Tuy nhiên, EIP này có một số rủi ro về bảo mật và nhận được một số lời chỉ trích. Mã hoạt động mới cũng sẽ sửa đổi giao thức cốt lõi. Các nhà nghiên cứu bắt đầu nghĩ về một giải pháp tốt hơn, cuối cùng được đề xuất là EIP-4337.
Nguồn quy trình giao dịch EIP-3074: Nethermind
Lớp 2: Sau đó, do L2 không có nợ kỹ thuật như Ethereum L1 nên việc trừu tượng hóa tài khoản có thể được triển khai ngay lập tức. Cả Optimism và Starknet đều có cách triển khai trừu tượng hóa tài khoản riêng. ArgentX là phiên bản ví của Argent trên Starknet, sử dụng phiên bản bị ảnh hưởng bởi EIP-4337 Lấy cảm hứng từ việc triển khai trừu tượng hóa tài khoản tùy chỉnh. Ví dụ gần đây nhất là Thanh toán tự động bằng tiền điện tử của Visa trên StarkNet. Giải pháp thanh toán tự động Ethereum của Visa tận dụng khái niệm trừu tượng hóa tài khoản và tạo ra một loại hợp đồng tài khoản mới - tài khoản được ủy quyền. Ý tưởng chính là mở rộng các quy tắc hợp lệ có thể lập trình của giao dịch sang Bao gồm trước -danh sách cho phép được phê duyệt Nói một cách đơn giản, việc trừu tượng hóa tài khoản có thể ủy quyền các hoạt động thanh toán tự động do tài khoản người dùng thực hiện cho các hợp đồng thông minh thanh toán tự động được phê duyệt trước. Mô hình tài khoản của StarkNet hiện được Visa gọi là trừu tượng hóa tài khoản. Việc triển khai mô hình này được lấy cảm hứng từ ERC-4337. Tài khoản trừu tượng kiểm tra xem giao dịch có đến từ một địa chỉ nhất định hay không.
Visa triển khai tính năng trừu tượng hóa tài khoản trên StarkNet
EIP-4337: Vào tháng 9 năm 2021, Vitalik Buterin và các nhà nghiên cứu Ethereum từ OpenGSN và Nethermind đã rút ra bài học từ những nỗ lực trước đó và đề xuất EIP-4337. EIP-4337 bổ sung nhóm bộ nhớ UserOperation mới với hy vọng thay thế hoàn toàn nhóm bộ nhớ giao dịch hiện tại để đạt được sự trừu tượng hóa tài khoản. Người dùng gửi các đối tượng UserOperation đến các nút Ethereum và thay vì giao dịch, họ đóng gói một tập hợp các đối tượng này vào một giao dịch được đưa vào chuỗi Ethereum. Giao dịch đóng gói này được gọi là hợp đồng thông minh điểm vào, xử lý đối tượng UserOperation và triển khai ví hợp đồng thông minh cho nó.
Nguồn quy trình giao dịch ERC-4337: Nethermind
EIP-5003: Vào tháng 3 năm 2022, Dan Finlay, Sam Wilson đề xuất EIP-5003, hy vọng cho phép di chuyển khỏi ECDSA bằng cách triển khai mã thay vì tài khoản bên ngoài. EIP này giới thiệu một opcode mới triển khai mã tại địa chỉ ủy quyền EIP-3074 AUTHUSURP. Đối với các tài khoản thuộc sở hữu bên ngoài (EOA), cùng với EIP-3607, điều này sẽ thu hồi một cách hiệu quả các quyền của khóa ký ban đầu. Điều này bổ sung cho EIP-3074, chỉ có thể cấp thêm quyền cho người tham gia nhưng không thể thu hồi chúng.
EIP-5792: Vào tháng 10 năm 2022, Moody Salem đã đề xuất EIP-5792, bổ sung phương thức JSON-RPC để gửi nhiều lệnh gọi chức năng từ ví người dùng và kiểm tra trạng thái của nó. Cách tiếp cận mới trừu tượng hơn về mặt giao dịch cơ bản so với API gửi giao dịch hiện tại để cho phép có sự khác biệt giữa việc triển khai ví, chẳng hạn như ví hợp đồng thông minh sử dụng ví EIP-4337 hoặc ví EOA hỗ trợ các giao dịch đi kèm qua EIP-3074. Dapp có thể sử dụng giao diện trừu tượng hơn này để hỗ trợ các loại ví khác nhau mà không cần phải làm thêm và cung cấp trải nghiệm người dùng tốt hơn để gửi các gói lệnh gọi chức năng (ví dụ: EIP-20 #approve, sau đó là lệnh gọi hợp đồng).
Giải thích chi tiết về EIP-4337
Trong EIP-4337 có tổng cộng 6 thành phần: Hợp đồng EntryPoint, hợp đồng Paymaster, UserOperation, Bundler, Sender Contract và Aggregator (Bộ tổng hợp).
EntryPoint: Hợp đồng điểm vào xử lý việc thực hiện và xác minh các hoạt động giao dịch được chuyển đến nó. Hợp đồng điểm đầu vào toàn cầu nhận các giao dịch được đóng gói từ nhiều Nhà cung cấp khác nhau và chạy các vòng lặp xác thực và thực thi thông qua mỗi Hoạt động của người dùng.
Paymaster: Đây là hợp đồng tùy chọn có thể thay mặt người dùng thanh toán gas cho các giao dịch. Thay vì dựa vào ví của mình, người dùng nhận được phí giao dịch do giao dịch viên tài trợ.
UserOperations: Đây là các đối tượng giao dịch được tạo để thực hiện các giao dịch thay mặt cho người dùng. Việc thực thi xảy ra sau khi xác nhận Hợp đồng người gửi. Các hoạt động này được tạo ra bởi Dapp.
Bundler: Bundler lấy UserOperations từ nhóm bộ nhớ và đóng gói chúng lại với nhau để gửi chúng đến hợp đồng EntryPoint để thực thi.
Hợp đồng người gửi: Đây là các tài khoản ví người dùng dưới dạng hợp đồng thông minh.
Bộ tổng hợp: Bộ tổng hợp là một hợp đồng phụ trợ được ví tin cậy và được sử dụng để xác minh chữ ký tổng hợp.
Toàn bộ logic vận hành tiêu chuẩn ERC-4337 bao gồm hai vòng: vòng xác minh và vòng thực thi, được kết hợp để hoàn thành logic trừu tượng hóa tài khoản.
Vòng xác minh:Hợp đồng điểm đầu vào đi qua từng Hoạt động của người dùng và gọi chức năng kiểm tra trong Hợp đồng người gửi. Hợp đồng người gửi chạy chức năng này để kiểm tra chữ ký của UserOperation và đền bù cho Bunder đã đóng gói các giao dịch này.
Vòng thực hiện:Gửi dữ liệu cuộc gọi trong mỗi UserOperation tới Hợp đồng người gửi. Ví chạy hoạt động thực thi để thực hiện các giao dịch được chỉ định trong hoạt động. Hợp đồng người gửi sau đó sẽ trả lại lượng gas còn lại sau khi hoạt động được thực hiện.
Vòng lặp xác thực và vòng thực thi Nguồn: EIP-4337
Vai trò Thu ngân được giới thiệu cho phép các nhà phát triển ứng dụng trợ cấp phí cho người dùng của họ. Khi người trả lương không bằng địa chỉ 0, điểm vào sẽ thực hiện một quy trình khác:
Giới thiệu Vòng lặp xác thực và Vòng lặp thực thi cho giao dịch viên Nguồn: EIP-4337
Trong vòng xác minh, ngoài việc gọi chức năng kiểm tra, hợp đồng điểm vào cũng phải kiểm tra xem người trả tiền có được đặt cược hay không và có đủ ETH được gửi vào hợp đồng điểm vào để trang trải phí hoạt động hay không, sau đó gọi kiểm tra function trên người trả lương để kiểm tra xem người trả lương có sẵn sàng thanh toán hay không.
Trong vòng thực thi, hợp đồng điểm đầu vào phải gọi dịch vụ hậu kỳ trên đơn vị thanh toán sau lệnh gọi thực thi chính. Nó phải đảm bảo việc thực thi Post-op bằng cách thực hiện chính trong môi trường gọi bên trong và nếu môi trường gọi bên trong quay trở lại, hãy thử gọi lại Post-op trong môi trường gọi bên ngoài (phải trả gas ngay cả khi thao tác của người dùng sẽ hoàn trả chi phí).
Vitalik kết luận rằng ERC-4337 có thể làm được nhiều việc với tư cách là một ERC hoàn toàn tự nguyện. Tuy nhiên, nó yếu hơn một giải pháp trong giao thức thực sự ở một số lĩnh vực chính:
Vấn đề di chuyển người dùng, người dùng hiện tại không thể nâng cấp nếu không chuyển tất cả nội dung và hoạt động của họ sang tài khoản mới;
Chi phí gas bổ sung (thao tác cơ bản của người dùng UserOperation là khoảng 42 k, trong khi giao dịch cơ bản là khoảng 21 k);
Các vấn đề bảo mật hợp đồng thông minh, ít được hưởng lợi hơn từ các kỹ thuật chống kiểm duyệt trong giao thức (chẳng hạn như crLists), nhắm mục tiêu vào các giao dịch và bỏ qua hoạt động của người dùng
Một cách thực tế để đạt được kết quả tốt nhất là bắt đầu hỗ trợ mạnh mẽ ERC-4337 trong thời gian ngắn, sau đó thêm EIP theo thời gian để bù đắp cho những điểm yếu của nó. Điều này không nhất thiết yêu cầu cam kết cụ thể về việc tuân thủ ERC-4337. Thay vào đó, hỗ trợ trong giao thức có thể được thiết kế tổng quát hơn và hỗ trợ ERC-4337 cũng như các lựa chọn thay thế và cải tiến của nó. Các giải pháp triển khai ERC-4337 hiện tại bao gồm Biconomy, Soul Wallet và eth-infinitism. Tất cả đều đã viết các giải pháp triển khai hợp đồng điểm đầu vào của riêng mình và hợp đồng điểm đầu vào là cốt lõi của bảo mật hợp đồng thông minh theo tiêu chuẩn này.
Vitalik đề xuất khả năng trừu tượng hóa tài khoảnbản đồ tuyến đường 。
thời gian ngắn
Đưa ERC-4337 vào sản xuất hoàn chỉnh. Lý tưởng nhất là điều này có thể được mở rộng bằng cách sử dụng khả năng tổng hợp chữ ký để đạt được tính thân thiện với việc tổng hợp.
Cần có ví trình duyệt dễ sử dụng có giao diện với ERC-4337.
Xem xét triển khai tính năng tổng hợp và nén chữ ký để làm cho ERC-4337 thân thiện hơn với L2;
Hướng dẫn hệ sinh thái ERC-4337 trong giao thức L2, nơi vấn đề về chi phí gas sẽ ít hơn;
trung hạn
Triển khai cây Verkle và thêm EIP để giảm chi phí gas;
Thêm chuyển đổi EOA-to-ERC-4337 tùy chọn;
Thêm logic crList cùng lúc hoặc ngay sau khi triển khai Phân tách Người đề xuất/Người xây dựng (PBS);
dài
Hãy cân nhắc việc truyền, thực hiện chuyển đổi trạng thái không thường xuyên, triển khai mã byte cho mọi tài khoản có thể là EOA, nhưng nhược điểm của phương pháp này là cần phải sửa đổi giao thức cốt lõi và chi phí cao cho người khai thác/người xác thực.
Quét dự án
SevenX Ventures đã tiến hành quét đơn giản các ví hợp đồng thông minh trên thị trường và thu thập một số dự án ví hợp đồng thông minh phổ biến hơn trên thị trường. Tình hình toàn diện như sau:
Trường hợp thực hiện
Chúng tôi đã chọn hai dự án để giới thiệu trường hợp và phân tích chức năng cũng như nguyên tắc thực hiện tương ứng của chúng. Trong số đó, Unipass là đại diện tiêu biểu của ví hợp đồng thông minh truyền thống, trong khi Candide Wallet là đại diện tiêu biểu của ví sử dụng tiêu chuẩn ERC-4337. Họ có các tài liệu công khai phong phú giải thích chi tiết việc triển khai chức năng sản phẩm của họ.
Unipass
Ví UniPass là giải pháp ví hợp đồng thông minh hỗ trợ khôi phục mạng xã hội qua email. Thông qua UniPass Wallet, các nhà phát triển có thể cung cấp trải nghiệm người dùng không cần khóa riêng tư và không tốn gas trong sản phẩm, từ đó nhanh chóng thu hút một lượng lớn người dùng Web2. Các tính năng của nó là: không cần khóa riêng, chống kiểm duyệt, không tốn gas, khôi phục email, bảo vệ quyền riêng tư, hỗ trợ đa nền tảng và đa chuỗi.
Các tính năng không có khóa riêng, chống kiểm duyệt, khôi phục email và bảo vệ quyền riêng tư chủ yếu được mang đến bởi giải pháp quản lý khóa của Unipass. Tài khoản hợp đồng của UniPass Wallet hỗ trợ người dùng đặt nhiều loại khóa. Các loại khóa đã được hỗ trợ bao gồm:
Các địa chỉ bên ngoài mà chúng tôi thường sử dụng là các tài khoản hợp đồng hỗ trợ giao thức EIP-1271 (một phương thức xác minh chữ ký tiêu chuẩn cho hợp đồng).
Người dùng UniPass cũng có thể sử dụng địa chỉ email của họ làm chìa khóa. Các hợp đồng thông minh mà chúng tôi triển khai trên chuỗi có thể xác minh bằng mật mã quyền sở hữu hộp thư Internet của người dùng thông qua DKIM (Thư được xác định khóa tên miền)
Trong quá trình xác minh, UniPass sử dụng công nghệ zero-know proof để đảm bảo quyền riêng tư và bảo mật thông tin email của người dùng.
Trong tương lai, UniPass Wallet cũng sẽ xem xét hỗ trợ các thuật toán chữ ký hiệu quả và đơn giản hơn secp 256 k 1 (như Schnorr, BLS), thuật toán chữ ký an toàn hậu lượng tử (như Lamport, Winternitz), v.v.
Khóa bí mật có ba vai trò chính:
Chủ sở hữu là chủ sở hữu của tài khoản. Chủ sở hữu kiểm soát việc triển khai, nâng cấp, hủy bỏ và các chức năng cốt lõi khác của tài khoản và là người kiểm soát quyền cao nhất của tài khoản.
Nhà điều hành là người thực thi tài sản tài khoản. Nhà điều hành chịu trách nhiệm chuyển tài sản, yêu cầu hợp đồng, ủy quyền và các chức năng khác của tài khoản và là chìa khóa được người dùng sử dụng hàng ngày.
Người giám hộ là người giám hộ tài khoản. Khi chìa khóa trong tài khoản bị hỏng hoặc bị mất và người dùng mất quyền kiểm soát tài khoản, người giám hộ có thể được sử dụng để khôi phục tài khoản. Một tính năng chính được UniPass cung cấp là: khôi phục mạng xã hội qua email trên chuỗi.
Trong hợp đồng thông minh của UniPass Wallet, người dùng quản lý tài khoản của mình thông qua một loạt các khóa có trọng số vai trò. Ngoài Khóa chính được triển khai theo sơ đồ tính toán đa bên (MPC) an toàn, người dùng cũng có thể đặt nhiều loại khóa khác. Mỗi phím có vai trò và trọng lượng tương ứng. Người dùng chỉ có thể nhận được ủy quyền cho vai trò này sau khi thu thập các khóa có tổng trọng lượng vai trò vượt quá yêu cầu.
Một khóa có thể được gán một hoặc nhiều vai trò. Khi một phím được gán một vai trò thì trọng số tương ứng sẽ được thiết lập cùng lúc. Khi người dùng muốn bắt đầu thực hiện các thao tác liên quan đến một danh tính nhất định, họ cần phải ký bằng một hoặc nhiều khóa có tổng trọng số của vai trò đạt 100 trở lên. Ví dụ: khi đăng ký tài khoản lần đầu, người dùng có thể bỏ qua cài đặt người giám hộ. Các thông số liên quan có thể được thiết lập như sau:
Tính năng không tốn gas được triển khai thông qua bộ chuyển tiếp của bên thứ 3. Khi người dùng bắt đầu một giao dịch, bộ chuyển tiếp cần thiết để giúp người dùng bắt đầu giao dịch. Trong quá trình này, người chuyển tiếp có thể hỗ trợ người dùng sử dụng bất kỳ mã thông báo nào để thanh toán gas và thậm chí có thể giúp người dùng hoàn toàn thay mặt họ thanh toán gas, đạt được trải nghiệm không cần gas. Relayer là một chương trình máy chủ mã nguồn mở, UniPass sẽ chạy Relayer mặc định và các đối tác hoặc bất kỳ bên thứ ba nào cũng có thể chạy Relayer.
Candide
CANDIDE là một sản phẩm công cộng được xây dựng một cách hợp tác và công khai bởi một nhóm người đóng góp, không có tổ chức hay công ty nào kiểm soát sự phát triển của nó. Candide Wallet Beta là ví hợp đồng thông minh di động tự lưu trữ. Nó hiện đang được triển khai trên mạng thử nghiệm Goerli. Nó hiện đã có sẵn trên Android Test và iOS Testflight.
Cơ sở kỹ thuật của Candide Beta là triển khai ERC-4337 của phân nhánh Stackup và khung mã nguồn mở của Gnosis Safe. Các tính năng của nó bao gồm các từ không lời, phục hồi xã hội, giao dịch hàng loạt và không tính phí gas.
Trong số đó, logic triển khai các tính năng như từ không cần ghi chú, giao dịch hàng loạt và không có phí gas giống như của ERC-4337 và được hoàn thành bằng cách sử dụng hợp đồng điểm đầu vào do eth-infinitism phát triển. Candide chạy trình đóng gói của riêng mình và đóng gói UserOperation như một dịch vụ cho ví riêng của mình. Trong giải pháp này, hầu hết tính bảo mật nằm ở hợp đồng điểm vào thay vì bản thân việc xây dựng ví.
Ngoài ra, tính năng khôi phục xã hội còn xuất phát từ việc Candide sử dụng Safe cho hợp đồng ví cơ sở của mình. Điều này cho phép Candide tận dụng hợp đồng DAO đáng tin cậy nhất để quản lý mã thông báo kỹ thuật số. Candide sẽ sử dụng thiết kế mô-đun Gnosis Safe để cung cấp chức năng cốt lõi của nó, bao gồm phục hồi xã hội, cũng như các tính năng trong tương lai như khóa thời gian và giới hạn rút tiền. Mô-đun khôi phục xã hội này có logic tương tự như Unipass, ngoại trừ Unipass chủ yếu dành cho khôi phục email, nhưng người giám hộ của Candide có thể là bất kỳ người ký nào có địa chỉ công khai, chẳng hạn như bạn bè gia đình, tổ chức và ví phần cứng.
Suy nghĩ về ví hợp đồng
Ví hợp đồng thông minh ban đầu được phát triển dựa trên các vấn đề rất cụ thể, chẳng hạn như chức năng đa chữ ký của Gnosis Safe và chức năng phục hồi xã hội của Argent. Những sản phẩm ban đầu này có thiết kế phức tạp, thường không công khai, minh bạch và không hình thành các tiêu chuẩn thống nhất, gây khó khăn cho việc đưa chúng vào các ứng dụng khác dưới dạng phần mềm trung gian. Đối với loại sản phẩm này, tiêu chí đánh giá cần dựa nhiều hơn vào hoàn cảnh sử dụng và liệu nó có nắm bắt được nhu cầu cốt lõi của người dùng hay không, ví dụ như chức năng đa chữ ký của Safe nắm bắt được một trong những nhu cầu cốt lõi của người dùng.
Với sự ra đời của ERC-4337, việc nhanh chóng xây dựng một ví không cần lời nói, giao dịch hàng loạt và không có phí gas đã trở nên rất thuận tiện. Tiêu chuẩn thống nhất cũng làm cho bộ công cụ phát triển được xây dựng dựa trên tiêu chuẩn này có thể kết hợp được và có thể đóng vai trò trung gian phần mềm cắm vào các ứng dụng khác nhau và vẫn có thể tương tác được.
Do đó, khi xem xét các giải pháp ví thông minh sớm, điều quan trọng là phải tương thích với ERC-4337. Đối với các giải pháp dựa trên ERC-4337, vì hầu hết các công nghệ đều là nguồn mở nên nên tập trung cân nhắc vào các điểm sau:
Công nghệ: Cách xây dựng các hợp đồng điểm đầu vào, trình đóng gói và trình tổng hợp (nếu có) và cách xây dựng các tính năng vượt xa những gì ERC-4337 mang lại, chẳng hạn như tính năng khôi phục xã hội
Hoạt động: Cách xây dựng cộng đồng, tiếp cận thị trường và thu hút người dùng
Trải nghiệm: Trải nghiệm của người dùng khi sử dụng ví có đủ tốt hay không, chẳng hạn như độ mượt mà, độ ổn định, v.v.
Và logic kiểm tra chính của một số sản phẩm C khác
Mô hình ví trong tương lai có nhiều khả năng giống với mô hình B2B2C. Mặc dù ví tồn tại dưới dạng sản phẩm cấp C, nhưng điều quan trọng hơn là phải cung cấp giải pháp SDK hoàn thiện để các ứng dụng khác được tích hợp vào ví trong ứng dụng và sau đó nhắm mục tiêu đến người dùng cấp C. Trong số đó, các trình đóng gói và tổng hợp chủ yếu được xây dựng theo cách tập trung trong thời gian đầu, có thể hình thành mạng mô-đun sau này, tuy nhiên, vì phần này là cốt lõi của việc nắm bắt giá trị nên các ví sử dụng mạng đóng gói do người khác xây dựng cần phải đi thông qua trò chơi lợi ích kinh tế. .