Tiêu đề gốc: "Tổng quan về tính trừu tượng của tài khoản trong chuỗi khối Ethereum"
Tác giả gốc: Yash Kamal Chaturvedi
Bản tổng hợp gốc: ETH Chinese
Trừu tượng hóa và trừu tượng hóa dữ liệu trong lập trình máy tính đề cập đến quá trình ẩn đi tất cả dữ liệu ngoại trừ dữ liệu liên quan đến “đối tượng” nhằm giảm độ phức tạp và tăng hiệu quả. Nó thể hiện các đối tượng theo cách bỏ qua các chi tiết không cần thiết. Trừu tượng hóa là một trong ba nguyên tắc của lập trình hướng đối tượng và có liên quan đến việc đóng gói và ẩn dữ liệu. Bài viết này sẽ cung cấp cái nhìn tổng quan về:
Trừu tượng hóa tài khoản Ethereum
· Tài khoản bên ngoài/Tài khoản người dùng
· Hợp đồng
EIP được đề xuất để trừu tượng hóa tài khoản
· EIP- 86: Trừu tượng hóa nguồn và chữ ký giao dịch
· EIP-2938: Trừu tượng hóa tài khoản
· EIP-4337: Trừu tượng hóa tài khoản thông qua hợp đồng điểm đầu vào (Hợp đồng điểm đầu vào)
Các trường hợp sử dụng
· Ví
· Giao dịch được tài trợ
· Trộn tiền xu
· Giao thức DeFi
Việc trừu tượng hóa tài khoản của Ethereum nhằm mục đích tạo ra một loại tài khoản duy nhất chứa tất cả các khía cạnh liên quan và không có khía cạnh không liên quan, cho phép các nhà phát triển làm việc dễ dàng hơn.
Hiện tại, có hai loại tài khoản trên chuỗi khối Ethereum:

Tài khoản người dùng Nó dành cho mục đích sử dụng chung (con người).
· Các tài khoản này được kiểm soát bằng khóa riêng tương ứng với địa chỉ công khai, chẳng hạn như tài khoản ví của người dùng.
· Những tài khoản này còn được gọi là Tài khoản bên ngoài (EOA) và không yêu cầu số dư ETH để tạo tài khoản bên ngoài trên blockchain. Tuy nhiên, giao dịch giữa hai tài khoản bên ngoài có thể được thực hiện bằng ETH hoặc các Token khác được ERC hỗ trợ.
· Các tài khoản bên ngoài (ví) để gửi và nhận tiền điện tử tồn tại bên ngoài Máy ảo Ethereum (EVM).
Hợp đồng là một tập hợp các hướng dẫn được điều khiển bằng mã.
· Do sử dụng bộ nhớ mạng nên thường phát sinh chi phí liên quan đến việc tạo hợp đồng.
· Người dùng có thể vận hành nhiều chức năng khác nhau, chẳng hạn như nhận giao dịch từ tài khoản bên ngoài và tài khoản hợp đồng và gửi giao dịch cho họ.
· Nó cũng có thể khởi chạy một mã thực hiện nhiều hoạt động khác nhau, bao gồm đổi mã thông báo hoặc tạo hợp đồng mới.
· Tài khoản hợp đồng là một "hợp đồng thông minh" tồn tại trong EVM.
Nếu bạn gửi 1 ETH vào tài khoản được kiểm soát bởi hợp đồng mã thì không ai có thể Không còn nữa kiểm soát ETH này. Điều duy nhất có thể chuyển ETH này là việc thực thi hợp đồng, tức là chính mã.
Cả hai loại tài khoản đều có khả năng nhận, dự trữ và gửi ETH và Tiềm năng của Token cũng như khả năng giao tiếp với các hợp đồng thông minh khác được triển khai trên mạng.
Trừu tượng hóa tài khoản Ethereum (AA) là câu trả lời cho Việc cải tiến hai hình thức tài khoản khiến chúng trở nên dễ so sánh hơn và cũng làm cho logic quản lý tài khoản bên ngoài trở nên phổ biến như tài khoản hợp đồng.
Mục đích của nó là gộp hai hình thức tài khoản hợp đồng thành một hình thức. Việc sử dụng hình thức tài khoản duy nhất bao gồm đúc tiền và chuyển khoản hợp đồng. Nhà phát triển và người dùng sẽ không cần phải phân biệt giữa các loại tài khoản nữa vì các giao dịch sẽ được chuyển hoàn toàn sang EVM và ra khỏi giao thức blockchain.
Các nhà phát triển Ethereum đã tìm mọi cách để triển khai nó, nhưng chưa bao giờ đạt đến Cuối cùng đề xuất trạng thái. Trong các phần sau, chúng tôi phác thảo ba Đề xuất cải tiến Ethereum (EIP) đã đề xuất việc trừu tượng hóa tài khoản cho đến nay.

2016: p>
· Vitalik Buterin nảy ra ý tưởng thay đổi trừu tượng ban đầu cho Metropolis.
· Mục đích của nó là chuẩn bị một bản tóm tắt bảo mật tài khoản. Trong mô hình truyền thống, ECDSA (Thuật toán chữ ký số đường cong Elliptic) và sơ đồ nonce mặc định là những cách duy nhất để bảo vệ tài khoản. Trong mô hình này, tất cả các tài khoản đều là tài khoản hợp đồng, có thể trả phí gas và người dùng có thể tự do xác định mô hình bảo mật của mình.
2017:
· Vitalik Buterin đề xuất EIP-86, một bản tóm tắt về nguồn gốc và chữ ký giao dịch.
·Mục đích là loại bỏ cơ chế xác minh chữ ký và kiểm tra không kiểm tra, cho phép người dùng thiết lập hợp đồng tài khoản để thực hiện mọi chữ ký bắt buộc hoặc kiểm tra không kiểm tra, thay vì dựa vào các phương pháp truyền thống.
2020:
· Vitalik Buterin, Ansgar Dietrichs, Matt Garnett, Will Villanueva và Sam Wilson đã đề xuất EIP-2938 để trừu tượng hóa tài khoản.
· Mục đích là cho phép các hợp đồng trở thành loại tài khoản "cấp cao nhất" có thể trả phí và thực hiện các giao dịch.
2021:
· Vitalik Buterin, Yoav Weiss, Kristof Gazso, Namra Patel và Dror Tirosh đã đề xuất EIP-4337 về việc trừu tượng hóa tài khoản thông qua các đặc tả hợp đồng điểm đầu vào.
·Mục đích là để tránh những thay đổi về giao thức lớp đồng thuận và thay vào đó dựa vào cơ sở hạ tầng cấp cao hơn.
Theo "Tóm tắt" của nó, EIP-86 đề xuất thực hiện một loạt các thay đổi phục vụ cho việc xác minh chữ ký "trừu tượng" và kiểm tra không thường xuyên. mục đích toàn diện là cho phép người dùng tạo "hợp đồng tài khoản" thực hiện bất kỳ kiểm tra chữ ký/không kiểm tra một lần nào mong muốn, thay vì dựa vào cơ chế hiện tại được mã hóa cứng trong xử lý giao dịch.
Mô hình truyền thống: ECDSA và sơ đồ nonce mặc định được sử dụng để bảo vệ tài khoản theo cách duy nhất.
Mô hình mới: Tất cả tài khoản đều là tài khoản hợp đồng, có thể Gas được trả phí và người dùng có thể tự do xác định mô hình bảo mật của họ.
Lấy hợp đồng giao nhận làm ví dụ, tác giả Vitalik Buterin giải thích rằng loại hợp đồng này sẽ xác minh chữ ký, nếu chữ ký hợp lệ thì bắt đầu thực hiện thanh toán cho công cụ khai thác, sau đó sử dụng Gửi lệnh gọi đến địa chỉ được chỉ định với giá trị và dữ liệu đã cho.
Những ưu điểm chính của đề xuất này như sau:
p>
Ví đa chữ ký
· Phương thức truyền thống: Mọi giao dịch trong đa chữ ký wallet phải có sự đồng ý của tất cả người tham gia. Chúng tôi có thể đơn giản hóa việc này bằng cách kết hợp tất cả chữ ký của người tham gia vào một giao dịch phê duyệt duy nhất, nhưng phương pháp này vẫn sẽ tăng thêm độ phức tạp vì tất cả tài khoản của người tham gia sẽ phải nắm giữ ETH.
· Phương pháp mới: Với sự trợ giúp của EIP này, hợp đồng hiện tại có thể giữ ETH và trực tiếp gửi giao dịch có chứa tất cả chữ ký trong hợp đồng và hợp đồng sẽ trả phí.
Mật mã tùy chỉnh
· Phương pháp truyền thống: Người dùng phải tuân theo ECDSA, một loại mật mã sử dụng các đường cong elip.
· Cách tiếp cận mới: Người dùng có thể nâng cấp lên chữ ký ed25519 hoặc bất kỳ chương trình nào họ muốn nâng cấp lên; người dùng không bắt buộc phải áp dụng ECDSA.
Theo tóm tắt của EIP-2938, “Trừu tượng tài khoản (AA) cho phép các hợp đồng trở thành tài khoản “cấp cao nhất” có thể trả phí và thực hiện các giao dịch.
· Mô hình truyền thống: tính hợp lệ của giao dịch được xác định trực tiếp bằng chữ ký ECDSA, một giá trị nonce đơn giản và số dư tài khoản.
· Mô hình mới:
1. Trừu tượng hóa tài khoản bằng cách thực thi mã byte EVM ngẫu nhiên để mở rộng điều kiện có hiệu lực của giao dịch.
2. Để thể hiện tính hợp lệ, mã hoạt động EVM mới PAYGAS được giới thiệu, đồng thời giá gas và giới hạn sử dụng gas của hợp đồng cũng được đặt ra.
3. Việc trừu tượng hóa tài khoản hiện được chia thành hai loại:
AA một bên thuê: Loại này được thiết kế để hỗ trợ các trường hợp sử dụng có ít ví hoặc có nhiều người tham gia khác.
AA nhiều người thuê: Loại này được thiết kế để hỗ trợ các ứng dụng như Uniswap có nhiều người dùng.
Những thay đổi đồng thuận
·NONCE opcode: Thêm NONCE opcode để đẩy trường nonce của giao dịch.
· Mã hoạt động PAYGAS: Thêm PAYGAS mã hoạt động để tạo một điểm kiểm tra không thể đảo ngược nhằm đảm bảo rằng PAYGAS các thay đổi trạng thái trước đó không thể bị đảo ngược.
Sam Wilson là một trong những tác giả của đề xuất này, đề xuất này giải thích ở đây vấn đề AA khác với các vấn đề khác như thế nào. những người khác Sự khác biệt trong các vấn đề truyền thống.
Trong giao dịch AA, sẽ không có giá gas hoặc giới hạn gas, không có giá trị được gửi và các trường chữ ký, thay thế to bằng đích . Trong hợp đồng nhiều chữ ký, các trường này được chuyển trong dữ liệu cuộc gọi và được xử lý cùng với hợp đồng.
Nếu một giao dịch đến nút, tính hợp lệ của giao dịch sẽ được kiểm tra. Nhưng giao dịch truyền thống và giao dịch AA được kiểm tra khác nhau.
· Trong các giao dịch truyền thống: các nút kiểm tra: nonce của chúng khớp với nonce tiếp theo của tài khoản, số dư tài khoản đủ để trang trải giá trị của họ cộng với phí gas tối đa và chữ ký của họ khớp với địa chỉ của tài khoản.
· Trong các giao dịch AA: Kiểm tra các nút: nonce của chúng khớp chính xác với nonce tiếp theo của hợp đồng, mã byte của hợp đồng bắt đầu bằng tiền tố tiêu chuẩn và logic xác minh được gọi trước khi đạt đến giới hạn gas xác minh PAYGAS  ;, không có mã opcode bị cấm nào được gọi trước PAYGAS và số dư hợp đồng đủ để trả phí gas do PAYGAS đặt ra.
Thời gian phát sóng khối là thời gian trung bình để một khối mới tiếp cận được hầu hết các nút trong mạng.
Khi khối có giao dịch AA đến, tất cả các giao dịch đang chờ xử lý cho cùng một tài khoản sẽ bị xóa. Mặt khác, các giao dịch truyền thống được xác nhận lại và có khả năng được xuất bản khi nhận được các khối mới.
Điều này được đề xuất bởi Vitalik Buterin và cộng đồng mới nhất cử động. Nó được đề xuất dưới dạng ERC và đề xuất này bao gồm việc tránh thay đổi giao thức lớp đồng thuận và dựa vào cơ sở hạ tầng cấp cao hơn.
Nó nhằm đạt được các mục tiêu sau: p>
· Trừu tượng hóa tài khoản: Cho phép người dùng sử dụng ví hợp đồng thông minh chứa logic xác minh ngẫu nhiên làm tài khoản chính thay vì EOA.
· Phân quyền: Cho phép người đóng gói gói giao dịch tham gia vào quá trình trừu tượng hóa hoạt động của người dùng bao gồm cả tài khoản. Người dùng không cần biết địa chỉ liên lạc trực tiếp của bất kỳ tác nhân nào để xử lý bất kỳ hoạt động nào xảy ra trên toàn bộ nhóm bộ nhớ chung.
· Không có thay đổi về sự đồng thuận: Để được áp dụng nhanh hơn, đề xuất này sẽ tránh những thay đổi về sự đồng thuận.
· Thanh toán phí giao dịch: Thanh toán phí giao dịch bằng mã thông báo tiêu chuẩn ERC-20 cho phép nhà phát triển thanh toán phí cho người dùng của họ, cũng như các trường hợp sử dụng được hỗ trợ bởi các đề xuất giao dịch được tài trợ như EIP-3074.
Đề xuất này hoạt động như thế nào?

Nguồn hình ảnh: Chủ nghĩa vô cực
Vitalik Buterin đã có mặt Giải thích tốt về cách hoạt động của đề xuất này.
Đây là đề xuất mới nhất về việc trừu tượng hóa tài khoản. Nó vẫn ở trạng thái dự thảo và đang chờ phê duyệt được sáp nhập Trở thành một EIP. So với nhóm bộ nhớ giao dịch Ethereum thông thường, thiết kế này bổ sung, duy trì và loại bỏ một số tính năng.
Những điểm nổi bật chính
Không có tác nhân tập trung, sự phức tạp của cài đặt ví phía người dùng bị loại bỏ, hỗ trợ đầy đủ cho EIP-1559, khả năng thay thế thanh toán và gửi UserOperation mới với mức phí cao hơn UserOperation cũ tới thay thế nó Các hoạt động hoặc các tính năng được giữ lại cho phép nó được đóng gói nhanh hơn.
Có thêm một số ưu điểm mới:
p>
1. Tính linh hoạt của logic xác minh
2. Đủ để cho phép lớp thực thi đạt được bảo mật lượng tử
3. Khả năng nâng cấp ví
4. Tính linh hoạt của logic thực thi
Tuy nhiên, bất chấp những nỗ lực tốt nhất của giao thức, nó vẫn sẽ Tăng nhẹ khả năng bị tấn công DoS, nó cũng làm tăng chi phí gas và chỉ thực hiện một giao dịch tại một thời điểm.
EOA và ví hợp đồng
· Ví EOA: Ví được bảo vệ bằng khóa riêng.
·Ví hợp đồng: Ví được triển khai trên chuỗi sử dụng hợp đồng thông minh.
· Cân nhắc về bảo mật: Nếu có lỗi trong mã hợp đồng thông minh, ví hợp đồng sẽ phải đối mặt với rủi ro bảo mật từ các hợp đồng thông minh dễ bị tổn thương. Rủi ro này có thể được giảm thiểu thông qua việc kiểm tra và đánh giá bảo mật do nhà cung cấp ví thực hiện. Tuy nhiên, trong ví EOA, rủi ro hoàn toàn do người dùng ví chịu, cũng giống như việc người dùng vô tình làm mất khóa riêng thì đó cũng là trách nhiệm của chính họ.
Argent, Dapper, Gnosis Safe và Monolith đều là ví dụ về ví hợp đồng thông minh.
Người dùng chuỗi khối Ethereum cần có EOA chứa gas để kết nối với mạng chuỗi khối hoặc dựa vào các nhà cung cấp ví để tạo điều kiện thuận lợi cho các giao dịch meta thông qua mạng chuyển tiếp của họ hoặc mạng chuyển tiếp của bên thứ ba (chẳng hạn như mạng Trạm xăng). Trước đây dựa vào ETH do CEX mua (yêu cầu KYC) và cố gắng giảm thiểu xung đột trong trải nghiệm người dùng bằng cách chuyển trách nhiệm của người tiêu dùng sang người chuyển tiếp, với các khoản phí được trả bởi các nhà cung cấp ví trên chuỗi/ngoài chuỗi và/hoặc người dùng ngoài chuỗi. .
Siêu giao dịch là một giao dịch chứa dữ liệu được ký bởi người sẵn sàng thực hiện giao dịch.
Cấu trúc dựa trên chuyển tiếp có một số nhược điểm:
1. Họ có thể được coi là các trung gian tập trung với khả năng ngăn chặn các giao dịch
2. Vì các giao dịch chuyển tiếp yêu cầu thêm 21.000 phí gas cơ bản, nên phí gas của công ty họ dựa trên cần tạo ra lợi nhuận, họ kém hiệu quả về mặt kỹ thuật/kinh tế.
3. Sử dụng quyền hạn giao thức dành riêng cho bộ chuyển tiếp.
Tính trừu tượng của tài khoản cho phép ví hợp đồng thông minh chấp nhận tài khoản người dùng mà không cần dựa vào mạng chuyển tiếp Gas-free giao dịch meta và trả phí gas cho chúng. Khả năng của lớp cơ sở này cũng sẽ cải thiện đáng kể UX (trải nghiệm người dùng) của những ví như vậy mà không làm mất đi sự đảm bảo phân quyền của Ethereum.
Giao dịch được tài trợ được bao gồm trong EIP-2711 (trạng thái bị thu hồi), đề xuất cơ chế cho phép mọi người thực hiện giao dịch mà không cần sở hữu bất kỳ ETH nào bằng cách cho phép người khác trả phí gas.
Một số trường hợp sử dụng:
1. Cho phép nhà phát triển ứng dụng thay mặt người dùng trả phí.
2. Cho phép người dùng thanh toán phí bằng Token ERC-20 và hợp đồng đóng vai trò như một trung gian để thu thập Token ERC-20 và thanh toán phí mạng dưới dạng ETH.
Hoạt động
Đề xuất này có thể hỗ trợ các trường hợp sử dụng này thông qua cơ chế quản lý thanh toán.
· Đối với trường hợp sử dụng 1: Paymaster sẽ xác minh rằng chữ ký của nhà tài trợ có trong paymasterData , cho biết rằng khoản tài trợ đã sẵn sàng được thanh toán cho UserOperation Nếu chữ ký hợp lệ, Paymaster sẽ chấp nhận hướng dẫn và khấu trừ chi phí Hoạt động của người dùng từ phần chia sẻ của nhà tài trợ.
· Đối với trường hợp sử dụng 2: Paymaster sẽ kiểm tra xem người gửi ví có đủ số dư ERC-20 để thanh toán cho Hoạt động của người dùng này hay không. Nếu đủ, Paymaster sẽ chấp nhận hướng dẫn và thanh toán phí ETH trước khi yêu cầu Mã thông báo ERC-20 trong postOp.
Hãy cùng khám phá ví dụ về cơ chế trộn Tornado Cash để hiểu cách chúng tôi sử dụng AA trong các giao thức DeFi.
Các vấn đề về quyền riêng tư trong hợp đồng Tornado Cash truyền thống
· Tornado Cash cung cấp cho người dùng khả năng bảo vệ quyền riêng tư khi rút tiền. Họ có thể chứng minh rằng số tiền đó đến từ một khoản tiền gửi duy nhất, nhưng không ai ngoài người dùng biết khoản tiền gửi đó đến từ đâu.
· Người dùng thường không giữ ETH trong địa chỉ rút tiền của họ. Nếu người dùng sử dụng địa chỉ gửi tiền của họ để thanh toán gas, điều này sẽ tạo ra một chuỗi giữa địa chỉ gửi tiền và địa chỉ rút tiền.
Vấn đề này có thể được giải quyết bởi những người chuyển tiếp bên thứ ba, những người sẽ xác minh ZK- Snark và công cụ vô hiệu hóa vẫn ở trạng thái hợp lệ, xuất bản các giao dịch sử dụng ETH của họ để thanh toán gas và thu các khoản giảm giá của người dùng từ hợp đồng Tornado Cash.
Các giải pháp được cung cấp bằng cách trừu tượng hóa tài khoản:Người dùng có thể gửi Sau khi Giao dịch AA của hợp đồng TC, xác minh ZK-SNARK và kiểm tra vô hiệu hóa được thực hiện và PAYGAS được gọi trực tiếp và nhanh chóng. Điều này cho phép người rút tiền thanh toán gas trực tiếp bằng token được gửi đến địa chỉ rút tiền của họ mà không cần đến bộ chuyển tiếp hoặc liên kết trên chuỗi tới địa chỉ gửi tiền của họ.
Hãy cùng khám phá trường hợp của giao thức DeFi Uniswap và tìm hiểu cách chúng ta có thể sử dụng AA trong giao thức DeFi.
Một phiên bản mới của Uniswap có thể được tạo ra cho phép giao dịch trực tiếp với các hợp đồng Uniswap.
Hiện tại, người dùng có thể gửi trước Token vào Uniswap; Uniswap có thể lưu trữ số dư và khóa công khai của người dùng để xác minh Giao dịch để chi tiêu số dư này.
Mục tiêu của AA là ngăn chặn các giao dịch không đáp ứng tiêu chuẩn cấp cao được đóng gói trên chuỗi (ví dụ: khớp với sự tồn tại của các đơn đặt hàng), từ đó cải thiện hiệu quả sử dụng gas của giao thức DeFi.
Trong mô hình truyền thống:Người giao dịch bình thường sẽ lưu trữ Token ngoài hợp đồng của Uniswap.
Trong mô hình mới: Người giao dịch chênh lệch giá sẽ lưu trữ Token trên Uniswap và họ cũng có thể chuyển giao các giao dịch để thực hiện chênh lệch giá trong trường hợp có thay đổi trên thị trường bên ngoài. Cuối cùng, nếu một nhà giao dịch chênh lệch giá khác thực hiện giao dịch trước, những giao dịch không sinh lời này sẽ không được đưa vào chuỗi. Điều này cho phép các nhà giao dịch chênh lệch giá tránh phải trả phí gas và giảm số lượng giao dịch spam được đưa vào chuỗi. Điều này sẽ tăng khả năng mở rộng và hiệu quả thị trường của blockchain, vì các nhà giao dịch chênh lệch giá sẽ có khả năng điều chỉnh tốt hơn sự chênh lệch giá trong các giao dịch xuyên chuỗi.
Một nhà kinh doanh chênh lệch giá đề cập đến người khai thác hai hoặc nhiều hơn sự khác biệt giữa các thị trường, theo đó thương nhân mua thấp và bán cao cùng một lúc.
Liên kết gốc
Chào mừng bạn tham gia cộng đồng chính thức của BlockBeats:
Nhóm Telegram đăng ký: https://t.me/theblockbeats
Nhóm Telegram thảo luận: https://t.me/BlockBeats_App
Tài khoản Twitter chính thức: https://twitter.com/BlockBeatsAsia