Ce qui doit être prouvé
Pour qu'un remplissage soit libéré, la preuve de paiement doit correspondre à l'ordre. Les champs importants sont le montant, la devise, le destinataire, la méthode de paiement, le timing et l'intention en cours de réalisation.
Le vérificateur n'a pas besoin de publier tout l'historique de paiement. Il lui faut suffisamment de preuves authentifiées pour affirmer que ce paiement, pour ce montant, vers ce bénéficiaire, appartient à cette intention.
Modèle de vérification actuel
ZKP2P V3 utilise un service d'attestation hébergé en TEE pour les flux de paiement pris en charge. Le service exécute la logique de vérification à l'intérieur d'une AWS Nitro Enclave, contrôle les données de paiement par rapport à des schémas de plateforme typés, et signe un PaymentAttestation EIP-712 une fois que le paiement correspond.
Cela a remplacé l'ancien modèle zkTLS plus lourd côté acheteur pour de nombreux flux, car la génération de preuve côté navigateur était lente, dépendante de l'extension et fragile lorsque les plateformes de paiement modifiaient leurs interfaces web. Le compromis est explicite : une exécution attestée par le matériel et des builds d'enclave reproductibles plutôt que de demander à chaque acheteur de générer une preuve locale.
TEE-TLS vs zkTLS hérité
| Question | zkTLS hérité | TEE-TLS |
|---|---|---|
| Où la vérification s'exécute | Navigateur ou extension de l'acheteur | Service d'attestation Nitro Enclave |
| UX acheteur | La génération d'extension/preuve peut être lourde | La preuve de paiement est vérifiée côté serveur dans l'enclave |
| Logique de vérification | Templates de fournisseur et appariement de preuves | Schémas typés et transformateurs spécifiques à la plateforme |
| Racine de confiance | Système de preuve plus hypothèses de notaire/proxy | Attestation matérielle plus code d'enclave audité |
| Résultat onchain | Données de libération signées ou vérifiées | PaymentAttestation EIP-712 contrôlé par le vérificateur |
Frontières de confidentialité
- Les données de paiement personnelles ne sont pas publiées onchain.
- La contrepartie voit l'identifiant de versement nécessaire pour compléter le paiement.
- La chaîne voit des hashes, des nullifiers, des signatures, des montants, des adresses de contrat et des événements de libération.
- USDCtoFiat ne détient pas votre compte fiat, ne conserve pas vos clés privées et ne peut pas annuler un transfert sur application de paiement.