Smart Gas ile Tanışın: Tangem Wallet’ta Ağ Ücretlerini Stablecoin ile
Smart gas işlemleri artık Tangem Wallet’ta Ethereum, BNB Smart Chain, Polygon, Arbitrum One ve Base üzerinde kullanılabilir.
Merkezi borsalardan öz saklama cüzdanlarına geçen kullanıcılar, genellikle aynı engelle karşılaşıyor: Tokenlarını yeni cüzdanlarına çekiyor, bir işlem yapmak istiyorlar ve işlemin gerçekleşmediğini görüyorlar. Çünkü işlem için ağın yerel para birimiyle (Ethereum’da ETH, BNB Smart Chain’de BNB, Polygon’da MATIC) gas ücreti ödemeleri gerekiyor ve ellerinde bu tokenlardan hiç yok.
Bu küçük bir rahatsızlık değil. Kullanıcı, sadece kendi varlıklarını hareket ettirmek için bile az miktarda yerel token edinmek zorunda kalıyor. Bunun için küçük tutarlı alımları destekleyen bir borsa bulmak, gerekenden fazla çekim ücreti ödemek veya bir faucet ya da tanıdık bulup gerekli miktarı almak gerekiyor. Özellikle öz saklama konusunda yeni olan birçok kullanıcı, bu noktada vazgeçiyor.
Bu engeli tamamen ortadan kaldırmak için smart gas işlemlerini entegre ediyoruz.
Smart gas ödemesi nedir?
Smart gas ödemesi, kullanıcıların ağ ücretlerini yerel token yerine popüler stablecoin’lerle ödemesine olanak tanır. Desteklenen bir ağda USDC veya USDT bakiyeniz varsa, işlem ücretini doğrudan bu stablecoin ile karşılayabilirsiniz.
Örnek: Alice, Coinbase’den 100 USDT’yi Ethereum ağında Tangem Wallet’ına çekiyor. 50 USDT’yi Bob’a göndermek istiyor fakat Tangem’de gas ücreti ödemek için ETH’si yok. Smart gas işlemleriyle uygulama, Alice’in USDT bakiyesini algılıyor ve ücreti USDT ile ödemesini teklif ediyor. Alice onaylayıp işlemi imzalıyor, 50 USDT Bob’a gönderiliyor ve yaklaşık 0,80 USDT ağ ücreti olarak kesiliyor. Alice’in ETH edinmesine hiç gerek kalmıyor.
Desteklenen ağlar ve tokenlar
Smart gas işlemleri, EIP-7702 (Pectra yükseltmesi) uygulanmış büyük EVM ağlarında kullanılabilir. Ücret tokenlarını likidite, öngörülebilir transfer gas maliyeti ve yaygın kullanım esasına göre seçtik; ağırlıklı olarak borsalardan çekim sonrası kullanıcıların elinde bulunma olasılığı yüksek USD’ye endeksli stablecoin’ler tercih edildi.
Ağ | Desteklenen Ücret Tokenları |
|---|---|
Ethereum | USDC, USDT |
BNB Smart Chain | USDC, BSC-USD |
Polygon | USDC, USDT0 |
Arbitrum One | USDC, USDT0 |
Base | USDC |
Smart gas işlemi arka planda nasıl çalışır?
Bu özellik, Mayıs 2025’te Pectra yükseltmesiyle sunulan EIP-7702 (“EOA için Kod Ayarla”) sayesinde mümkün oldu. Bu standart, Ethereum hesaplarının çalışma biçiminde önemli bir evrim anlamına geliyor.
EIP-7702 nasıl çalışır?
Geleneksel olarak Ethereum’da iki hesap türü vardır: Özel anahtarlarla kontrol edilen Externally Owned Account’lar (EOA’lar) ve çalıştırılabilir kod içeren Contract Account’lar. EOA’lar basittir—varlık tutabilir ve işlem imzalayabilirler fakat özel mantık çalıştıramazlar. Contract Account’lar ise keyfi kod çalıştırabilir ama dağıtım gerektirir ve farklı güvenlik özelliklerine sahiptir.
EIP-7702 bu farkı kapatır. EOA’nın, imzalanan bir yetkilendirme mesajıyla geçici olarak bir akıllı kontrat koduna delege olmasına izin verir. Bu yetkilendirme, zincir üstü bir işlem gerektirmez. Kullanıcı sadece bir mesaj imzalar ve bu imza, başka biri tarafından gönderilen bir işleme dahil edilebilir.
Smart gas işlemlerini mümkün kılan da budur: Kullanıcılar, kendi hesaplarına kontrat mantığımızı eklemeye, bu yetkilendirme için gas ücreti ödemeden izin verebilir.
Tangem’in akıllı kontrat uygulaması
Hazır çözümler yerine özel bir akıllı kontrat geliştirdik. İncelediğimiz hazır uygulamalar ya kullanıcılar için daha pahalıydı (gereksiz yük nedeniyle) ya da kullanım amacımıza fayda sağlamayan, saldırı yüzeyini genişleten işlevler içeriyordu.
Uygulamamız iki kontrat kullanıyor:
Tangem7702Smart gasExecutor
Bu, kullanıcının EOA’sı tarafından delege edilen kontrattır. Görevleri:
- Signature verification — Smart gas işlem parametrelerinin hesap sahibi tarafından EIP-712 ile imzalandığını doğrular
- Transaction execution — Kullanıcının hedeflediği işlemi gerçekleştirir (ör. token transferi)
- Fee compensation — Gerçekleşen gas tüketimini hesaplar ve uygun ücret token miktarını ücret alıcısına aktarır
Kontrat, tekrar oynatma koruması için yalnızca bir nonce tutar. Depolama düzeni, kullanıcı hesabına başka bir kontrat eklerse çakışmayı önlemek için Solidity’nin özel depolama düzeni özelliğiyle ayarlanmıştır.
// Core data structures
struct Transaction {
address to;
uint value;
bytes data;
}
struct Fee {
address feeToken; // Token used for fee payment
uint maxTokenFee; // Maximum fee in token units
uint coinPriceInToken; // Native currency price in token
uint feeTransferGasLimit; // Gas limit for fee transfer
uint baseGas; // Fixed overhead (signature verification, nonce update)
address feeReceiver; // Fee collection address
}
struct Smart gasTransaction {
Transaction transaction;
Fee fee;
uint nonce; // From user's contract storage
}Temel sabitler:
- BASE_GAS = 60.000 — İmza doğrulama, nonce güncelleme ve yürütme altyapısı için sabit gas yükü
Tangem7702EntryPoint: Giriş Noktası Kontratı
Ayrıca, smart gas işlemlerinin yürütülmesi için relay arayüzü olarak görev yapan bir Entry Point kontratı dağıttık. Bu kontratın temel görevi, kullanıcı adresine ekli kontrat kodunun beklendiğiyle tam olarak eşleştiğini doğrulamak ve ardından işlemi yürütmeye iletmektir.
function executeTransaction(
Smart gasTransaction calldata gasslessTx,
bytes calldata signature,
bool forced,
address executor
) externalforced parametresi, ücret transferi için harcanan gas’in feeTransferGasLimit’i aşması durumunda davranışı belirler:
- false — İşlemi geri al (gas tahmini sırasında kullanılır)
- true — Olay yayınla ve devam et (gerçek yürütmede, gas zaten harcanmışken kullanılır)
Bu, relay altyapımızı korur. Gerçek gas maliyetini peşin ödediğimiz ve ücret token bakiyesinden tazminat aldığımız için, ekli kontratın tazminatı doğru şekilde hesaplayıp aktaracağından emin olmamız gerekir. Entry Point, yalnızca denetlenen kontrat kodumuzla çalışan hesaplarla etkileşim kurmamızı sağlar.
Ücret parametreleri
Bir smart gas işlemini onayladığınızda, şu bilgileri içeren bir mesaj imzalarsınız:
- Fee token: Ödeme için hangi stablecoin kullanılacak (ör. USDC)
- Token price: Ücret tokenı ile yerel para birimi arasındaki kur, eşdeğer maliyeti hesaplamak için kullanılır
- Maximum fee: Kullanıcının ödemeye razı olduğu üst sınır; Tangem uygulamasında gösterilen budur
- Tekrar oynatma koruması ve işlem detayları için ek parametreler
Maksimum ücret, kullanıcıya maliyet konusunda netlik sağlar. Gerçek ücret, gerçek gas tüketimine göre belirlenir ve genellikle bu üst sınırdan daha düşük olur.
Güvenlik modeli
Mevcut çözümleri değerlendirdik ancak kendi kontratımızı yazmak bilinçli bir güvenlik tercihi oldu. Kontratımız, ücretli token transferi için özel olarak tasarlanmıştır. Sadece bu işleve odaklanır; bu da denetimi ve güvenliğini kolaylaştırır.
Faktör | ERC-4337 | Tangem’in uygulaması |
|---|---|---|
Gas yükü | Daha yüksek (bundler altyapısı) | Daha düşük (doğrudan yürütme) |
Saldırı yüzeyi | Daha geniş (daha fazla işlev) | Minimum (tek amaçlı) |
Depolama çakışma riski | Uygulamaya göre değişir | Özel depolama düzeniyle önlenir |
Yükseltilebilirlik | Genellikle dahil (admin anahtarı riski) | Yükseltilemez |
Denetim
Kontrat, akıllı kontrat güvenliği konusunda uzmanlaşmış blockchain güvenlik firması Pessimistic tarafından denetlendi. Tam denetim raporuna GitHub üzerinden ulaşabilirsiniz.
Kullanıcı deneyimi
Teknik karmaşıklığa rağmen, kullanıcı tarafında deneyim oldukça basittir:
- Desteklenen bir ağda işlem başlatırsınız (gönderme, takas, takasla gönderme)
- Desteklenen bir stablecoin bakiyeniz varsa, uygulama ücretleri o token ile ödemenizi teklif eder
- Stablecoin cinsinden maksimum ücreti görüp işlemi onaylarsınız
- Arka planda: Hem EIP-7702 yetkilendirmesini (Tangem’in akıllı kontratını hesabınıza ekler) hem de smart gas işlem parametrelerini imzalarsınız
- Bu imzalı paket arka uca gönderilir ve işlem ağa iletilir
- İşlem gerçekleşir ve ücret stablecoin bakiyenizden düşülür
Sizin açınızdan bakıldığında, bu sadece normal bir işlem gibi; tek farkı, işlemi yapmak için yerel coin’e ihtiyaç duymamanızdır.
Sınırlamalar ve dikkat edilmesi gerekenler
Smart gas işlemleri şu anda bu makalede listelenen stablecoin’lerle çalışıyor. Bunlar likidite, benimsenme ve teknik uyumluluk esasına göre seçildi. Diğer sınırlamalar şunlardır:
- Ücret primi: Smart gas işlemleri, ek kontrat yürütme yükü ve token fiyatı dönüştürme ihtiyacı nedeniyle yerel gas ödemelerine göre biraz daha pahalı olabilir. Kontratımızı bu primi en aza indirecek şekilde optimize ettik.
- Ağ desteği: EIP-7702 yalnızca Pectra yükseltmesini uygulayan ağlarda kullanılabilir. Hem EIP-7702 desteği hem de stablecoin likiditesi olan ağlarda bu özelliği etkinleştirdik.
Sonuç
Smart gas işlemleri, öz saklama deneyimindeki en kalıcı sürtünme noktalarından birini ortadan kaldırıyor. EIP-7702’den yararlanarak, kullanıcıların yalnızca ellerindeki tokenlarla işlem yapmalarını sağladık.
Borsalardan gelen kullanıcılar için bu, çekilen tokenların anında kullanılabilir olması anlamına geliyor. Daha geniş ekosistem için ise, kullanıcıların kendi paralarını hareket ettirmeden önce gas mekaniklerini öğrenmesini zorunlu kılmayan, kullanıcı dostu bir kripto altyapısına doğru atılmış önemli bir adım.