Bài học 4

Cách Xây Dựng & Sử Dụng Tài Khoản Thông Minh

Một hướng dẫn thực hành để tạo tài khoản thông minh sử dụng thirdweb, Biconomy hoặc Safe SDKs. Nó bao gồm cách thiết lập môi trường phát triển, kết nối với tài khoản thông minh từ frontend, triển khai các luồng không gas, mô phỏng giao dịch qua bundlers và paymasters, và tuân theo các phương pháp tốt nhất cho việc kiểm tra và triển khai.

Thiết lập môi trường phát triển

Một quy trình làm việc điển hình bắt đầu với một dự án TypeScript được tạo ra thông qua Vite hoặc Next.js. Sau khi cài đặt ethers-v6 và dotenv để quản lý khóa, phụ thuộc tiếp theo là SDK trừu tượng tài khoản mà bạn chọn. Thirdweb dựa vào một nhà máy tài khoảnhợp đồng mà bạn triển khai một lần—hoặc không thay đổi hoặc có thể nâng cấp—sau đó phục vụ một khóa hạ tầng miễn phí mở khóa trình bundler và paymaster của nó. Bảng điều khiển phát hành khóa này ngay sau khi bạn tạo một dự án và cho phép các cuộc gọi có giới hạn tỷ lệ trên Sepolia, Base và Polygon zkEVM.

Biconomy theo cấu trúc tương tự nhưng tách biệt các mối quan tâm một cách rõ ràng hơn. Bạn đăng ký một paymaster trong bảng điều khiển web, nạp tiền vào một bể gas, và định nghĩa các chính sách quyết định phương thức nào sẽ được tài trợ. SDK sau đó tiêm địa chỉ paymaster và khóa API vào mỗi UserOperationCác chữ ký dApp của bạn. Thiết kế này cho phép các ứng dụng tiêu dùng thêm các luồng "không cần gas" mà không tiết lộ máy chủ tiếpRelay riêng tư.

CLI của Safe triển khai một ví proxy kế thừa hợp đồng singleton đã được thử nghiệm; một Safe4337Module tùy chọn gắn các hooks ERC-4337 để cùng một kho tiền có thể vào alt-mempool mà không cần thay đổi địa chỉ của nó. Các nhà phát triển có thể chạy CLI ở chế độ không giám sát để triển khai trước hàng trăm proxy cho một đợt airdrop hoặc chiến dịch test-net.

Kết nối với một tài khoản thông minh từ giao diện phía trước

Khi các thành phần back-end tồn tại trên chuỗi, một ứng dụng React có thể hiển thị một nút "Kết nối" duy nhất mà giải quyết đến một ngữ cảnh tài khoản thông minh. Bộ bao bọc của Thirdweb nhận một client-ID và một factory-address; khi người dùng chọn bất kỳ ví nào như MetaMask, một ví nhúng dựa trên email, hoặc một passkey - nhà cung cấp sẽ kiểm tra một cách lặng lẽ xem một hợp đồng đã tồn tại hay chưa, sau đó triển khai nó trong giao dịch đầu tiên, cấp vốn gas thông qua paymaster tích hợp khi gasless:true được thiết lập.

Biconomy tiêm ngữ cảnh của nó thông qua lớp BiconomySmartAccount, lớp này bao bọc một ethers Signer. Sau khi khởi tạo, tất cả các cuộc gọi được thực hiện qua signer này được mã hóa dưới dạng UserOperations và được chuyển tiếp đến bundler. Safe cung cấp một sự trừu tượng tương tự thông qua @an toàn-global/core-kit, nơi một phiên bản SafeAccount thay thế ethers.Wallet và cung cấp các trợ giúp cấp cao cho việc nhóm, thu thập chữ ký và thực thi trên chuỗi.

Tùy chỉnh logic ví: các luồng không cần gas và danh sách trắng

Tài khoản thông minh tiết lộ các hook chạy trước khi một UserOperation được coi là hợp lệ, vì vậy việc thêm các tính năng như điểm đến trong danh sách trắng hoặc giới hạn chi tiêu hàng ngày trở nên đơn giản như việc cập nhật bộ nhớ hợp đồng thông qua giao dịch của chủ sở hữu. Đối với các tương tác không cần gas, nhà phát triển đăng ký một người chi trả tài trợ(Biconomy) hoặc bật cờ không gas (thirdweb). Ở phía dưới, paymaster đã ký trước thao tác và sau đó yêu cầu hoàn trả từ bể gas của mình; người dùng cảm thấy số dư ETH bằng không nhưng vẫn hoàn thành hành động như thể họ đã tự nạp tiền vào ví. Việc cho phép hoạt động theo cách tương tự: một quy trình xác thực trong ví kiểm tra calldata so với danh sách cho phép và hoàn tác nếu cuộc gọi nằm ngoài phạm vi, bảo vệ người dùng khỏi các phê duyệt hợp đồng độc hại.

Mô phỏng và ký các giao dịch với các bộ gộp và người thanh toán

ERC-4337 giới thiệu một mempool thay thế trong đó nhà tập hợp thu thập UserOperations, thực hiện mô phỏng ngoài chuỗi, và gói các bộ thành công thành các giao dịch Ethereum thông thường. Các dịch vụ phổ biến bao gồm Alchemy Rundler, Stackup, Voltaire, và Infinitism; mỗi dịch vụ đều cung cấp một điểm cuối JSON-RPC phản ánh đặc tả tham chiếu. Mô phỏng ngăn chặn các thao tác vô vọng— ví dụ, các cuộc gọi có thể làm thất bại việc xác thực của ví— khỏi việc đến chuỗi và lãng phí gas.

Một paymaster có thể tận dụng luồng đó. Trong quá trình mô phỏng, bundler hỏi paymaster liệu nó sẽ chịu phí hay không và, nếu có, đính kèm chữ ký của paymaster. Trên chuỗi, hợp đồng EntryPoint xác nhận cả ví và paymaster trong một cuộc gọi duy nhất, hợp nhất tất cả các hành động đã được ghép lại, và phân phối hoàn trả gas tương ứng. Cơ chế này cho phép một sàn giao dịch tài trợ cho các khoản tiền gửi, một trò chơi trợ cấp cho các động thái trong trò chơi, hoặc một DAO thưởng cho những người đóng góp mà không buộc người dùng phải nắm giữ ETH.

Kiểm tra và triển khai: các thực tiễn tốt nhất cho năm 2025

Kiểm tra cục bộ hiện nay được hưởng lợi từ các mạng dựa trên fork như Anvil hoặc Hardhat-foundry, có thể giả lập một bundler và paymaster để toàn bộ chu trình UserOperation chạy trong bộ nhớ. Trước khi đẩy lên test-net, các dự án biên dịch với Solidity 0.8.25 và kích hoạt các lần tối ưu hóa để phù hợp với bytecode mà các kiểm toán viên sẽ xem xét. Các kịch bản tích hợp liên tục thực hiện phân tích tĩnh với Slither hoặc MythX và chạy fuzzing khác biệt chống lại các bất biến dự kiến.

An ninh vẫn là ưu tiên hàng đầu: các hướng dẫn kiểm toán năm 2025 nhấn mạnh các đánh giá đa lớp kết hợp giữa quét tự động, phân tích thủ công và thử nghiệm xâm nhập trực tiếp. Các nhóm khóa mã nguồn trước khi kiểm toán, giải quyết các phát hiện quan trọng và công bố báo cáo cuối cùng cùng với siêu dữ liệu triển khai của họ. Khi kiểm toán sạch, hợp đồng nhà máy được triển khai trước, tiếp theo là paymaster (nếu cần) và cuối cùng là cập nhật biến môi trường phía trước để chỉ tới các điểm cuối bundler trực tiếp. Sau khi ra mắt, các móc theo dõi giám sát các UserOperations thất bại và các cuộc gọi paymaster bị đảo ngược, cảnh báo các nhà phát triển trước khi người dùng nhận thấy thời gian chết.

Khi các bước này hoàn tất, một dApp có thể cung cấp một quy trình hướng dẫn dễ dàng chỉ với một cú nhấp chuột, nơi những người mới có thể tạo ví, đúc một NFT, hoặc tham gia vào một vị trí DeFi mà không cần mua ETH trước. Mô-đun tiếp theo và cuối cùng sẽ phác thảo các triển khai thực tế của những quy trình như vậy, đánh giá các hạn chế hiện tại, và khảo sát các tiêu chuẩn mới nổi như ERC-6900 hứa hẹn mang lại tính mô-đun cao hơn.

Tuyên bố từ chối trách nhiệm
* Đầu tư tiền điện tử liên quan đến rủi ro đáng kể. Hãy tiến hành một cách thận trọng. Khóa học không nhằm mục đích tư vấn đầu tư.
* Khóa học được tạo bởi tác giả đã tham gia Gate Learn. Mọi ý kiến chia sẻ của tác giả không đại diện cho Gate Learn.
Danh mục
Bài học 4

Cách Xây Dựng & Sử Dụng Tài Khoản Thông Minh

Một hướng dẫn thực hành để tạo tài khoản thông minh sử dụng thirdweb, Biconomy hoặc Safe SDKs. Nó bao gồm cách thiết lập môi trường phát triển, kết nối với tài khoản thông minh từ frontend, triển khai các luồng không gas, mô phỏng giao dịch qua bundlers và paymasters, và tuân theo các phương pháp tốt nhất cho việc kiểm tra và triển khai.

Thiết lập môi trường phát triển

Một quy trình làm việc điển hình bắt đầu với một dự án TypeScript được tạo ra thông qua Vite hoặc Next.js. Sau khi cài đặt ethers-v6 và dotenv để quản lý khóa, phụ thuộc tiếp theo là SDK trừu tượng tài khoản mà bạn chọn. Thirdweb dựa vào một nhà máy tài khoảnhợp đồng mà bạn triển khai một lần—hoặc không thay đổi hoặc có thể nâng cấp—sau đó phục vụ một khóa hạ tầng miễn phí mở khóa trình bundler và paymaster của nó. Bảng điều khiển phát hành khóa này ngay sau khi bạn tạo một dự án và cho phép các cuộc gọi có giới hạn tỷ lệ trên Sepolia, Base và Polygon zkEVM.

Biconomy theo cấu trúc tương tự nhưng tách biệt các mối quan tâm một cách rõ ràng hơn. Bạn đăng ký một paymaster trong bảng điều khiển web, nạp tiền vào một bể gas, và định nghĩa các chính sách quyết định phương thức nào sẽ được tài trợ. SDK sau đó tiêm địa chỉ paymaster và khóa API vào mỗi UserOperationCác chữ ký dApp của bạn. Thiết kế này cho phép các ứng dụng tiêu dùng thêm các luồng "không cần gas" mà không tiết lộ máy chủ tiếpRelay riêng tư.

CLI của Safe triển khai một ví proxy kế thừa hợp đồng singleton đã được thử nghiệm; một Safe4337Module tùy chọn gắn các hooks ERC-4337 để cùng một kho tiền có thể vào alt-mempool mà không cần thay đổi địa chỉ của nó. Các nhà phát triển có thể chạy CLI ở chế độ không giám sát để triển khai trước hàng trăm proxy cho một đợt airdrop hoặc chiến dịch test-net.

Kết nối với một tài khoản thông minh từ giao diện phía trước

Khi các thành phần back-end tồn tại trên chuỗi, một ứng dụng React có thể hiển thị một nút "Kết nối" duy nhất mà giải quyết đến một ngữ cảnh tài khoản thông minh. Bộ bao bọc của Thirdweb nhận một client-ID và một factory-address; khi người dùng chọn bất kỳ ví nào như MetaMask, một ví nhúng dựa trên email, hoặc một passkey - nhà cung cấp sẽ kiểm tra một cách lặng lẽ xem một hợp đồng đã tồn tại hay chưa, sau đó triển khai nó trong giao dịch đầu tiên, cấp vốn gas thông qua paymaster tích hợp khi gasless:true được thiết lập.

Biconomy tiêm ngữ cảnh của nó thông qua lớp BiconomySmartAccount, lớp này bao bọc một ethers Signer. Sau khi khởi tạo, tất cả các cuộc gọi được thực hiện qua signer này được mã hóa dưới dạng UserOperations và được chuyển tiếp đến bundler. Safe cung cấp một sự trừu tượng tương tự thông qua @an toàn-global/core-kit, nơi một phiên bản SafeAccount thay thế ethers.Wallet và cung cấp các trợ giúp cấp cao cho việc nhóm, thu thập chữ ký và thực thi trên chuỗi.

Tùy chỉnh logic ví: các luồng không cần gas và danh sách trắng

Tài khoản thông minh tiết lộ các hook chạy trước khi một UserOperation được coi là hợp lệ, vì vậy việc thêm các tính năng như điểm đến trong danh sách trắng hoặc giới hạn chi tiêu hàng ngày trở nên đơn giản như việc cập nhật bộ nhớ hợp đồng thông qua giao dịch của chủ sở hữu. Đối với các tương tác không cần gas, nhà phát triển đăng ký một người chi trả tài trợ(Biconomy) hoặc bật cờ không gas (thirdweb). Ở phía dưới, paymaster đã ký trước thao tác và sau đó yêu cầu hoàn trả từ bể gas của mình; người dùng cảm thấy số dư ETH bằng không nhưng vẫn hoàn thành hành động như thể họ đã tự nạp tiền vào ví. Việc cho phép hoạt động theo cách tương tự: một quy trình xác thực trong ví kiểm tra calldata so với danh sách cho phép và hoàn tác nếu cuộc gọi nằm ngoài phạm vi, bảo vệ người dùng khỏi các phê duyệt hợp đồng độc hại.

Mô phỏng và ký các giao dịch với các bộ gộp và người thanh toán

ERC-4337 giới thiệu một mempool thay thế trong đó nhà tập hợp thu thập UserOperations, thực hiện mô phỏng ngoài chuỗi, và gói các bộ thành công thành các giao dịch Ethereum thông thường. Các dịch vụ phổ biến bao gồm Alchemy Rundler, Stackup, Voltaire, và Infinitism; mỗi dịch vụ đều cung cấp một điểm cuối JSON-RPC phản ánh đặc tả tham chiếu. Mô phỏng ngăn chặn các thao tác vô vọng— ví dụ, các cuộc gọi có thể làm thất bại việc xác thực của ví— khỏi việc đến chuỗi và lãng phí gas.

Một paymaster có thể tận dụng luồng đó. Trong quá trình mô phỏng, bundler hỏi paymaster liệu nó sẽ chịu phí hay không và, nếu có, đính kèm chữ ký của paymaster. Trên chuỗi, hợp đồng EntryPoint xác nhận cả ví và paymaster trong một cuộc gọi duy nhất, hợp nhất tất cả các hành động đã được ghép lại, và phân phối hoàn trả gas tương ứng. Cơ chế này cho phép một sàn giao dịch tài trợ cho các khoản tiền gửi, một trò chơi trợ cấp cho các động thái trong trò chơi, hoặc một DAO thưởng cho những người đóng góp mà không buộc người dùng phải nắm giữ ETH.

Kiểm tra và triển khai: các thực tiễn tốt nhất cho năm 2025

Kiểm tra cục bộ hiện nay được hưởng lợi từ các mạng dựa trên fork như Anvil hoặc Hardhat-foundry, có thể giả lập một bundler và paymaster để toàn bộ chu trình UserOperation chạy trong bộ nhớ. Trước khi đẩy lên test-net, các dự án biên dịch với Solidity 0.8.25 và kích hoạt các lần tối ưu hóa để phù hợp với bytecode mà các kiểm toán viên sẽ xem xét. Các kịch bản tích hợp liên tục thực hiện phân tích tĩnh với Slither hoặc MythX và chạy fuzzing khác biệt chống lại các bất biến dự kiến.

An ninh vẫn là ưu tiên hàng đầu: các hướng dẫn kiểm toán năm 2025 nhấn mạnh các đánh giá đa lớp kết hợp giữa quét tự động, phân tích thủ công và thử nghiệm xâm nhập trực tiếp. Các nhóm khóa mã nguồn trước khi kiểm toán, giải quyết các phát hiện quan trọng và công bố báo cáo cuối cùng cùng với siêu dữ liệu triển khai của họ. Khi kiểm toán sạch, hợp đồng nhà máy được triển khai trước, tiếp theo là paymaster (nếu cần) và cuối cùng là cập nhật biến môi trường phía trước để chỉ tới các điểm cuối bundler trực tiếp. Sau khi ra mắt, các móc theo dõi giám sát các UserOperations thất bại và các cuộc gọi paymaster bị đảo ngược, cảnh báo các nhà phát triển trước khi người dùng nhận thấy thời gian chết.

Khi các bước này hoàn tất, một dApp có thể cung cấp một quy trình hướng dẫn dễ dàng chỉ với một cú nhấp chuột, nơi những người mới có thể tạo ví, đúc một NFT, hoặc tham gia vào một vị trí DeFi mà không cần mua ETH trước. Mô-đun tiếp theo và cuối cùng sẽ phác thảo các triển khai thực tế của những quy trình như vậy, đánh giá các hạn chế hiện tại, và khảo sát các tiêu chuẩn mới nổi như ERC-6900 hứa hẹn mang lại tính mô-đun cao hơn.

Tuyên bố từ chối trách nhiệm
* Đầu tư tiền điện tử liên quan đến rủi ro đáng kể. Hãy tiến hành một cách thận trọng. Khóa học không nhằm mục đích tư vấn đầu tư.
* Khóa học được tạo bởi tác giả đã tham gia Gate Learn. Mọi ý kiến chia sẻ của tác giả không đại diện cho Gate Learn.