Miner Extractable Value (MEV) og programmerbare penge: De gode, de dårlige og de grimme

By Bitcoin Magasin - 3 måneder siden - Læsetid: 11 minutter

Miner Extractable Value (MEV) og programmerbare penge: De gode, de dårlige og de grimme

Kernen i Bitcoin's sikkerhedsmodel er afhængig af denne grundlæggende spilteori - minearbejdere, bevæbnet med deres digitale hakker, er i en ubarmhjertig jagt efter profit. Og det er denne forfølgelse, der holder netværket sikkert. Grundlæggende vaniljeminedrift involverer at producere blokke for at tjene blokbelønninger og transaktionsgebyrer, men har du nogensinde overvejet, at minearbejdere kunne have andre måder at udvinde værdi fra blockchain ud over denne standard minedrift? Er der andre muligheder for profit på blockchain, hvor minearbejdere kan udnytte deres unikke position som validatorer?

Hvad er MEV?

I proof-of-work-systemer, "Udvindelig værdi for minearbejder"(MEV) er et udtryk, der beskriver det overskud, minearbejdere kan opnå ved at manipulere, hvordan transaktioner prioriteres, ekskluderes, omarrangeres eller ændres i de blokke, de udvinder. Siden Ethereums opgradering til Ethereum 2.0, som flyttede netværket til proof-of-stake, har konceptet MEV fået et nyt navn og omtales nu som "Maximal Extractable Value" i proof-of-stake-systemer. I denne sammenhæng er det blokforslagsstillerne i stedet for minearbejdere - der er validatorerne - der har mulighed for at udtrække denne værdi.

Minearbejdere (eller validatorer i Ethereum) har en særlig rolle i disse netværk, der bekræfter transaktioner i blokke. Deres position placerer dem et skridt foran andre brugere og giver dem mulighed for at bestemme endelig rækkefølge af transaktioner i kæden. Inde i en blok bestilles transaktioner typisk med de højeste gebyrer øverst, men nu og da åbner der sig muligheder, som vil gøre det muligt for minearbejdere at tage en ekstra overskud ved strategisk at ændre rækkefølgen af ​​transaktioner til deres egen fordel.

Du tænker måske, hvad er skaden ved at lade minearbejdere tage lidt ekstra fortjeneste fra toppen? Bekymringerne begynder først at dukke op, når nogle af disse minearbejdere, dem udstyret med mere avancerede analytiske evner og mere kraftfuld databehandling, kan identificere og udnytte MEV-profitmuligheder mere effektivt end andre.

Disse muligheder er måske ikke altid nemme at få øje på, men jo mere værdi, der kan udvindes ved at analysere kæden, jo stærkere bliver incitamentet for forskerhold udstyret med bots til at udføre dette arbejde. Over tid skaber denne ulighed i minearbejdernes overskudsevne en tendens til centralisering i netværket. I sidste ende underminerer kerneprincippet i blockchain: decentralisering.

Dette er præcis scenariet Bitcoin udviklerfællesskabet sigter mod at forebygge, når man overvejer, hvordan man bedst kan administrere mere udtryksevne på Bitcoin.

Hvorfor ønsker vi programmerbare penge?

Historisk set Bitcoin har opereret med relativt simple smarte kontrakter. Denne model kæmper dog med selv moderat komplekse transaktioner. Bitcoin Script kan kun validere godkendelsesdata, det har ikke mulighed for at pålægge hastighedsbegrænsninger på transaktioner eller definere møntdestinationer, fordi Bitcoin Scriptet har ikke adgang til transaktionsdata.

Som et noget særskilt emne arbejde med og skrive Bitcoin smarte kontrakter kan være udfordrende for brugere, der ikke fuldt ud forstår deres sikkerhedskrav. En foreslået funktion, kendt som 'hvælvinger', har til formål at løse nogle af disse smertepunkter ved at introducere tidslåste betingelser for transaktioner. I det væsentlige kunne hvælvinger tjene som en nødudslipsluge, der giver brugerne mulighed for at få deres penge tilbage i tilfælde af kompromitterede private nøgler. Men funktioner som denne er kun mulige med mere udtryksfuldhed.

Ethereum er bredt anerkendt for sine meget udtryksfulde script-egenskaber, men det kæmper også især med spørgsmålet om MEV. Det antager de fleste brugere generelt Bitcoin har ingen MEV, i skærende kontrast til Ethereum, der betragtes som en vild grænse for det. Men er dette hele historien?

Tilskynder mere udtryksfulde smarte kontrakter automatisk til flere MEV-scenarier?

Der er flere faktorer, der bidrager til MEV: (1) mempool-gennemsigtighed, (2) smart kontraktgennemsigtighed og (3) smart kontraktekspressivitet. Hver af disse faktorer åbner op for nye kanaler for MEV, vi vil gennemgå hver enkelt her.

Det dårlige: (1) Mempool-gennemsigtighed

lignende Bitcoin's mempool, er mempools for de fleste blockchains fuldt gennemsigtige, åbne og synlige, så alle kan se, hvilke transaktioner der venter, før de valideres og bekræftes i en blok. Bitcoin blokke tager typisk omkring 10 minutter at finde, hvilket teoretisk giver minearbejdere den samme tid til at drage fordel og frontløbe.

I praksis på Bitcoin, dette er ikke en kilde til MEV af et par grunde: (1) Bitcoin transaktioner er enkle nok til, at ingen minearbejdere har en væsentlig analytisk fordel i forhold til andre minearbejdere, og (2) Bitcoin transaktioner udfører generelt ikke transaktioner med flere aktiver, såsom swaps eller åbne handler, der kunne være frontløb.

Sammenlign dette med Ethereum, som har nogle af de mest komplekse transaktioner med flere aktiver, der finder sted på offentlige decentraliserede børser (DEX'er). Officielt er blokeringstiden på Ethereum 15 sekunder, men i perioder med høj mempool-trafik kan de nødvendige gasgebyrer for øjeblikkelig blokinkludering nemt overstige hundrede dollars. Som et resultat ender transaktioner med lavere gebyrer med at vente minutter eller endda timer, før de bliver inkluderet i en blok. Dette kan udvide vinduet for disse uhyggelige frontløbsmuligheder, der allerede er mere udbredt på Ethereum på grund af den betydelige værdi pakket ind i lag-2-tokens.

Det dårlige: (2) Smart kontraktgennemsigtighed

In Bitcoin "smarte kontrakter" er den simple låse- og oplåsningsmekanisme, der er iboende Bitcoin Script. Transaktionsværdierne, afsender- og modtagerdetaljerne er alle offentligt synlige på blockchain. Selvom denne komplette og nøgne gennemsigtighed ikke er ideel fra et privatlivsperspektiv, er det en del af hvordan Bitcoin giver alle deltagere i netværket mulighed for at verificere den fulde tilstand af blockchain. Enhver observatør kan analysere disse kontraktdetaljer, hvilket potentielt åbner døren til visse MEV-relaterede strategier.

Men Bitcoin scripting-sprog er ved design ret begrænset, og fokuserer primært på de grundlæggende funktioner ved at sende og modtage penge og validere transaktioner med signaturer eller hashlocks. Denne enkelhed begrænser i sagens natur mulighederne for MEV-strategier på Bitcoin, hvilket gør sådanne muligheder relativt sparsomme sammenlignet med andre kæder.

Platforme som Ethereum, Solana og Cardano har også fuldt gennemsigtige smarte kontrakter, men de afviger fra Bitcoin ved også at have meget komplekse og udtryksfulde scriptsprog. Deres Turing-komplette systemer gør det muligt teoretisk at udføre praktisk talt enhver beregningsopgave, som er kommet til at omfatte: selvudførende kontrakter, integration af virkelige data gennem orakler, decentraliserede applikationer (dApps), layer-2 tokens, swaps inden for DEX'er, og automatiserede market makers (AMM'er). Disse samles for at skabe et rigt miljø for MEV-muligheder. Nulvidenssikrede ordninger, som f.eks STARKex, kunne teoretisk undgå nogle af disse problemer, men denne afvejning ville komme med andre kompleksiteter.

Den grimme: (3) Smart kontraktekspressivitet

MEV-mulighederne er så lukrative på nogle kæder, at der er "MEV-handelsfirmaer", der bringer "høj femcifret, midt sekscifret” i overskud om måneden. Denne tendens er blevet så fremtrædende, at der er offentlige dashboards dedikeret til at scanne efter profitable muligheder på Ethereum og Solana. Deres rentabilitet genereres ved at udføre hele kurven af ​​MEV-strategier: frontløb, sandwichhandel, tokenarbitrage, back-running og likvidationer for at nævne nogle få. Hver udnytter en anden smart kontraktdynamik for profit.

Nogle af disse MEV-strategier gælder for både lag-1 og lag-2.

Generaliseret frontløb: Bots scanner mempoolen for rentable transaktioner og kører derefter den oprindelige transaktion på forkant med en fortjeneste.Sandwich-handel: Angriberen afgiver ordrer både før og efter en stor transaktion for at manipulere aktivpriserne for profit. Denne strategi udnytter den forudsigelige prisbevægelse forårsaget af den store transaktion.

Så er visse strategier unikke for lag-2-tokens og smarte kontrakter.

Arbitrage på tværs af forskellige DEX'er: Bots udnytter prisforskelle for det samme aktiv på forskellige DEX'er ved at købe lavt på en og sælge højt på en anden. Tilbageløb i DeFi Bonding Curves: MEV bots udnytter forudsigelige prisstigninger i DeFi bonding kurver ved at placere transaktioner med det samme efter store, køb under optrends og salg med fortjeneste. DeFi Likvidationer: MEV-bots spotter muligheder i DeFi-udlån, hvor sikkerhedsstillelsesværdier falder under fastsatte tærskler, hvilket gør det muligt for validatorer at prioritere deres transaktioner for at købe den likviderede sikkerhed til lavere priser.

Kompleksiteten af ​​kontrakter bidrager væsentligt til de udfordringer, der er forbundet med MEV.

Genindtrængende angreb: Disse angreb udnytter smarte kontraktlogiske fejl, hvilket giver angribere mulighed for gentagne gange at kalde en funktion, før den første udførelse afsluttes, og trække penge ud flere gange. I forbindelse med MEV kan dygtige individer drage stor fordel af dette, især i kontrakter med betydelige midler. Sammenkoblede kontrakter og Global State: På platforme som Ethereum kan smarte kontrakter interagere, hvilket fører til kædereaktioner på tværs af flere kontrakter fra en enkelt transaktion. Denne sammenkobling muliggør komplekse MEV-strategier, hvor en transaktion i én kontrakt kan påvirke en anden, hvilket tilbyder en kædereaktion af profitmuligheder.

En del af problemet her er, at den samlede værdi skabt af tokens og dApps bygget på lag-2 ofte overstiger værdien af ​​blockchains native aktiv på lag-1, hvilket underminerer validatorernes incitament til at vælge og bekræfte transaktioner udelukkende baseret på gebyrer.

For at gøre tingene værre er mange af disse muligheder ikke strengt begrænset til netværksvalidatorer. Andre netværksdeltagere med MEV-scanningsbots kan konkurrere om de samme muligheder, hvilket forårsager overbelastning af netværket, hæver gasgebyrer og øger transaktionsomkostningerne. Dette scenarie skaber en negativ eksternalitet for netværket og dets brugere, som alle er påvirket af prisen på højere transaktionsgebyrer, da kæden bliver mindre effektiv og dyrere i drift. MEV i DeFi er så almindeligt, at brugerne næsten har accepteret det som en usynlig skat på alle i netværket.

Opstår disse MEV-muligheder naturligt som et biprodukt af de meget udtryksfulde smarte kontrakter, eller er der en alternativ vej til drømmen om fuldt programmerbare penge?

Ud over at undgå protokoller med meget udtryksfulde smarte kontrakter og lag-2-tokens, kan brugere undgå nogle af disse risici ved at bruge protokoller, der understøtter Fortrolige transaktioner, ligesom Liquid, der skjuler transaktionsdetaljer. Men i modsætning til disse platforme med mere udtryksfulde scriptsprog, Bitcoin mangler evnen til at gøre ting, du ville forvente at kunne gøre med programmerbare penge.

Det gode: Afvejninger til programmerbare penge

Når man overvejer udviklingen af ​​smarte kontrakter på Bitcoin de muligheder, vi får, er at (1) skubbe kompleksiteten ud af kæden, (2) forsigtigt integrere snævre eller begrænsede pagtfunktioner eller (3) omfavne vejen til fuld udtryksevne. Lad os undersøge nogle af forslagene fra hver af disse muligheder.

(1) En ny struktur for kontrakter uden for kæden: ALLT FORUD

Off-chain løsninger, som Lightning Network, sigter mod at forbedre Bitcoin's skalerbarhed og funktionalitet uden at belaste hovedkæden, hvilket holder transaktioner hurtige og lave gebyrer. Det lyder alt sammen godt indtil videre.

SIGHASH_ANYPREVOUT (APO) er et forslag til en ny type offentlig nøgle, der tillader visse justeringer af en transaktion, selv efter den er underskrevet. Det forenkler, hvordan transaktioner opdateres, hvilket gør det lettere for transaktioner at henvise til tidligere (UTXO'er), hvilket gør Lightning Network-kanaler hurtigere, billigere, sikrere og mere ligetil, især til løsning af tvister.

Under motorhjelmen er APO en ny foreslået type sukkeflag. Hver Bitcoin transaktionen skal have en underskrift for at bevise, at den er legitim. Når du opretter denne signatur, bruger du et "sighash flag" til at bestemme, hvilke dele af transaktionen du underskriver. Med APO vil en afsender underskrive alle output og ingen af ​​inputs for at forpligte output af transaktionen, men ikke specifikt hvilken transaktion midlerne skal komme fra.

APO aktiverer Eltoo, der giver brugerne mulighed for at udveksle forudsignerede transaktioner uden for kæden. APO kan dog utilsigtet indføre MEV ved at gøre transaktioner genbestillige. Så snart du tillader en signatur, der binder transaktionsgrafen, har du mulighed for at bytte transaktioner ud. Indgange kan byttes, så længe de nye indgange stadig er kompatible med signaturen.

(2) Pagter: CAT + CSFS og CTV

Pagter vil give brugerne mulighed for at kontrollere, hvor mønter kan bevæge sig, ved at pålægge hastighedsgrænser eller angive specifikke destinationer for mønter i en transaktion. Der er to forskellige kategorier af pagter: rekursive og ikke-rekursive.

Rekursive pagter gør det muligt for mønter løbende at vende tilbage til pagter af samme type. Ikke-rekursive pagter begrænser denne kontrol til den næste transaktion, hvilket kræver, at hele den fremtidige vej for mønterne skal defineres på forhånd.

CAT + CSFS er et pagtforslag, der tillader scripts at konstruere eller definere bestemte dele af en fremtidig transaktion. CHECKSIGFROMSTACK (CSFS) verificerer en signatur mod de data, som OP_CAT konstruerede. Ved at bruge CSFS til at kræve, at signaturen matcher et eller andet dynamisk konstrueret format fra OP_CAT, kan vi definere, hvordan disse UTXO'er kan bruges i fremtiden og skabe en rekursiv pagt, omend klodset.

OP_CHECKTEMPLATEVERIFY (CTV) er en måde at skabe ikke-rekursive pagter på. I stedet for at definere og verificere mod specifikke dele af en transaktion, begrænser CTV, hvordan midler kan bruges, uden at angive den nøjagtige næste adresse, de skal gå til. Den definerer en "skabelon", som den næste transaktion skal bekræfte.

En risiko med rekursive pagter kan være mulig at skabe et scenarie, hvor mønter skal følge et sæt regler, der gentages igen og igen, som bliver fanget i en løkke uden en måde at komme ud af. En anden er, at fordi pagter er gennemsigtige og selvudførende, kunne de åbnes Bitcoin op til nogle af de MEV-strategier, vi ser på andre kæder.

Hvad er den gode nyhed her?

Den gode nyhed er, at disse forslag alle introducerer ny udtryksevne!

Hvad er nu den maksimale mængde af udtryksevne, vi kan få?

(3) Fuld udtryksevne: Enkelhed

Enkelhed er et blockchain-baseret programmeringssprog, der adskiller sig fra andre scriptsprog ved, at det er meget lavt niveau. Det er ikke et sprog oveni Bitcoin Script eller en ny opkode i det, det er et alternativ til det. Teoretisk set er det muligt at implementere alle pagtforslag inden for Simplicity og implementere mange af de andre kontrakter, cypherpunks ønsker fra programmerbare penge, men med mindre af de negative eksternaliteter af Ethereum.

Enkelheden opretholdes Bitcoins designprincip for selvstændige transaktioner, hvorved programmer ikke har adgang til nogen information uden for transaktionen. Simplicity er designet til både maksimal udtryksfuldhed og sikkerhed og understøtter formel verifikation og statisk analyse, hvilket giver brugerne mere pålidelige smarte kontrakter.

Sammenlign Simplicity med: (1) bitcoin pagtforslag og (2) scriptsprog på andre blockchains:

Pagtforslagene vedr Bitcoin Script, selvom det er meget enklere end Simplicity, mangler udtryksevnen til at håndtere gebyrestimering i Script, pga. Bitcoins mangel på aritmetiske funktioner. Der er ingen måde at multiplicere eller dividere, ingen conditionals eller stable manipulations opkoder; det er også meget svært at estimere et rimeligt gebyr, der skal være forbundet med en given kontrakt eller aftale. Brugere ender med spaghettikode, hvor 80 % af deres kontraktlogik er dedikeret til at forsøge at bestemme, hvad deres gebyrsats skal være. At gøre disse pagtskontrakter super komplicerede og svære at ræsonnere om.

EVM har looping-konstruktioner, som gør statisk analyse af gasforbrug meget vanskelig. Mens du med Script eller Simplicity bare kan tælle hver opcode eller rekursivt lægge omkostningerne for hver funktion sammen. Fordi Simplicity har en formel model, kan du formelt ræsonnere om programadfærd. Du kan ikke gøre dette med Script, selvom du kan lave statisk analyse af ressourceforbrug.

Enkelhed ville give brugerne den højeste grad af udtryksevne sammen med andre værdifulde funktioner som statisk analyse og formel verifikation. Brugere tilskyndes, men ikke begrænset, til at bygge smarte kontrakter, der er modstandsdygtige over for MEV. Derudover kan en kombination af forskellige kontrakter sammen give anledning til MEV, selv når de hver for sig ikke gør det. Dette repræsenterer en grundlæggende afvejning.

Tanken om at komme videre Bitcoin's smarte kontraktfunktionalitet er unægtelig lovende og spændende. Men det er vigtigt at erkende, at alle disse forslag indebærer en vis grad af MEV-risiko – omend sandsynligvis ikke i det omfang, vi ser på andre kæder. Som vi tænker på at bringe flere programmerbare penge til Bitcoin, der er spørgsmål, vi skal stille:

Kan vi bygge en protokol med nul MEV-risiko, eller er dette et uopnåeligt ideal? I betragtning af de iboende risici ved MEV i mange forslag, hvilket niveau af MEV-risiko er acceptabelt? Og endelig, hvad repræsenterer det enkleste forslag, der tilbyder den største grad af udtryksevne ?

Hvert forslag har sit eget sæt af fordele og ulemper. Men uanset hvilken retning vi tager, bør vi altid tilstræbe at prioritere sikkerhed og fastholde princippet om decentralisering.

For detaljerede opdateringer og mere information, hold øje med Blockstream Research 𝕏 foder.

Dette er et gæsteindlæg af Kiara Bickers. Udtalte meninger er helt deres egne og afspejler ikke nødvendigvis dem fra BTC Inc Bitcoin Magasin.

Oprindelig kilde: Bitcoin magasin