Miner Extractable Value (MEV) ja ohjelmoitava raha: hyvä, paha ja ruma

By Bitcoin Aikakauslehti - 3 kuukautta sitten - Lukuaika: 11 minuuttia

Miner Extractable Value (MEV) ja ohjelmoitava raha: hyvä, paha ja ruma

Ydin Bitcoin’s security model relies on this basic game theory—miners, armed with their digital pickaxes, are in a relentless chase for profit. And it’s this pursuit that keeps the network secure. Basic vanilla mining involves producing blocks to earn the block rewards and transaction fees, but have you ever considered that miners might have other ways to extract value from the blockchain beyond this standard mining process? Are there other avenues for profit on the blockchain where miners can leverage their unique position as validators?

Mikä on MEV?

Työtodistusjärjestelmissä "Kaivostyöntekijän purkautuva arvo"(MEV) on termi, joka kuvaa voittoja, joita kaivostyöntekijät voivat ansaita manipuloimalla sitä, miten tapahtumat priorisoidaan, suljetaan pois, järjestetään uudelleen tai muutetaan heidän kaivamissaan lohkoissa. Kuitenkin sen jälkeen, kun Ethereum päivitti Ethereum 2.0:aan, jolloin verkko siirrettiin panoksen todistamiseen, MEV-konsepti on saanut uuden nimen, ja siitä käytetään nyt nimitystä "Maksimaalinen purettava arvo" panostodistusjärjestelmissä. Tässä yhteydessä lohkon ehdottajilla on kaivostyöntekijöiden sijasta – jotka ovat validaattoreita –, joilla on mahdollisuus poimia tämä arvo.

Kaivostyöntekijöillä (tai Ethereumin validoijilla) on erityinen rooli näissä verkoissa, jotka vahvistavat tapahtumia lohkoissa. Heidän asemansa asettaa heidät askeleen muiden käyttäjien edellä ja antaa heille mahdollisuuden määrittää lopullinen tapahtumajärjestys ketjussa. Korttelin sisällä tapahtumat tilataan tyypillisesti korkeimmilla maksuilla yläosassa, mutta aina silloin tällöin avautuu mahdollisuuksia, joiden avulla kaivostyöläiset voivat ottaa lisävoittoa muuttamalla liiketoimien järjestystä strategisesti omaksi hyödykseen.

Saatat ajatella, mitä haittaa siitä on, että kaivostyöläiset saavat ylimääräistä voittoa ylhäältä? Huolet alkavat ilmaantua vasta, kun jotkut näistä kaivostyöntekijöistä, jotka on varustettu edistyneemmillä analyyttisillä ominaisuuksilla ja tehokkaammalla tietojenkäsittelyllä, voivat tunnistaa ja hyödyntää MEV-voittomahdollisuuksia tehokkaammin kuin toiset.

These opportunities might not always be easy to spot, but the more value that can be extracted through analyzing the chain, the stronger the incentive becomes for research teams equipped with bots to do this work. Over time, this disparity in miner's profit-making ability creates a trend toward centralization within the network. Ultimately undermining the core principle of the blockchain: decentralization.

This is exactly the scenario the Bitcoin developer community is aiming to prevent when considering how best to manage more expressivity on Bitcoin.

Miksi haluamme ohjelmoitavaa rahaa?

historiallisesti Bitcoin has operated with relatively simple smart contracts. However, this model struggles with even moderately complex transactions. Bitcoin Script can only validate authentication data, it doesn’t have the capability to impose speed limits on transactions or define coin destinations because Bitcoin Script doesn’t have access to transaction data.

As a somewhat separate issue, working with and writing Bitcoin smart contracts can be challenging for users who don't fully grasp its security requirements. A proposed feature, known as ‘vaults,’ aims to solve some of these pain points by introducing time-locked conditions for transactions. Essentially, vaults could serve as an emergency “escape hatch,” allowing users to recover their funds in the event of compromised private keys. But features like this are only possible with more expressivity.

Ethereum is widely recognized for its highly expressive scripting capabilities, but it also notably struggles with the issue of MEV. Most users generally assume that Bitcoin has no MEV, in stark contrast to Ethereum, which is viewed as a wild frontier for it. But is this the full story?

Kannustavatko ilmeisemmät älysopimukset automaattisesti useampiin MEV-skenaarioihin?

MEV:hen vaikuttavat useat tekijät: (1) mempoolin läpinäkyvyys, (2) älykkäiden sopimusten läpinäkyvyys ja (3) älykkäiden sopimusten ilmaisukyky. Jokainen näistä tekijöistä avaa uusia kanavia MEV:lle. Tarkastelemme niitä tässä.

Huono: (1) Mempoolin läpinäkyvyys

Pitää Bitcoin's mempool, the mempools of most blockchains are fully transparent, open, and visible, so that everyone can see what transactions are pending before being validated and confirmed in a block. Bitcoin blocks typically take about 10 minutes to find, which theoretically gives miners that same amount of time to take advantage and front-run.

In practice, on Bitcoin, this isn’t a source of MEV for a few reasons: (1) Bitcoin transactions are simple enough that no miners have a significant analytic advantage over other miners, and (2) Bitcoin transactions generally don’t execute multi-asset transactions such as swaps or open trades that could be front-run.

Verratkaa tätä Ethereumiin, jossa on joitain monimutkaisimmista moniomaisuustransaktioista julkisissa hajautetuissa pörsseissä (DEX). Virallisesti lohkoaika Ethereumissa on 15 sekuntia, mutta suuren mempool-liikenteen aikoina välittömän lohkon sisällyttämisen vaadittavat kaasumaksut voivat helposti ylittää sadan dollarin. Tämän seurauksena pienemmillä maksuilla tapahtuvat tapahtumat odottavat minuutteja tai jopa tunteja ennen kuin ne sisällytetään lohkoon. Tämä voi laajentaa ikkunaa näille ilkeälle etumatkalle tarjoutuville mahdollisuuksille, jotka ovat jo yleisempiä Ethereumissa, koska kerros 2 -tokeneihin on kääritty merkittävää arvoa.

Huono: (2) Älykäs sopimusten läpinäkyvyys

In Bitcoin “smart contracts” are the simple locking and unlocking mechanism inherent in Bitcoin Käsikirjoitus. The transaction values, sender, and receiver details are all publicly visible on the blockchain. While this complete and naked transparency isn’t ideal from a privacy perspective, it’s part of how Bitcoin allows all participants in the network to verify the full state of the blockchain. Any observer can analyze these contract details, potentially opening the door to certain MEV-related strategies.

Mutta Bitcoin scripting language is, by design, quite limited, focusing primarily on the basic functions of sending and receiving funds, and validating transactions with signatures or hashlocks. This simplicity inherently limits the scope for MEV strategies on Bitcoin, making such opportunities relatively scarce compared to other chains.

Platforms like Ethereum, Solana, and Cardano also have fully transparent smart contracts, but they diverge from Bitcoin by also having highly complex and expressive scripting languages. Their Turing-complete systems make it possible to theoretically execute virtually any computational task which has come to include: self-executing contracts, integration of real-world data through oracles, decentralized applications (dApps), layer-2 tokens, swaps within DEXs, and automated market makers (AMMs). These come together to foster a rich environment for MEV opportunities. Zero-knowledge-proof-based schemes, such as STARKex, could theoretically avoid some of these issues, but this trade-off would come with other complexities.

Ruma: (3) Älykäs sopimusilmaisu

The MEV opportunities are so lucrative on some chains that there are “MEV trading firms” bringing in “high five figures, mid six figures” in profits a month. This trend has become so prominent that there are public dashboards dedicated to scanning for profitable opportunities on Ethereum and Solana. Their profitability is generated by executing the full basket of MEV strategies: front-running, sandwich trading, token arbitrage, back-running, and liquidations to name a few. Each exploiting a different smart contract dynamics for profit.

Jotkut näistä MEV-strategioista koskevat sekä kerrosta 1 että kerrosta 2.

Generalized Front-Running: Bots scan the mempool for profitable transactions, and then front-run the original transaction for a profit.Sandwich Trading: The attacker places orders both before and after a large transaction to manipulate asset prices for profit. This strategy leverages the predictable price movement caused by the large transaction.

Sitten tietyt strategiat ovat ainutlaatuisia kerroksen 2 tokeneille ja älykkäille sopimuksille.

Arbitrage Across Different DEXs: Bots exploit price differences for the same asset on various DEXs by buying low on one and selling high on another.Back-running in DeFi Bonding Curves: MEV bots capitalize on predictable price rises in DeFi bonding curves by placing transactions immediately after large ones, buying during uptrends, and selling for profit. DeFi Liquidations: MEV bots spot opportunities in DeFi lending where collateral values fall below set thresholds, allowing validator's to prioritize their transactions for buying the liquidated collateral at lower prices.

Sopimusten monimutkaisuus lisää merkittävästi MEV:hen liittyviä haasteita.

Re-entrancy Attacks: These attacks exploit smart contract logic flaws, allowing attackers to repeatedly call a function before the first execution completes, extracting funds multiple times. In the context of MEV, skilled individuals can significantly profit from this, particularly in contracts with substantial funds.Interconnected Contracts and Global State: On platforms like Ethereum, smart contracts can interact, leading to chain reactions across several contracts from a single transaction. This interconnectivity enables complex MEV strategies, where a transaction in one contract may impact another, offering a chain reaction of profit opportunities.

Osa ongelmaa tässä on se, että kerrokseen 2 rakennettujen tokenien ja dAppien luoma kokonaisarvo ylittää usein lohkoketjun natiiviresurssin tason 1, mikä heikentää validaattoreiden kannustinta valita ja vahvistaa tapahtumia puhtaasti maksujen perusteella.

Vielä pahempaa on, että monet näistä mahdollisuuksista eivät rajoitu tiukasti verkon validaattoreihin. Muut verkon osallistujat, joilla on MEV-skannausbotteja, voivat kilpailla samoista mahdollisuuksista, mikä aiheuttaa verkon ruuhkautumista, nostaa kaasumaksuja ja nostaa transaktiokustannuksia. Tämä skenaario luo negatiivisen ulkoisvaikutuksen verkolle ja sen käyttäjille, jotka kaikki vaikuttavat korkeampien transaktiomaksujen hintaan, kun ketju tulee tehottomaksi ja sen toiminnasta tulee kalliimmaksi. DeFin MEV on niin yleinen, että käyttäjät ovat melkein hyväksyneet sen näkymättömänä verona kaikille verkon jäsenille.

Syntyvätkö nämä MEV-mahdollisuudet luonnollisesti erittäin ilmeikkäiden älysopimusten sivutuotteena vai onko olemassa vaihtoehtoinen reitti unelmaan täysin ohjelmoitavasta rahasta?

Short of avoiding protocols with highly expressive smart contracts and layer-2 tokens, users can avoid some of these risks by utilizing protocols that support Luottamukselliset liiketoimet, like Liquid, that conceal transaction details. But unlike these platforms with more expressive scripting languages, Bitcoin lacks the ability to do things you would expect to be able to do with programmable money.

Hyvä: vaihtokaupat ohjelmoitavaan rahaan

When considering the evolution of smart contracts on Bitcoin the options we’re given are to (1) push the complexity off-chain, (2) cautiously integrate narrow or limited covenant functionalities, or (3) embrace the path of full expressivity. Let’s explore some of the proposals from each of these options.

(1) Uusi rakenne ketjun ulkopuolisille sopimuksille: ANYPREVOUT

Off-chain solutions, like the Lightning Network, aim to enhance Bitcoin’s scalability and functionality without burdening the mainchain, keeping transactions fast and fees low. This all sounds good so far.

SIGHASH_ANYPREVOUT (APO) on ehdotus uudentyyppiseksi julkiseksi avaimeksi, joka sallii tiettyjä muutoksia tapahtumaan myös sen allekirjoittamisen jälkeen. Se yksinkertaistaa tapahtumien päivittämistä, jolloin tapahtumat voivat viitata aikaisempiin (UTXO:ihin) helpommin, mikä tekee Lightning Network -kanavista nopeampia, halvempia, turvallisempia ja yksinkertaisempia, erityisesti riitojen ratkaisemisessa.

Under the hood, APO is a new proposed type of sighash flag. Every Bitcoin transaction must have a signature to prove it’s legitimate. When creating this signature, you use a “sighash flag” to determine which parts of the transaction you’re signing. With APO a sender would sign all outputs and none of the inputs, to commit the outputs of the transaction, but not specifically which transaction the funds are going to come from.

APO enables Eltoo, allowing users to exchange pre-signed transactions off-chain. However APO may inadvertently introduce MEV by making transactions reorderable. As soon as you allow a signature that’s binding the transaction graph you have the ability to swap out transactions. Inputs can be swapped, as long as the new inputs are still compatible with the signature.

(2) Sopimusehdot: CAT + CSFS ja CTV

Sopimukset antaisivat käyttäjille mahdollisuuden hallita, missä kolikot voivat liikkua, asettamalla nopeusrajoituksia tai asettamalla kolikoille erityisiä kohteita tapahtumassa. Kovenantteja on kaksi eri luokkaa: rekursiivinen ja ei-rekursiivinen.

Recursive covenants allow coins to continually return to covenants of the same type.Non-recursive covenants limit this control to the next transaction, requiring the entire future path of the coins to be defined upfront.

CAT + CSFS is a covenant proposal that allows scripts to construct or define certain parts of a future transaction. CHECKSIGFROMSTACK (CSFS) verifies a signature against the data that OP_CAT constructed. By using CSFS to require the signature to match some dynamically constructed format from OP_CAT, we can define how these UTXOs can be spent in the future and create a recursive covenant, albeit clunkily.

OP_CHECKTEMPLATEVERIFY (CTV) on tapa luoda ei-rekursiivisia sopimuksia. Sen sijaan, että CTV määrittelisi ja tarkistaisi tapahtuman tiettyjä osia, se rajoittaa varojen käyttöä määrittelemättä tarkkaa seuraavaa osoitetta, johon ne on siirrettävä. Se määrittelee "mallin", joka seuraavan tapahtuman on vahvistettava.

One risk with recursive covenants might be possible to create a scenario where coins must follow a set of rules that repeat over and over, that get trapped in a loop without a way of getting out. Another is that, because covenants are transparent and self-executing they could open Bitcoin up to some of the MEV strategies we see on other chains.

Mikä tässä on hyvä uutinen?

Hyvä uutinen on, että kaikki nämä ehdotukset tuovat uutta ilmettä!

Mikä nyt on maksimi ekspressiivisyys, jonka voimme saada?

(3) Täysi ilmaisukyky: Yksinkertaisuus

Yksinkertaisuus is a blockchain-based programming language that differs from other scripting languages in that it is very low-level. It is not a language on top of Bitcoin Script or a new opcode within it, it’s an alternative to it. Theoretically, it’s possible to implement all covenant proposals within Simplicity, and implement many of the other contracts cypherpunks want from programmable money, but with less of the negative externalities of Ethereum.

Simplicity maintains Bitcoin’s design principle of self-contained transactions whereby programs do not have access to any information outside the transaction. Designed for both maximal expressiveness and safety, Simplicity supports formal verification and static analysis, giving users more reliable smart contracts.

Compare Simplicity to: (1) bitcoin covenant proposals and (2) scripting languages on other blockchains:

The covenant proposals on Bitcoin Script, though much simpler than Simplicity, lack the expressivity to handle fee estimation in Script, due to Bitcoin's lack of arithmetic functions. There is no way to multiply or divide, no conditionals or stack manipulations opcodes; it is also very hard to estimate a reasonable fee to be associated with a given contract or covenant. Users end up with spaghetti code, where 80% of their contract logic is dedicated to trying to determine what their fee rate should be. Making these covenant contracts super complicated and difficult to reason about.

The EVM has looping constructs which makes static analysis of gas usage very difficult. Whereas with Script or Simplicity, you can just count each opcode, or recursively add up the cost of each function. Because Simplicity has a formal model, you can formally reason about program behavior. You can't do this with Script even though you can do static analysis of resource usage.

Yksinkertaisuus tarjoaisi käyttäjille korkeimman ilmaisukyvyn muiden arvokkaiden ominaisuuksien, kuten staattisen analyysin ja muodollisen todentamisen, ohella. Käyttäjiä kannustetaan, vaikkakaan ei rajoitettu, rakentamaan älykkäitä sopimuksia, jotka kestävät MEV:tä. Lisäksi eri sopimusten yhdistelmä voi aiheuttaa MEV:n, vaikka ne eivät yksittäin sitä tekisi. Tämä edustaa perustavanlaatuista kompromissia.

The idea of advancing Bitcoin’s smart contract functionality is undeniably promising and exciting. But it’s important to acknowledge that all these proposals carry some degree of MEV risk—albeit likely not to the extent that we see on other chains. As we think about bringing more programmable money to Bitcoin, there are questions we have to ask:

Can we build a protocol with zero MEV risk, or is this an unattainable ideal?Given the inherent risks of MEV in many proposals, what level of MEV risk is acceptable?And finally, what represents the simplest proposal that offers the greatest degree of expressivity?

Jokaisella ehdotuksella on omat etunsa ja haittansa. Mutta riippumatta siitä, mihin suuntaan otamme, meidän on aina pyrittävä asettamaan turvallisuus etusijalle ja vaalimaan hajauttamisen periaatetta.

Tarkempia päivityksiä ja lisätietoja varten pidä silmällä Blockstream Research 𝕏 syöttää.

Tämä on Kiara Bickersin vieraspostaus. Esitetyt mielipiteet ovat täysin heidän omiaan eivätkä välttämättä vastaa BTC Inc:n tai Bitcoin Magazine.

Alkuperäinen lähde: Bitcoin aikakauslehti