Ethereum Foundation tutkii transaktioassertioita, joiden avulla käyttäjät voisivat liittää transaktioon täytäntöönpanokelpoisia ehtoja sen lopulliselle lopputulokselle sen sijaan, että he luottaisivat vain pyydetyn toiminnon hyväksymiseen. Tutkimus on osa säätiön Trillion Dollar Security -aloitetta, ja siinä pyritään korjaamaan transaktioiden turvallisuuteen liittyvä puute: kelvollinen allekirjoitus ei takaa, että sen seurauksena syntyvät saldot, käyttöoikeudet tai tilin hallinta vastaavat allekirjoittajan aikomusta.
Keskeiset huomiot
- Ehdotetut tarkistukset arvioisivat transaktion tuloksia suorituksen aikana ja peruisivat toimet, jotka rikkovat allekirjoitettua sääntöä.
- Suojaus riippuu säännöistä, jotka hyväksytään riippumattomasti mahdollisesti vaarantuneesta transaktion muodostajasta.
- Tutkimus voisi tukea lompakoiden turvallisuuskäytäntöjä, delegoituja agentteja ja ratkaisijoiden työnkulkuja, mutta kyse ei ole ilmoitetusta käyttöönotosta.
Sisällysluettelo
- Miksi transaktion hyväksyminen voi silti johtaa tappioon
- Miten transaktioassertiot tarkistaisivat lopputuloksen
- Mitä ehdotettu toteutus toisi tarkasteltavaksi
- Mitä muutoksia lompakoissa ja protokollissa tarvittaisiin
- Mitä agentit ja ratkaisijoiden työnkulut voisivat hyötyä
- Yhteenveto
Miksi transaktion hyväksyminen voi silti johtaa tappioon
Ethereum suorittaa käyttäjän valtuuttaman pyynnön sen koodin ja tilan perusteella, jotka ovat käytettävissä suoritushetkellä. Nämä olosuhteet voivat poiketa siitä, mitä käyttäjä tarkasteli. Esimerkiksi välityspalvelimen toteutus voi muuttua ennen suoritusta, ja transaktioiden järjestys voi vaikuttaa vaihtoon sovellettavaan hintaan.
Säätiö erottaa toisistaan harhaanjohtavat pyynnöt ja ei-toivotut lopputulokset. Bybitin ja BadgerDAO:n hyökkäyksissä vaarantuneet käyttöliittymät esittivät allekirjoituspyyntöjä, jotka poikkesivat siitä, mitä käyttäjät uskoivat hyväksyvänsä. Sen sijaan oikein esitetty pyyntökin voi sallia taloudellisesti haitallisen lopputuloksen.
Säätiön esimerkki on Aave- ja CoW-vakuusvaihto, jossa oli mukana noin 50,4 miljoonaa aEthUSDT:tä. AAVEn vähäinen likviditeetti ja CoW:n kaasuraja jättivät vahvistetuksi tarjoukseksi noin 329 aEthAAVE:tä. Vaikka käyttöliittymässä näytettiin 99,9 prosentin hintavaikutusvaroitus ja vahvistettiin, että koko arvo voitiin menettää, käyttäjä allekirjoitti transaktion ja sai tokeneita, joiden arvo oli noin 36 000 dollaria.
Tämä ero selittää, miksi paremmat transaktiokuvaukset eivät yksin riitä. Clear Signing auttaa käyttäjiä ymmärtämään pyydetyn toiminnon. Simulointi arvioi vaikutuksia valitun ketjun tilan perusteella. Kumpikaan ei yksin aseta riippumatonta ehtoa toteutuneelle lopputulokselle.
| Kohta | Tiedot |
|---|---|
| TXTRACE | Luettelee transaktion nettomääräiset tilamuutokset ja lähettämät tapahtumat. |
| TXDIFF | Hakee määritettyjen osoitteiden ja tallennuspaikkojen alku- ja loppuarvot. |
| EVENTDATACOPY | Kopioi tapahtuman tiedot muistiin tarkasteltavaksi. |
| Käyttöönottoa koskevat tiedot | Ehdotetut tilamuutostiedot sisältävät uudet käyttöönotetut sopimukset ja niiden kooditiivisteet. |
Miten transaktioassertiot tarkistaisivat lopputuloksen
Assertio vertaisi transaktion alkutilaa ja lopputilaa vain lukuun tarkoitetulla logiikalla sen jälkeen, kun transaktion toimet on suoritettu. Ehto sisällytettäisiin transaktioon ja allekirjoitettaisiin yhdessä toimien kanssa. Jos ehto ei täyttyisi, toimet peruttaisiin.
Mahdollisia sääntöjä ovat esimerkiksi vähimmäismäärä vastaanotettavaa omaisuutta, kulutusraja, uusien tokenien hyväksyntöjen rajoitukset tai tilin hallintalogiikan säilyttäminen. Ehdotettu tarkastusominaisuus ulottuu saldojen lisäksi tallennustietoihin, koodiin, uusiin käyttöönotettuihin sopimuksiin ja lähetettyihin tapahtumiin.
Nykyiset sopimustarkistukset suojaavat jo tiettyjä lopputuloksia. Uniswap voi hylätä vaihdot, joiden tuotto alittaa määritetyn vähimmäismäärän, ja Safe-vartija voi tarkastaa tilan suorituksen jälkeen. Rajoituksena on näkyvyys: tällaisten tarkistusten on ennakoitava, mitä tarkastellaan, ja ne riippuvat yleensä muiden sopimusten tarjoamista rajapinnoista. Esimerkiksi välityspalvelimen ei tarvitse tarjota toimintoa, joka paljastaa sen toteutusosoitteen.
Natiivien assertioiden avulla transaktion kaikki nettovaikutukset olisivat tarkistettavissa, myös sellaiset muutokset, joita tavallinen vartija ei ehkä osaisi etsiä. Laajempi näkyvyys on kuitenkin hyödyllistä vain, jos sääntöön voi luottaa. Haitallinen käyttöliittymä voisi toimittaa ehdon, joka sallii sen oman hyökkäyksen, joten käytännön on perustuttava erikseen hyväksyttyyn aikomukseen, tilin käytäntöön tai suojattuun protokollalogiikkaan.
Mitä ehdotettu toteutus toisi tarkasteltavaksi
Ethereum Foundationin ilmoituksessa natiiveista transaktioassertioista EIP-7906 kuvataan mahdolliseksi toteutustavaksi, ei vahvistetuksi suunnitelmaksi. Se perustuu EIP-8141:n kehystransaktioihin, joissa validointi- ja toimintavaiheet järjestetään peräkkäiseksi kokonaisuudeksi. EIP-8141 on aikataulutettu Hegotá-päivitykseen; EIP-7906 on edennyt tilaan Considered for Inclusion, mutta sitä ei ole vahvistettu kyseiseen päivitykseen.
Tässä lähestymistavassa vain lukuun tarkoitettu POST_TX-kehys tarkastelisi tuloksia suorituksen lopussa. Ehdotetut tiedonsaantiohjeet toimisivat vain kyseisen kehyksen sisällä, eivät koko EVM:ssä.
Tiedot kuvaisivat nettovaikutuksia, eivät jokaisen välivaiheen kirjoitusten historiaa. Useita kertoja muutettu tallennuspaikka näkyisi alku- ja loppuarvoineen; alkuperäiseen arvoonsa palautettu tallennuspaikka ei näkyisi. Siksi on tärkeää erottaa lopputilan valvonta suorituksen jokaisen vaiheen seuraamisesta.
Jos tarkistus epäonnistuisi, suorituksen runko peruttaisiin, mutta transaktio jäisi lohkoon epäonnistuneena. Kaasun maksaja maksaisi edelleen kulutetusta kaasusta, mikä estäisi tarkoituksella epäonnistuvia transaktioita teettämästä muodostajilla ilmaista suoritustyötä.
Mitä muutoksia lompakoissa ja protokollissa tarvittaisiin
Ehdotus tarjoaa tarkistusmekanismin, ei automaattista velvoitetta käyttää sitä. Käyttäjän transaktioissa lompakon olisi sisällytettävä sen turvallisuuskäytäntö transaktion muodostukseen sen sijaan, että muodostaja voisi jättää sen pois. Käytäntö voisi perustua lompakon omaan simulointiin tai olla voimassa tilin pysyvänä sääntönä.
Protokollien osalta suojaus olisi sisällytettävä suojattuun toimintoon pääsyn ehtoihin. Assertioita tukevan transaktion toimittaminen ei riittäisi: kutsun olisi sisällettävä protokollan vaatima tietty tarkistus. Tämä muuttaisi kutsujien integraatiovaatimuksia, eikä jo käyttöönotettuihin muuttumattomiin sopimuksiin voisi jälkikäteen lisätä tällaista pääsytarkistusta.
Nämä riippuvuudet erottavat mahdollisesti tehokkaan EVM-ominaisuuden käyttäjälle annettavasta suojatakuusta. Tehokas suojaus edellyttäisi sekä luotettavaa ehtoa että ohjelmistoa, joka varmistaa johdonmukaisesti, ettei ehtoa voida kiertää.
Mitä agentit ja ratkaisijoiden työnkulut voisivat hyötyä
Delegoitujen agenttien toimintaa voitaisiin rajoittaa sekä lopputulosten että käyttöoikeuksien perusteella. Rajoituksia siihen, mitä sopimuksia agentti saa käyttää tai kuinka paljon se voi kuluttaa, voitaisiin täydentää vaatimuksilla siitä, mitä kukin transaktio jättää jälkeensä.
Ratkaisijapohjaisessa suorituksessa protokolla voisi määrittää hyväksyttävän lopputuloksen ja jättää reitin valinnan ratkaisijalle. Takuu koskisi vain yhden verkon sisäistä transaktiota, ei useita ketjuja kattavaa reittiä.
Assertioilla voitaisiin myös tarkistaa työnkulun siivoustoimet, kuten käyttämättömien tokenien palauttaminen ja jäljellä olevien hyväksyntöjen peruuttaminen. Säätiö pyytää lompakko- ja protokollatiimeiltä palautetta suunnittelun edetessä, joten kyse on mahdollisista tutkimussuunnista eikä ilmoitetuista tuoteominaisuuksista.
Yhteenveto
Natiivit transaktioassertiot siirtäisivät osan Ethereum-transaktioiden turvallisuudesta pyynnön tulkitsemisesta sen lopputuloksen valvontaan. Niiden käytännön arvo riippuisi luotettavista käytännöistä sekä niiden käyttöönotosta lompakoissa ja protokollissa, jotka vastaavat niiden soveltamisesta.
Lue lisää uutisia
Vastuuvapauslauseke
Tämä FinanceVelixin artikkeli tarjoaa yleistä tietoa, ei henkilökohtaista talous-, sijoitus-, oikeudellista tai veroneuvontaa. Kryptovaluuttojen hinnat voivat muuttua nopeasti, ja voit menettää kaikki sijoittamasi varat. Tiedot perustuvat julkaisuhetkellä saatavilla olleeseen aineistoon ja voivat muuttua. Tarkista tärkeät tiedot itsenäisesti ja pyydä tarvittaessa neuvoa pätevältä ammattilaiselta. Omaisuuden, yrityksen tai palvelun mainitseminen ei ole suositus.




