Move.

Bài viết

Chia sẻ kiến thức của bạn.

article banner.
MumiTroll.
Oct 31, 2023
Bài Viết

Giao dịch được Sui tài trợ - Ví dụ về tích hợp cơ bản

Theo truyền thống, người dùng tham gia vào các ứng dụng phi tập trung (DApps) phải đối mặt với một rào cản phổ biến: phí gas. Các khoản phí gas Sui này trong trường hợp của chúng tôi, được yêu cầu để thực hiện các giao dịch trên blockchain, thường ngăn cản người dùng mới nắm bắt đầy đủ tiềm năng của Web3. Tuy nhiên, tính năng giao dịch được tài trợ sáng tạo của Sui loại bỏ trở ngại này, trao quyền cho các nhà xây dựng trang trải phí gas cho các giao dịch ứng dụng của họ. Chức năng mang tính cách mạng này mở đường cho trải nghiệm người dùng liền mạch, khuyến khích việc áp dụng rộng rãi hơn các ứng dụng phi tập trung.

Nếu bạn có bất kỳ câu hỏi nào, bạn có thể hỏi họ tại đây.

Quy trình giao dịch được tài trợ

Quy trình giao dịch được tài trợ của Sui là một quy trình được sắp xếp tốt đảm bảo các giao dịch suôn sẻ và miễn phí cho người dùng cuối. Dưới đây là bảng phân tích các bước liên quan.

Người dùng bắt đầu một hành động

Quá trình bắt đầu khi người dùng khởi tạo GasLessTransactionDatagiao dịch, cho biết ý định của họ để thực hiện một hành động cụ thể trong DApp.

DApp tạo khối giao dịch Sui

Trọng tâm của quy trình giao dịch được tài trợ là khả năng tạo Khối giao dịch của DApp. Khối này gói gọn tất cả dữ liệu cần thiết, bao gồm ý định của người dùng, hành động sẽ được thực hiện và bất kỳ tham số liên quan nào.

Truyền GasLessTransactionData

GasLessTransactionDatađược gửi đến nhà tài trợ, một người tham gia chính trong khuôn khổ giao dịch được tài trợ, với một yêu cầu chữ ký. Dữ liệu này đóng vai trò là nền tảng cho giao dịch sắp tới.

Xác thực và xây dựng dữ liệu giao dịch

Nhà tài trợ xác nhận giao dịch nhận được và xây dựngTransactionData, kết hợp các khoản phí gas cần thiết. Bước này đảm bảo rằng giao dịch được tài trợ thích hợp để thực hiện trên blockchain Sui.

Ký giao dịch

Nhà tài trợ ký tênTransactionData, cho biết sự chấp thuận và cam kết của họ đối với giao dịch. Khóa riêng cần thiết cho chữ ký này được lưu trữ an toàn trong AWS Secrets Manager, đảm bảo tính bảo mật tối đa.

Xác minh và ký kép bởi Người dùng

Chữ kýTransactionData, cùng với chữ ký của nhà tài trợ, được gửi lại cho người dùng. Người dùng xác minh chi tiết giao dịch và ký TransactionDatamột lần nữa, tạo một giao dịch ký kép sẵn sàng để thực hiện.

Thực hiện giao dịch trên Sui

Giao dịch ký kép được gửi đến mạng Sui thông qua một nút Sui (nút đầy đủ) hoặc nhà tài trợ. Sui xử lý giao dịch, thực hiện hành động được chỉ định trong DApp, tất cả mà không yêu cầu người dùng phải trả bất kỳ khoản phí gas nào.

Thông báo người dùng

Cuối cùng, người dùng được DApp thông báo rằng giao dịch được tài trợ và gửi đi.

Thực hiện các giao dịch do Sui tài trợ: Quan điểm của nhà phát triển

Để thực hiện các giao dịch được tài trợ, các nhà phát triển tương tác với API Sui hoặc API Giao dịch được tài trợ, sử dụng sui-sign-sponsored-transactionchức năng Lambda. Dưới đây là một cái nhìn thoáng qua về mã phía máy khách tạo điều kiện cho quá trình này:

const response = await fetch('http://localhost:5000/blockchain/sui-sign-sponsored-transaction', {
  method: 'POST',
  headers: {
    Accept: 'application/json',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    sender: wallet.address,
    module: libName,
    action,
    arguments: data,
  }),
});

const sponsorSignedTransaction = await response.json();
const transactionBlock = TransactionBlock.from(sponsorSignedTransaction?.transactionBlockBytes);

const senderSignedTransaction = await wallet.signTransactionBlock({
  transactionBlock,
});

const executeResponse = await provider.executeTransactionBlock({
  transactionBlock: sponsorSignedTransaction?.transactionBlockBytes,
  signature: [sponsorSignedTransaction?.signatureBytes, senderSignedTransaction.signature],
  options: { showEffects: true },
  requestType: 'WaitForLocalExecution',
});

Mã phía khách hàng này hoạt động như một cầu nối giữa người dùng, nhà tài trợ và blockchain Sui, cho phép thực hiện liền mạch các giao dịch miễn phí gas.

Kết luận

Tính năng giao dịch được tài trợ của Sui thể hiện một sự thay đổi mô hình trong thế giới các ứng dụng phi tập trung, loại bỏ rào cản đáng kể đối với người dùng. Thông qua việc khám phá chức năng sáng tạo này, chúng tôi đã thu được những hiểu biết có giá trị đã định hình cách tiếp cận của chúng tôi để xây dựng DApps thân thiện với người dùng.

Hãy để lại câu hỏi của bạn ở đây.

  • Move
0
Chia sẻ
Bình luận
.
Chúng tôi sử dụng cookie để đảm bảo bạn có trải nghiệm tốt nhất trên trang web của chúng tôi.
Thêm thông tin