Ethereum EIP-7702: hesap soyutlama yeni dönemi EOA'ya akıllı sözleşme yetenekleri kazandırıyor

Ethereum hesap soyutlama alanının geçmişi ve geleceği üzerine derinlemesine bir analiz

Giriş

Bu makale iki ana modüle ayrılmıştır:

Üst kısım, 2015'teki ilk AA önerisinden başlayarak, bugüne kadar olan EIP önerilerinin ana içeriklerini sistematik bir şekilde incelemekte, AA tarihsel önerilerinin evrim sürecini tartışmakta ve her bir önerinin avantaj ve dezavantajlarını kapsamlı bir şekilde değerlendirmektedir.

Alt kısımda, EIP4337'nin piyasada karşılaştığı soğuk tepkilere odaklanarak karşılaştırma yapılmakta; Ethereum'un bir sonraki sürüm güncellemesine dahil edilmesi beklenen EIP7702'yi derinlemesine analiz edilmektedir. Bu öneri birleştirildiğinde, zincir üzerindeki uygulama biçimini tamamen değiştirecektir.

EIP-7702 devrim niteliğinde bir anlam taşıyor, gelin bunu detaylı bir şekilde inceleyelim.

1. Hesap soyutlamanın arka planı

1.1 Hesap soyutlamanın anlamı

Ethereum kurucusu Vitalik, 2023 yılının sonunda ETH yol haritasını bir kez daha güncelledi, ancak hesap soyutlamasının konumunu değiştirmedi. Şu anda ana akım model EIP-4337'den "isteğe bağlı EOA hesap dönüşümü" aşamasına geçiyor.

EIP4337'nin piyasaya sürülmesinin üzerinden bir yıldan fazla bir süre geçtikten sonra (, 2023 yılının 1 Mart tarihinde Denver'da düzenlenen WalletCon'da, Ethereum Vakfı geliştiricileri tarafından tasarlanan ve gerçekleştirilen ERC-4337 çekirdek akıllı sözleşmesi OpenZeppelin tarafından denetlendi ve resmi olarak piyasaya sürüldüğü kabul edildi ), her zaman kullanıcılar tarafından geniş ölçüde tanınmasına rağmen yaygın olarak kullanılmadı. Bu çelişkili piyasa ortamında, EIP-7702'nin ilerlemesi büyük ölçüde hızlandı ve bir sonraki güncellemede birleştirileceği doğrulandı.

1.2 hesap soyutlamanın piyasa durumu

Bir buçuk yıl gelişimden sonra, EIP4337 ana akım zincirlerde yalnızca 12 milyon adrese sahip, bunlardan Ethereum ana ağında yalnızca 6,764 aktif adres var, EOA ve CA adres sayısıyla arasında büyük bir fark var. Ethereum ana ağındaki bağımsız adres sayısı 270 milyon'a ulaştı, bu da EIP4337'nin ana ağda hiçbir somut gelişme göstermediğini söylemek için yeterli.

Ancak bu, AA'nın temel değerini etkilemez. EIP4337'nin tasarım aşamasında, ana ağ ile geriye uyumluluk sorununu çözmenin zor olacağı belliydi. Çeşitli L2'lerin AA'ya yerel olarak entegre edilmesiyle, EIP4337 adres sayısı L2'de patladı; bu arada, Base ve Polygon zincirlerinin Temmuz ayındaki aktif kullanıcı sayısı sırasıyla 1 milyon ve 3 milyon oldu, oldukça dikkate değer.

Bu nedenle, EIP4337 tasarımında bir hata yoktur, birçok avantajı vardır. Mevcut durum, ana ağ ile L2 arasındaki farklılıklardan kaynaklanmaktadır; her birinin kendine uygun çözümlere ihtiyacı vardır.

Ethereum hesap soyutlama alanının geçmişi ve geleceği üzerine derinlemesine analiz

2. Hesap soyutlama nedir?

Hesap soyutlama esasen mülkiyet ayrımı sorununu çözer.

EVM mimarisinde iki tür hesap vardır: dış hesap ( EOA ) ve sözleşme hesabı ( Contract Account ). Dış hesabın mülkiyeti ve imza yetkisi aynı varlık tarafından tutulur. Özel anahtara sahip olan kişi, yalnızca hesabın "mülkiyetine" sahip değil, aynı zamanda "tüm varlıkların transferini imzalama" yetkisine de sahiptir.

Bu, Ethereum hesaplarının işlem yapısına bağlıdır. Standart işlemlerde aslında From alanı yoktur, fon transferi VRS parametresi ( kullanıcı imzası ile ) üzerinden tersine çözülerek From adresi elde edilir. Bu, ECDSA gibi asimetrik şifreleme, tek yönlü eşik fonksiyonları gibi kavramları içerir ve güvenliği kriptografi ile sağlarken, aynı zamanda günümüzde EOA adreslerinin mülkiyet birleşimi sorununa da yol açmıştır.

EIP4337'nin temel etkisi, işlem alanına Gönderen Adresi ekleyerek özel anahtarı işlem yapılan adresten ayırmaktır.

Mülkiyet ayrımının önemli olmasının nedeni, dış hesap (EOA) tasarımının daha fazla sorunu ortaya çıkarmasıdır:

  1. Özel anahtarın korunması zordur: özel anahtarın kaybı tüm varlıkların kaybı anlamına gelir.
  2. İmza algoritması tek: Yerel protokol, işlemleri doğrulamak için yalnızca ECDSA algoritmasını kullanabilir.
  3. İmza yetkisi fazla yüksek: Yerel çoklu imza yok, tek imza ile herhangi bir işlem yapılabilir.
  4. İşlem ücreti yalnızca ETH ile ödenebilir, toplu işlemler desteklenmemektedir.
  5. İşlem gizliliği ihlali: Tekil işlemler, hesap sahiplerinin gizlilik bilgilerini analiz etmeyi kolaylaştırır.

Bu sınırlamalar, sıradan kullanıcıların Ethereum'u kullanmasını zorlaştırıyor:

Öncelikle, herhangi bir Ethereum uygulamasını kullanmak için ETH bulundurmanız ve fiyat dalgalanma riskini üstlenmeniz gerekmektedir.

İkincisi, kullanıcılar karmaşık ücret mantıklarıyla başa çıkmak zorundadır; Gas price, Gas limit, işlem tıkanıklığı (Nonce sıralaması ) gibi kavramlar çok karmaşıktır.

Sonuç olarak, birçok blok zinciri cüzdanı veya uygulaması kullanıcı deneyimini artırmak için ürün optimizasyonu yapmaya çalışmasına rağmen, pratikte etkisi çok azdır.

Bu nedenle, çözüm yolu hesap soyutlamasını gerçekleştirmek, mülkiyet (Owner) ve imza yetkisini (Signer) ayrıştırarak yukarıdaki sorunları tek tek çözmektir.

Tarihsel olarak birçok plan vardı, sonunda iki yol üzerinde toplandı.

Ethereum hesap soyutlama alanının geçmişi ve geleceğine derin bir bakış

3. AA tarihsel öneri bağlamının incelenmesi

Sorun çözümünün birçok EIP önerisi olduğu görünse de, nihayetinde sadece iki temel düşünce vardır. Her bir geçmeyen EIP ile ilgili sorunlar, mevcut çözümün kırılma noktalarında birikmiştir.

3.1 İlk yol: EOA adresini CA adresine dönüştürmek

15 Kasım 2015'te, Vitalik EIP-101'de hesaplar için yeni bir yapı olarak sözleşmeleri önerdi. Adresi sadece kod ve depolama alanı olarak değiştirdi, işlem ücretlerini ERC20 ödemelerini destekleyecek şekilde değiştirdi, yerel token'ları ERC20 türünde bakiye (, otomatik kesinti yetkisi gibi işlevlere sahip olacak şekilde önceden derlenmiş sözleşmeler aracılığıyla değiştirdi ), işlem alanlarını ise to, startgas, data ve code ile sadeleştirdi.

Bu, büyük bir sıçrama tarzı bir dönüşüm; temel tasarımı önemli ölçüde değiştirecek ve her hesap adresinin kendi "kod" mantığına sahip olmasını sağlayacak. ( tam olarak şimdi EIP-7702'nin gerçekleştirmek istediği etki. ).

Diğer işlevler türetilebilir, örneğin:

  1. Daha fazla kripto algoritması kullanarak işlemler, her adresin içindeki Code tarafından belirlenen imza doğrulama yöntemini sağlıyor.
  2. Kuantum saldırılarına karşı dayanıklılık özelliklerine sahip, kodu güncellenebilir
  3. Eter, ERC20 sözleşmesiyle aynı işlevselliğe sahiptir, temel etkileri arasında yetki alma ve yerel para birimi kaybı olmaksızın işlem yapma bulunmaktadır.
  4. Hesap özelleştirme alanını artırın, sosyal kurtarma, SBT desteği, anahtar geri alma gibi özelliklerle uyumlu hale getirin.

Devam etmeme nedeni çok basit, adımlar çok büyük, mevcut işlem hash çakışma sorununa ve güvenlik risklerine yeterince dikkat edilmediği için askıya alındı, ancak her bir avantaj fikri, sonraki EIP4337 ve EIP7702'nin temel işlevlerinden biri haline geldi.

Daha sonra bu mantığı geliştirmeye çalışan bir dizi EIP daha oldu:

EIP-859: ana zincir hesap soyutlama(2018-01-30)

Code dağıtım sorununu çözmeye çalışırken, temel işlevi, eğer işlem tarafının akıllı sözleşmesi dağıtılmamışsa, işlemle birlikte gelen code parametresini kullanarak akıllı sözleşme cüzdanını dağıtmaktır. Ayrıca, gas ödemesinin yanı sıra, işlem parametreleri içindeki doğrulama kısmı ile yürütme kısmı arasında bir ayırıcı olarak yeni bir PAYGAS opcode'u da önerilmiştir.

O zaman sonuçsuz kalsa da, şimdi EIP7702'nin temel mantıklarından biri haline geldi. EIP7702, her bir işlemi özel işlem yapısıyla birleştirerek, EOA adresinin bu işlemde sözleşme yeteneklerine sahip olmasını sağlamak için belirli bir kod eklenmesine izin verir.

EIP-7702: EOA hesap kodu ayarlama (2024-05-07)

Bu, bu makalenin sonraki tartışma mekanizmasının temel EIP'sidir, Vitalik tarafından EIP-3074'ün alternatif çözümü olarak yayınlanmıştır. Bu nedenle EIP-3074 kullanılmaktan kaldırılmıştır, EIP-7702'nin yaklaşan ETH Prague/Electra(Pectra) sert hard fork'unda dahil edilmesi belirlenmiştir.

3.2 İkinci yol: EOA adresinin CA adresini sürdürmesine izin ver

EIP-3074: AUTH ve AUTHCALL işlem kodlarını ekle (2020-10-15)

EVM'ye iki yeni OpCode eklemek: AUTH ve AUTHCALL, EOA'nın bu iki opcode aracılığıyla sözleşmelere EOA kimliği yerine başka sözleşmeleri çağırma yetkisi vermesini sağlar.

Özetle, EOA, imzalanmış mesajları ( ile birlikte güvenilir bir sözleşmeye ) gönderebilir ve buna Invoker ( denir. Bu Invoker sözleşmesi, EOA yerine AUTH ve AUTHCALL opcode'larını kullanarak işlem yapabilir.

EIP-4337: İşlem havuzunda hesap soyutlaması )2021-09-29(

MEV'den ilham alınarak tasarlandı, temel değeri konsensüs katmanı protokol değişikliklerini tamamen önlemektir.

EIP4337, kullanıcıların bu nesneyi bellek havuzuna göndermesi için yeni bir işlem nesnesi olan UserOperation'ı öneriyor. Bundler'lar, madenci boyutundan toplu olarak paketleyip sözleşme yürütme işlemlerini teslim ediyorlar. Temel olarak, alt seviye işlemleri ve hesap işlemlerini sözleşme düzeyinde yürütme aşamasına getiriyor.

EIP-5189: Teminatçı aracılığıyla hesap soyutlaması )2022-06-29(

EIP4337 mantığını optimize etti, kötü niyetli Bundler'ları önlemek için para cezası destekleyici mekanizması kurarak DoS engelleme saldırılarına karşı.

) 3.3 Diğer AA destekleyen öneriler

EIP-2718: Yeni işlem türü kabı ###2020-06-13(

Final hale gelmiş teklif, gelecekte eklenmesi planlanan yeni işlem türü için bir zarf olarak yeni işlem türünü tanımlar.

Sonuç olarak, yeni işlem türleri getirildiğinde, belirli bir kodlama ile ayırt edilerek sadece geriye dönük uyumluluk sağlanması gerektiği, ileriye dönük uyumluluğa gerek olmadığı görülmektedir. En yaygın örnek EIP1559'dur; işlem ücretlerini ayırt eder, yeni işlem türü kodlaması kullanır ve başlangıçtaki legacy işlem türlerini etkilemez.

EIP-3607: EOA adreslerini sözleşme dağıtımına kapatır )2021-06-10(

AA yolundaki ek çözüm, sözleşme dağıtım adresi ile EOA adresi arasındaki çakışmayı önlemektir. Sözleşme oluşturma yöntemini kontrol eder, sistem kodun zaten EOA adresi olan bir adrese dağıtılmasına izin vermez. Bu risk çok düşüktür, Ethereum adresi 160 bit uzunluğundadır, belirli bir sözleşme adresi anahtarını çarpışma yöntemiyle elde etme imkanı olmasına rağmen, Bitcoin'in tüm hesaplama gücü ile tahmin edilmesi bir yıl sürecektir.

) 3.4 Hesap soyutlama gelişim süreci nasıl anlaşılmalıdır?

Öncelikle CA'ya dönüştürmenin değerini anlamak gerekir.

Temelde EIP-4337'nin gerçek etkisi, şunları gerçekleştirmek için mümkündür:

  1. İstediğiniz token ile gas ödemesi
  2. Toplu işlemler
  3. İmza programlanabilirliği
  4. Cüzdan mantığı güncellenebilir
  5. Çoklu İmza ve Sosyal Kurtarma
  6. gas olmadan işlem
  7. Programlanabilir gaz ödemesi

Ancak, EIP-4337'nin temel dezavantajı insan doğası motivasyon ilkesine aykırı olmasıdır.

Görünüşte daha iyi, ancak piyasa gelişiminde bir kısır döngüye sıkışmış durumda. Birçok Dapp uyumsuz, kullanıcılar CA adresi kullanmak istemiyor, CA kullanmanın hatta daha yüksek işlem maliyetleri var ### normal transfer senaryolarında, işlem ücretleri iki katına çıkıyor (, Dapp'in kendisinin uyumluluğuna çok bağımlı.

Bu nedenle Ethereum ana ağında bugüne kadar yaygınlaşmamıştır.

Maliyet, kullanıcıların en önemli ölçütüdür, maliyetlerin düşürülmesi gerekmektedir.

Ama gerçek anlamda GAS'ı azaltmak için, Ethereum'un kendisinin bir yumuşak çatal yükseltmesi yapılması, GAS hesaplamasını veya opcode GAS tüketimi gibi modülleri değiştirmesi gerekiyor. Eğer yumuşak çatal düşünülüyorsa, neden doğrudan EIP-7702'yi değerlendirmiyoruz?

![Ethereum hesap soyutlama alanının geçmişi ve geleceği üzerine derinlemesine inceleme])https://img-cdn.gateio.im/webp-social/moments-3503a168bb61430839419efb40e130de.webp(

4. EIP-7702'nin Kapsamlı Analizi

) 4.1 EIP-7702 nedir

Yeni işlem türleri ile ayrım yaparak, EOA'nın tek bir işlemde geçici olarak akıllı sözleşme işlevselliğine sahip olmasına izin vererek, iş anlamında toplu işlemleri, gazsız işlemleri ve özelleştirilmiş yetki yönetimini destekleyerek, yeni EVM opCode###'in geriye dönük uyumluluğu etkilemesine gerek kalmadan.

Kullanıcıların akıllı sözleşme dağıtmadan, çoğu AA yeteneğini elde etmelerini sağlar; hatta üçüncü tarafların kullanıcı adına işlem başlatma yeteneği sunar ve kullanıcıdan özel anahtar sağlamasını gerektirmez, yalnızca imza yetkilendirme bilgisi yeterlidir.

( 4.2 veri yapısı

Yeni işlem türü 0x04'ü tanımlayın, bu işlem türü TransactionPayload aşağıdaki içeriğin RLP kodlama serileştirme sonucudur:

rlp)[chain_id, nonce, max_priority_fee_per_gas, max_fee_per_gas, gas_limit, destination, value, data, access_list, authorization_list, signature_y_parity, signature_r, signature_s]###

Önemli olan, imzalayanların EOA'sında gerçekleştirmek istedikleri kodları saklayan yeni authorization_list nesnesinin eklenmesidir. Kullanıcı, işlemi imzalarken aynı zamanda gerçekleştirilmesi gereken sözleşme kodunu da imzalar; bu, bir iki boyutlu liste olarak mevcuttur ve birden fazla işlem bilgisinin toplu olarak saklanabileceğini belirtir, toplu işlemlerin gerçekleştirilmesine olanak tanır.

authorization_list = [[chain_id, address, nonce, y_parity, r, s], ...]

( 4.3 işlem yaşam döngüsü

)# 4.3.1 Doğrulama Aşaması

İşlem gerçekleştirmenin başlangıç aşamasında, her bir authorization_list için [chain_id, address, nonce, y_parity, r, s] tuple'ı:

  1. İmza r, s kullanarak ecrecover ile imzayı atan kişinin adresini ### Ethereum'un kendine ait mekanizmasından geri almak, bu EIP imza algoritmasını değiştirmemiştir ###.
  2. Zincir ID'sini ( çatallaşma zinciri yeniden oynatmasını doğrulayın ).
  3. authority imzacısının kodunun boş veya ( tarafından devredilip devredilmediğini doğrulayın, işlemin geçerli bir 7702 işlemi olup olmadığını kontrol edin, ardından delegation mekanizması aracılığıyla işlemi ) olarak temsil edin.
  4. authority imzacı nonce('yi doğrulayarak authority imza yeniden oynatma)'ı engelle.
  5. authority imza verici kodunu 0xef0100 olarak ayarlayın || address( EIP3607 çarpışma önleme stratejisini atlayın ).
  6. authority imzacı nonce( ekleyin yerel imza tekrarını önlemek için).
  7. authority imzacı hesabını erişilen adres listesine ekleyin ( sıcak adrese, sorgu depolama gaz ücretlerini azaltın ).

(# 4.3.2 İşlem Aşaması

View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Reward
  • 7
  • Share
Comment
0/400
BlockchainWorkervip
· 16h ago
7702 yine yeni bir şeyler yapmaya geldi, neden güvenilir hissetmiyorum?
View OriginalReply0
LiquidityOraclevip
· 16h ago
7702 önerisi yine bir şeyler yapacak gibi görünüyor.
View OriginalReply0
MetaverseLandladyvip
· 16h ago
Gerçekten 4337'yi övmek mi yeterli? 7702 asıl büyük olan!
View OriginalReply0
FloorSweepervip
· 17h ago
ngmi... 4337 gibi başarısız olacak başka bir abartılmış L1 "inovasyonu"
View OriginalReply0
BlockchainDecodervip
· 17h ago
Araştırma verilerine göre 7702'nin 4337'nin piyasa duraklamasını gerçekten tersine çevirip çeviremeyeceği henüz test edilmeli.
View OriginalReply0
BearMarketSurvivorvip
· 17h ago
Yine bir short pozisyonlar yükselmesi, köpekler bile oynamıyor.
View OriginalReply0
MEVHunterBearishvip
· 17h ago
4337'nin henüz popülerleşmeden yerini kaybedeceğini hissediyorum.
View OriginalReply0
Trade Crypto Anywhere Anytime
qrCode
Scan to download Gate app
Community
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)