EIP-7702: EOA Kod Delegasyonu ve Riskleri
EIP-7702’nin bir EOA’yı dağıtılmış koda nasıl yönlendirdiğini, type-4 yetkilendirmesinin neyi imzaladığını ve hangi yetki ile risklerin inceleneceğini öğrenin.
Bu rehberdeEIP-7702 hesabın yolunu değiştirir, anahtarını değil
Kısa özet
EIP-7702, mevcut bir dışarıdan sahip olunan hesabın (EOA) dağıtılmış koda işaret eden bir gösterge ayarlamasını sağlar. Adres ve anahtar aynı kalır; ancak hesaba gelen çağrılar, hesap yetkisiyle bu kodu çalıştırabilir. Standart sınırlı izin veya güvenlik garantisi vermez. İmzalamadan önce hedef kodu ve onu kimin kontrol ettiğini inceleyin.
EIP-7702 hesabın yolunu değiştirir, anahtarını değil
Sıradan bir EOA işlemleri özel anahtarla imzalar ve kendi adresinde çalıştırılabilir kod bulundurmaz. EIP-7702, hesabın başka bir adreste dağıtılmış koda işaret etmesine ve bu kodun hesap bağlamında çalışmasına izin verir. Kod başka adrestedir; bakiye, adres ve depolama bağlamı delegasyonu yapan hesaba aittir. Bu, yeni bir sözleşme adresine geçiş veya anahtar değişimi değildir.
EIP-7702 belirtimi, type-4 set-code işlemini ve yetkilendirme listesini tanımlar. Ethereum.org Pectra kılavuzu bunu dağıtılmış koda işaretçi olarak açıklar. Cüzdandaki “akıllı hesap” etiketi gerçek doğrulama kurallarını, kurtarma yöntemini veya kullanılan kodu göstermez. Kodu kimin değiştirebileceğini ve varlıklarla depolama üzerinde ne yapabileceğini kontrol edin.
Type-4 işlem ayrı imzalanan bir yetkilendirme listesi taşır
Set-code işlemi 0x04 tür baytıyla tanımlanır. Her yetkilendirme girdisi zincir kimliği, kod adresi, yetki veren hesabın nonce değeri ve imzasını içerir. Yetki sahibi girdiyi, gönderen ise dış işlemi ayrı imzalar; bunlar farklı hesaplar olabilir.
Zincir kimliği genellikle yetkiyi tek zincirle sınırlar. 0 değeri, EIP-7702’yi destekleyen zincirlerde daha geniş kapsam sağlar; ancak başarı garantisi vermez. Nonce ve hesap durumu yine eşleşmelidir. İmza ekranındaki ağ, hesap ve tam hedef adresi güvenilir bir blok gezginiyle karşılaştırın. Ethereum.org işlem belgeleri type-4 yetkilendirme listesini açıklar. Bu mekanizma, akıllı hesap kılavuzundaki ERC-4337 UserOperation ve paymaster’lardan farklıdır.
Delegasyon göstergesi kodu içermez, ona işaret eder
EOA koduna 0xef0100 öneki ve hedef adresinden oluşan gösterge yazılır. İstemci çağrı sırasında bu adresin kodunu yükler; hesap adresi ve çalışan kod adresi farklıdır. Kod mevcut zincirden alınır. Aynı adres başka bir zincirde farklı koda ya da hiç koda sahip olmayabilir.
Delegasyon kodu hesabın yürütme bağlamında çalışır ve depolamasını kullanabilir. Mantığına göre ETH veya token gönderebilir, dış sözleşmeleri çağırabilir ya da depolanan değerleri değiştirebilir. EIP-7702 kendiliğinden “yalnızca bu token” gibi bir sınır koymaz. Hedef bir proxy ise yöneticiyi ve yükseltme yetkisini kontrol edin.
Delegasyon kodu geniş hesap yetkileri kullanabilir
Hatalı doğrulama varlık transferi, token onayı, keyfî dış çağrı veya depolama değişikliğine izin verebilir. EIP güvenlik değerlendirmeleri, tekrar saldırısı korumasını ve hedef, calldata, ETH değeri ile gas koşullarının imzaya bağlanmasını vurgular. Bunlar yoksa sponsor farklı bir çağrı gönderebilir veya işlemin başarısız olmasına yol açabilir.
Hesabın çağırabildiği sözleşmeleri, imza doğrulamasını, acil durum ve yükseltme yetkilerini ve kodun doğrulanmış kaynakla eşleşmesini inceleyin. Denetim rozeti, istekteki tam adres ve sürümün denetlendiğini kanıtlamaz. Birleştirilmiş token onayı ve takas gibi işlemlerde iki çağrıyı da okuyun ve onayı gereken miktarla sınırlayın.
Dış işlemin başarısız olması delegasyonu bırakabilir
EIP-7702, dış işlemin yürütülmesinden önce yetkilendirmeleri işler. Belirtim, yürütme sonradan başarısız olsa veya revert etse bile işlenmiş delegasyon göstergelerinin geri alınmadığını söyler. Bu nedenle başarısız işlem makbuzu, hesabın başlangıç durumuna döndüğü anlamına gelmez. Makbuzu ve hesabın mevcut kodunu ayrı kontrol edin.
Yetkilendirme uygulanıp daha sonraki başlatma çağrısı başarısız olabilir; böylece kurulum tamamlanmadan delegasyon aktif kalır. Yeniden denemeden önce işlem hash’ini, yetki hesabını, nonce değerini ve kod işaretçisini kontrol edin. Nonce değişmişse önceki imza geçersiz olabilir.
Delegasyonu silmek diğer durumları temizlemez
Yeni bir yetkilendirme başka kodu gösterebilir. Null adrese yetkilendirme, delegasyon göstergesini silip hesap kodunu boşaltır. Ancak hesap depolamasını, ERC-20 sözleşmesindeki allowance’ı, tamamlanan transferleri veya dış sözleşme değişikliklerini silmez. Token izinlerini ayrıca kontrol edip iptal edin.
Yeni kod eski depolamayı farklı yorumlayabilir. Değiştirmeden önce depolama düzenini ve geçiş planını inceleyin. Token izinleri için onay ve allowance kılavuzunu okuyun. Anahtar veya kurtarma ifadesi açığa çıktıysa kodu silmek anahtarı kurtarmaz; cüzdan kurtarma kılavuzuna bakın.
İmzalamadan önce zinciri, hedefi ve hata sonrası durumu kontrol edin
Resmî cüzdan belgelerinde seçilen ağ için EIP-7702 desteğini doğrulayın. Zincir kimliğini, hesabı, hedef adresi, doğrulanmış kodu ve proxy yöneticisini kontrol edin. Yetkilendirme imzasını dış işlemin göndericisi ve ücret ödeyeninden ayırın; sponsorluk kodu güvenli yapmaz.
Delegasyon etkinse yalnızca işlem durumuna bakmayın; mevcut göstergeyi ve kod adresini inceleyin. Beklediğinizden farklıysa yeni çağrıları ve onayları durdurun. Gas için Ethereum ücret kılavuzuna, nonce ve bekleyen işlemler için bekleyen işlem kılavuzuna bakın.
Protokol özelliklerini cüzdan vaatlerinden ayırın
EIP-7702, EOA’yı dağıtılmış koda bağlayan işlem biçimini standartlaştırır. Çağrı gruplama, ücret sponsorluğu, oturum izinleri ve kurtarma belirli kod ve hizmetlere bağlıdır. Ethereum Foundation Pectra ana ağ duyurusu, yetkilendirmenin değiştirilebileceğini veya iptal edilebileceğini anlatır; ERC-4337 UserOperation ve paymaster başka bir mekanizmadır.
“Akıllı hesap” etiketi anahtarın kimde olduğunu, kodu kimin yükseltebildiğini veya kurtarmayı kimin değiştirdiğini söylemez. Varlık bulunan hesabı değiştirmeden önce uygulamayı, ayarları ve cüzdan desteğini kontrol edin. Bu rehber mekanikleri açıklar; belirli bir cüzdan veya delegasyonu önermez.
Sık sorulan sorular
Q1EIP-7702 EOA’yı sıradan bir akıllı sözleşme cüzdanına dönüştürür mü?
Hayır. EOA’nın kod çağrılarını devretmesini sağlar; cüzdan politikası, kurtarma veya özel izinler otomatik eklenmez.
Q2Yetkilendirme imzası ile type-4 işlem imzası aynı mıdır?
Hayır. Yetki hesabı hedefi, zincir kimliğini ve nonce’u; gönderici ise dış işlemi ayrı imzalar.
Q3Delegasyonu silmek token onaylarını iptal eder mi?
Hayır. Token sözleşmesi allowance’ı ayrı saklar. Onayları token sözleşmesi veya güvenilir bir cüzdan akışı üzerinden kontrol edip iptal edin.
Q4Delegasyon hedefinde neyi kontrol etmeliyim?
Mevcut zincirdeki tam adresi ve kodu, doğrulanmış kaynağı, yükseltme yöneticisini ve varlıklar ile hesap depolaması üzerindeki izinleri kontrol edin.
Kaynaklar ve daha fazla okuma
Sorun bildir
Bu makalenin bağlantısını içeren bir e-posta hazırlayacağız. Mark bildirimi yalnızca gönderdiğinizde alır
Hızlı kontrol
Rehberi okudunuz mu? 3 soruyla kendinizi kontrol edin
Soru 01
Geçerli yetkilendirme işlendikten sonra dış yürütme başarısız olursa ne olabilir?
Açıklamayı görmek için bir yanıt seçin
Opsiyon sözlüğü
Kullanım bildiriminden sonra sözleşmeyi yerine getirme yükümlülüğünün opsiyon satıcısına dağıtılması ve hisse teslimi veya alımı oluşturabilmesi sürecidir.
Ayrıntılı rehberi okualış-satış farkıBir sözleşmenin en iyi alış ve satış teklifleri arasındaki farktır. Pozisyona girip çıkmanın örtük maliyetini temsil eder ve likidite azaldığında genişleyebilir.
Ayrıntılı rehberi oku0DTEAn option that expires on the current trading day; little time remains for the thesis to work, while gamma and execution risk can change quickly.
Ayrıntılı rehberi oku