Cách ZKP2P biến một khoản thanh toán fiat thành một lần giải phóng USDC onchain.

ZKP2P là giao thức nằm dưới USDCtoFiat. Người bán khóa USDC trong một hợp đồng thông minh Base, người mua trả fiat qua một ứng dụng thanh toán thông thường, và một chứng thực thanh toán đã ký mở khóa USDC sau khi khoản thanh toán khớp với lệnh.

01

Phiên bản ngắn gọn

Một người bán tạo một khoản ký gửi bằng cách khóa USDC trong EscrowV2 trên Base và liệt kê phương thức thanh toán fiat, loại tiền, định danh nhận tiền và tỷ giá. Một người mua chọn thanh khoản đó, bắt đầu một ý định onchain, trả người bán trong ứng dụng thanh toán đã chọn, và gửi bằng chứng thanh toán.

Giao thức không yêu cầu bên nào tin vào một ảnh chụp màn hình chat. Bằng chứng thanh toán được kiểm tra offchain bởi dịch vụ chứng thực, và PaymentAttestation EIP-712 kết quả được xác minh onchain trước khi hợp đồng giải phóng USDC.

02

Vòng đời của một lượt khớp

  1. 01Người bán ký gửi USDC gốc trên Base vào EscrowV2 và khai báo các phương thức thanh toán, loại tiền và chi tiết người nhận được chấp nhận.
  2. 02Người mua chọn khoản ký gửi và phát tín hiệu một ý định qua OrchestratorV4. Ý định đó giữ lượng cụ thể trong khi người mua trả tiền.
  3. 03Người mua trả thẳng cho người bán trong ứng dụng fiat đã chọn. USDCtoFiat không bao giờ nhận hay giữ khoản chuyển fiat.
  4. 04Bằng chứng thanh toán được xác minh đối chiếu với ý định: số tiền, loại tiền, người nhận, dấu thời gian, phương thức thanh toán và các ràng buộc tuyến.
  5. 05Dịch vụ chứng thực ký một PaymentAttestation. Bộ xác minh onchain kiểm tra chữ ký, các giá trị snapshot và nullifier, rồi OrchestratorV4 giải phóng USDC.
03

Tại sao hợp đồng có thể giải phóng an toàn

Nguyên thủyNó làm gìTại sao quan trọng
EscrowV2Giữ USDC của người bán trên BaseCả USDCtoFiat lẫn người mua đều không thể di chuyển nó ngoài quy tắc hợp đồng
Intent hashĐịnh danh một lệnh của người muaGắn bằng chứng thanh toán fiat với đúng lượt khớp
PaymentAttestationKết quả xác minh được ký EIP-712Cho phép một hợp đồng xác minh xử lý nhiều phương thức thanh toán
NullifierDấu một lần cho một khoản thanh toánNgăn cùng một khoản thanh toán bị nhận hai lần
Hash chi tiết người nhậnHash của định danh nhận tiền của người bánGắn khoản thanh toán với người bán. Với hầu hết phương thức, hash không có salt nên ai biết tên nhận tiền đều có thể đối chiếu
04

Những gì công khai

Tên nhận tiền của bạn không được ghi lên Base dưới dạng văn bản thường, nhưng mỗi khoản ký gửi lưu một hash của nó, và với hầu hết phương thức thanh toán, hash này không có salt. Bất kỳ ai biết hoặc đoán được Cashtag, Revtag, email Zelle hay ID tài khoản Venmo của bạn đều có thể băm nó và tìm mọi khoản ký gửi dùng nó, và công cụ tra cứu maker công khai của ZKP2P trả về tên nhận tiền đã đăng ký cho một hash. Hãy coi tên nhận tiền của bạn là công khai. Thông tin đăng nhập và lịch sử tài khoản trong ứng dụng thanh toán của bạn không được đăng lên Base.

Định danh nhận tiền của bạn vẫn hiển thị với đối tác cần trả tiền cho bạn. Điều đó là không thể tránh trong bất kỳ luồng thanh toán vào ứng dụng thanh toán nào: người mua không thể gửi fiat mà không có điểm đến.

Đường sản xuất V4

Ký quỹ phi giám hộ cộng chứng thực thanh toán offchain.

ZKP2P V3 chuyển việc phân tích thanh toán ra offchain và giữ các quy tắc giải phóng cuối cùng ở onchain, đó là lý do UX người bán có thể hỗ trợ nhiều phương thức thanh toán hơn mà không cần một hợp đồng xác minh riêng cho mỗi tuyến.

Luồng thao tác cụ thể trong ứng dụng thanh toán khác nhau tùy phương thức. Việc đăng ký qua tiện ích mở rộng không thay thế chính sách của nhà cung cấp: Wise cấm nhận tiền từ giao dịch bán tiền điện tử P2P, và PayPal có thể yêu cầu phê duyệt trước.

EscrowV2
0x777777779d229cdF3110e9de47943791c26300Efhợp đồng giám hộ người bán
OrchestratorV4
0x74c55679268FAfB493864915aD16A320AB8c40Bavòng đời ý định
USDC
0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913token gốc của Base
Verifier
UnifiedPaymentVerifierV4kiểm tra các chứng thực thanh toán

Câu hỏi thường gặp

ZKP2P có giống USDCtoFiat không?

Không. ZKP2P là giao thức và hệ thống hợp đồng nền tảng. USDCtoFiat là một sản phẩm hướng người bán được xây dựng trên nó để biến USDC trên Base thành fiat qua các ứng dụng thanh toán được hỗ trợ.

Cùng một khoản thanh toán fiat có thể giải phóng USDC hai lần không?

Không. Các chứng thực thanh toán bao gồm một nullifier, một dấu một lần được bộ xác minh kiểm tra để ngăn việc phát lại cùng một khoản thanh toán cho nhiều ý định.

Điều gì xảy ra nếu người mua bắt đầu một ý định nhưng không bao giờ trả tiền?

Phần đó của khoản ký gửi người bán tạm thời bị gắn với ý định đang mở cho đến khi nó hết hạn hoặc bị hủy. Thanh khoản chưa khớp vẫn có thể được người bán rút.

USDCtoFiat là gì?

USDCtoFiat điều phối việc bán USDC gốc trên Base theo hình thức không lưu ký, trên toàn bộ danh mục thanh toán và tiền tệ hiện hành của ZKP2P, bao gồm USD, EUR, GBP, INR và CNY. Điều kiện của nhà cung cấp dịch vụ thanh toán và chính sách tài khoản vẫn được áp dụng; việc một tuyến được hỗ trợ về mặt kỹ thuật không có nghĩa là bạn được phép dùng tài khoản bên ngoài, và Wise hiện cấm nhận tiền từ giao dịch bán tiền điện tử P2P.

USDCtoFiat có giữ tiền của tôi không?

Không. Bạn ký mọi giao dịch từ ví của chính mình. USDC của bạn bị khóa trong một hợp đồng Base công khai và chỉ giải phóng cho người mua sau khi khoản thanh toán của họ được chứng minh. Bạn có thể rút bất kỳ khoản ký gửi chưa khớp nào vào bất cứ lúc nào.

Bán thì tốn phí gì?

Việc tạo và quản lý khoản ký quỹ của người bán là miễn phí, nhưng các thao tác onchain vẫn cần phí gas Base. Với các giao dịch được ủy quyền, phí quản lý 0,10% của Delegate được trừ từ USDC chuyển cho người mua, không phải từ tiền pháp định bạn nhận hoặc tỷ giá bạn niêm yết.

Tôi có cần tài khoản sàn giao dịch tập trung không?

Không cần tài khoản sàn giao dịch để dùng USDCtoFiat. Bạn cần một ví giữ USDC trên Base và một tài khoản trên ứng dụng thanh toán mà bạn muốn được trả tiền. Các quy tắc và hạn mức tài khoản của chính ứng dụng thanh toán vẫn áp dụng.

Tôi có cần hoàn tất KYC không?

USDCtoFiat không thu thập giấy tờ tùy thân, không giữ fiat của bạn, và không giữ khóa của bạn. Ứng dụng thanh toán bạn dùng vẫn kiểm soát quy trình xác minh, hạn mức và quy tắc tài khoản của riêng nó. Việc thanh toán USDC diễn ra qua các hợp đồng thông minh Base, và chúng tôi không thể thay đổi những gì Venmo, PayPal, Wise, Zelle hay ngân hàng của bạn yêu cầu.