Giải mã giao dịch SCW

Với ví hợp đồng thông minh (SCW), quá trình swap đi theo một con đường rất khác so với ví Ethereum/EVM truyền thống. Sự khác biệt đó có thể gây nhầm lẫn, đặc biệt khi có điều gì đó sai. Nhưng khi bạn hiểu các nhân tố chính trong luồng — và cách đọc những gì đã xảy ra từng bước trong app và trên explorer — mọi thứ sẽ bắt đầu có ý nghĩa.

Hãy cùng đi qua tất cả nhé.


Từ một lần chạm đến thực thi trên chuỗi: những gì thực sự diễn ra

Khi bạn chạm “Swap” trong app, cảm giác như đó là một hành động đơn lẻ. Trên thực tế, bạn đang khởi chạy một quy trình nhiều lớp xây dựng trên tính trừu tượng tài khoản của Ethereum (ERC-4337). Giao dịch của bạn không đi thẳng lên blockchain như trong ví thông thường. Thay vào đó, nó đi theo một con đường vòng:

  1. Chúng tôi tạo lộ trình. Chúng tôi yêu cầu động cơ định tuyến (như 1inch) tìm con đường tốt nhất cho swap của bạn, và mô phỏng nó để đảm bảo nó sẽ hoạt động. Chúng tôi ước tính gas, xác nhận bạn có token, và đóng gói các hướng dẫn vào một định dạng đặc biệt: một UserOperation.

  2. Một bundler bước vào. Đây là một tác nhân ngoài chuỗi chịu trách nhiệm gửi UserOperations lên blockchain. Nó kiểm tra op của bạn, đảm bảo an toàn, và trả trước gas cho bạn (sau này nó sẽ được hoàn trả).

  3. UserOp của bạn đi vào blockchain qua EntryPoint hợp đồng thông minh. Hãy nghĩ EntryPoint như cổng duy nhất mà tất cả giao dịch SCW phải đi qua. EntryPoint thực hiện các kiểm tra cuối cùng, và nếu mọi thứ trông ổn…

  4. Nó ra lệnh cho Ví Hợp Đồng Thông Minh (SCW) của bạn thực hiện swap. SCW của bạn gọi router (ví dụ: 1inch), router gọi các pool, token chuyển, và đầu ra trở lại ví của bạn.

Tóm lại: bạn chạm swap → chúng tôi mô phỏng → bundler gửi → EntryPoint xác thực → SCW của bạn thực thi.


Hãy xem một ví dụ thực tế

Bây giờ khi chúng ta hiểu luồng ở mức cao, hãy xem cách điều này diễn ra trong một swap thực tế — trước tiên trong app, sau đó trên chuỗi:

Đây là những gì chúng ta thấy:

  • Chúng tôi đã swap 1 USDC lấy 0.765 KTA.

  • Swap được thực hiện trên Base (xem biểu tượng Base phía trên các biểu tượng coin).

  • Chúng tôi đã trả:

    • 0,03 đô la gas (bằng ETH)

    • 0,22% phí swap cho goodcryptoX

    • 0,05% phí router cho 1inch

  • Lộ trình đơn giản: 100% qua một pool Uniswap v4.

  • Bundler: Alchemy (xem Bước 2 ở trên để tóm tắt)

  • Các liên kết Explorer: xuất hiện nếu giao dịch đã đến blockchain và được ghi vào block (ngay cả khi nó thất bại)

Cho đến đây, mọi thứ ổn. Bây giờ hãy nhấp vào liên kết BaseScan và xem giao dịch này trông như thế nào trên chuỗi:

Từ: đây không phải là ví của bạn — đó là bundler của Alchemy. Điều này là mong đợi: bundler đã gửi giao dịch.

Đến: EntryPoint (v0.6.0). Một lần nữa, điều này là mong đợi. Tất cả giao dịch SCW đều vào qua đây.

Giao dịch nội bộ: Hiển thị luồng token bản địa của blockchain (ETH trên Base) bên trong giao dịch. Ở đây chúng ta có thể thấy ETH chảy:

  • Ví của chúng tôi (…0A5) đã gửi ETH để trả phí gas cho EntryPoint.

  • EntryPoint đã hoàn trả cho bundler chi phí gas thực tế (vì bundler đã trả trước gas cho bạn - xem Bước 2 ở trên). Bất kỳ ETH dư thừa nào vẫn nằm trên EntryPoint như khoản tiền gửi của bạn cho các giao dịch tương lai.

Chuyển ERC-20: điều này hiển thị các chuyển động token thực tế:

Ví của chúng tôi đã không gửi USDC trực tiếp. Thay vào đó, hợp đồng token USDC (…2A8) đã xử lý và phát đi tất cả các chuyển USDC. Điều này là bình thường — trên các chuỗi EVM, các chuyển token được xử lý bởi chính hợp đồng token sau khi nhận được hướng dẫn từ ví hợp đồng thông minh.

  1. Hợp đồng USDC đã gửi 1 USDC của chúng tôi tới ba đích:

    • 0,0022 USDC đến ví phí của giao thức chúng tôi (…608A)

    • 0,0005 USDC đến ví phí của 1inch (…1DE5)

    • Phần còn lại 0,9973 USDC đến router Uniswap v4 (…Universal Router)

  2. Router Uniswap v4 đã chuyển nó đến Bộ Quản Lý Pool Uniswap v4 (một hợp đồng duy nhất xử lý tất cả các pool v4).

  3. Pool Manager đã thực hiện swap: USDC vào → KTA ra.

  4. KTA được định tuyến trở lại qua Aggregation Router của 1inch, router này chuyển tiếp nó đến ví của chúng tôi (…0A5).


Tiếp theo, chúng ta sẽ xem điều gì xảy ra khi mọi thứ không suôn sẻ — vì trong thế giới SCW, chúng thường không suôn sẻ. Và khi chúng thất bại, biết nơi để nhìn và phải làm gì sẽ hữu ích:

Phần Lỗi phần này cho bạn thấy cách “giải mã” các giao dịch Ví Hợp Đồng Thông Minh khi chúng gặp sự cố.

Last updated