EIP-7702

Sarežģītākas tēmas

Kas ir EIP-7702?

EIP-7702 ir priekšlikums, kas izstrādāts ar mērķi uzlabot ārēji piederošo kontu (EOA) funkcionalitāti. EOA ir pamata konti Ethereum tīklā, kuri var sūtīt darījumus un mijiedarboties ar viedajiem līgumiem. Taču tiem trūkst noteiktu funkciju, kas pieejamas dažos kriptovalūtu makos, piemēram, darījumu grupēšana un gāzes sponsorēšana.
EIP-7702 mērķis ir atļaut EOA viena darījuma ietvaros īslaicīgi darboties kā viedā līguma kontiem, ieviešot funkcijas, kas parasti ir pieejamas tikai viedo līgumu makiem. EIP-7702 tika izveidots, reaģējot uz ierobežojumiem un kritiku saistībā ar EIP-3074.

Lai gan EIP-7702 pašlaik vēl nav ieviests, tam ir ievērojams atbalsts kopienā, un daudzi uzskata, ka tas varētu aizstāt EIP-3074 priekšlikumu. Ja tā notiks, EIP-7702 varētu tikt ieviests kopā ar Ethereum Pectra jauninājumu 2024. gada nogalē.

Kā darbojas EIP-7702?

EIP-7702 piedāvā jaunu darījumu veidu Ethereum tīklā, ietverot īpašu lauku – contract_code. Tas piešķir EOA noteiktas viedā līguma īpašības uz darījuma norises laiku. Apskatīsim, kā tas darbojas.

Darījuma sagatavošana

Vispirms lietotājs sagatavo darījumu, iekļaujot tajā ierasto informāciju, piemēram, mērķa adresi, gāzes ierobežojumu un jebkādus citus nosūtāmos datus. Papildus laukā contract_code tiek norādīts īpašs viedā līguma kods. Šis kods nosaka viedā līguma funkcionalitāti, kas tiks īslaicīgi piešķirta attiecīgajam EOA.

Autorizācija 

Pēc tam lietotājs paraksta darījumu. Šis paraksts ir būtisks, jo tas autentificē darījumu un ietver autorizācijas sarakstu. Šajā sarakstā ir norādīts contract_code un nosacījumi, saskaņā ar kuriem tas jāizpilda. Būtībā tas verificē un autorizē viedā līguma koda īslaicīgu piešķiršanu attiecīgajam EOA.

Izpilde

Kad darījums tiek iesniegts Ethereum tīklā, tas tiek apstrādāts, īslaicīgi piešķirot attiecīgajam EOA norādīto contract_code. Šajā posmā darījums tiek apstrādāts tā, it kā EOA būtu viedais līgums, izmantojot funkcionalitāti, ko nodrošina contract_code.

Stāvokļa atjaunošana

Pēc darījuma pabeigšanas Ethereum tīkls automātiski noņem EOC īslaicīgi piešķirto contract_code. EOA atgriežas sākotnējā stāvoklī, zaudējot viedā līguma funkcionalitāti.

Piegādes analoģija

Iztēlosimies, ka Kārlis ir piegādes autovadītājs ar parastu automašīnu, kas var pārvadāt tikai nelielus sūtījumus. Kādu dienu Kārlis saņem pieprasījumu piegādāt lielāku sūtījumu. Tā vietā, lai atteiktu piegādi, Kārlis nolemj iznomāt papildu kravas kasti, ko pievienot savai automašīnai. Viņš piegādā sūtījumu un atgriež kravas kasti nomas veikalā, atgriežoties pie savas parastās automašīnas.

Šajā analoģijā:

  • Parastā automašīna ir EOA.

  • Pagaidu kravas kaste ir contract_code, kas nodrošina papildu funkcionalitāti.
  • Piegādes brauciens ir darījums.

  • Kravas kastes īre un atgriešana atspoguļo contract_code pagaidu raksturu, jo tas ir aktīvs tikai darījuma laikā.

EIP-7702 priekšrocības

Drošības

Automātiski noņemot pagaidu līguma kodu pēc darījuma izpildes, EIP-7702 samazina neatļautu darbību risku. Tas nodrošina, ka uzlabojumi ir aktīvi tikai darījuma izpildes laikā, ierobežojot iespējamo ievainojamību.

Elastīgums

EIP-7702 varētu noderēt dažādiem mērķiem, piemēram, darījumu grupēšanai, apvienojot vairākas darbības vienā darījumā. Tas nodrošinātu arī gāzes sponsorēšanas iespējas, ļaujot vienam kontam samaksāt par cita konta darījumu komisijas maksām.

Viedā maka izmantošana

Piešķirot EOA iespēju īslaicīgi darboties kā viedajiem līgumiem, EIP-7702 varētu veicināt viedo maku funkciju izmantošanu bez drošības riskiem, kas saistīti ar neatgriezeniskām EOA izmaiņām.

Secinājums

EIP-7702 ir priekšlikums, kas risina EOA ierobežojumus, īslaicīgi piešķirot tiem viedo līgumu funkcionalitāti. Tas var uzlabot drošību, aktivizējot viedo līgumu funkcionalitāti tikai uz viena darījuma izpildes laiku. Tas var arī nodrošināt lielāku elastību, izmantojot darījumu grupēšanu, gāzes sponsorēšanu un citas funkcijas.

Lai gan tā nākotne vēl nav skaidri noteikta, pārliecinošais EIP-7702 atbalsts liecina par lielu iespējamību, ka tas tiks iekļauts gaidāmajā Ethereum Pectra jauninājumā 2024. gada nogalē.