Kendi x402 Facilitator'ını Barındırmanın EIP-3009 Tuzakları
DeskCrew, x402 ödeme protokolünde kendi facilitator'ını barındırırken EIP-3009 doğrulamasında paraya mal olabilecek dört kritik tuzağı paylaşıyor.
DeskCrew ekibi, AI ajanlarının hesap açmadan USDC ile kullanabildiği bir destek aracı sunuyor ve ödemeleri x402 (HTTP-402) standardıyla yönetiyor. Hazır bir facilitator kullanmak yerine tüm zinciri — doğrulama, röle, ödeme onayı — kendileri barındırınca, EIP-3009 imza tabanlı yetkilendirme modelinde gözden kaçması kolay dört tuzakla karşılaştılar.
En kritik bulgu: USDC sözleşmesindeki "nonce kullanıldı" durumu, paranın gerçekten transfer edildiği anlamına gelmiyor. Ödeyen taraf kendi nonce'unu iptal edebildiği veya kendine transferle tüketebildiği için, sistem ödemeyi "tamamlandı" sanıp aslında hiçbir USDC almamış olabiliyor — kötü niyetli bir ajan bu açığı kullanarak hizmeti bedavaya alabilirdi. Çözüm, nonce durumunu değil, aynı işlemde AuthorizationUsed olayına bitişik Transfer log'unu doğrulamak oldu. Diğer üç tuzak ise aynı yetkilendirmenin iki kez çalıştırılmaması için nonce üzerinde benzersiz kısıtlamalı bir "claim" tablosu kurmayı, çoklu zincir desteğinin basit bir kopyala-yapıştır olmadığını (her zincirde farklı USDC sözleşmesi, Solana'da EIP-3009'un bile olmaması) ve keşif/manifest trafiğinin gerçek talep anlamına gelmediğini gösteriyor.
Bu deneyim, ödeme doğrulamasını üçüncü taraf durumlarına (nonce, imza) değil doğrudan zincir üstü para hareketine (Transfer log'u) bağlamanın önemini somutlaştırıyor. Kendi ödeme altyapısını kuran veya x402 benzeri protokolleri entegre eden mühendisler için, "doğrulandı" ile "ödeme alındı"nın aynı şey olmadığını hatırlatan pratik bir vaka çalışması niteliğinde.