Lecture Note
University
Princeton UniversityCourse
Bitcoin and Cryptocurrency TechnologiesPages
5
Academic year
3
anon
Views
9
Mining Incentives and Strategies Mining Incentives and Strategies: A Guide to Maximizing Profits In the world of Bitcoin mining, there are a few things that every miner needs to do to maximize their chances of profitability. They need to have good hardware, cheap electricity,and run as fast as possible while hoping for some good luck. However, beyond these basics,there are also some interesting strategic considerations that every miner has to make beforethey pick which blocks to work on. In particular, miners get to choose which transactions they want to include in a block. The default strategy is to include any transaction that includes higher than some minimumtransaction fee. Miners also get to decide which block they want to mine on top of, with thedefault behavior being to choose whatever the longest current chain is that has beenannounced. However, miners have to decide how to choose between two colliding blockswhen they get announced. If two people find blocks around the same time, miners have todecide which block to extend because both will be the longest chain in history. Miners alsohave to decide when to announce new blocks and can choose when to find a block and waitbefore actually announcing it to others. There is a default method for each situation, and since most miners are now using the default Bitcoin client, this is what they are doing. The default client is used by about 90% offully validating nodes; it is unclear how much of the total mining power that represents, but itis reasonable to conclude that it is most likely a majority. However, what if you want to change some of those decisions? Can you make more money as a miner if you implement some other strategy besides the default one? It turns out that for some values of a parameter alpha from 0 to 1 which represents the proportion of all the mining capacity in the world that you actually control, yes, you can makemore money by implementing a non-default strategy. Although the analysis is still ongoing,so this is very much new and underdevelopment stuff. The simplest attack is a forking attack, which involves performing a double spend. Here, we have a valid state of the block chain, and the miner will send money to some victim Bob.It may look as if that transaction sending money to Bob is in the valid longest chain. Now, this forking miner will work on an earlier block, and in order to execute this in reality, it would need to be approximately six blocks earlier based on the typical amount ofconfirmations that users often wait before acknowledging that the payment is final. Theminer will then enter an alternative payment in which they transfer the money to a separateaddress where they would keep it for themselves. At this point, that block won't be valid since it builds on an earlier point, and in the blockchain, it doesn't represent the longest possible chain of blocks. However, if you have a
majority of hash power, if alpha is greater than 0.5, eventually, your alternate chain will belonger than what was previously the longest chain. And at this point, your longest chain nowbecomes the valid block chain. So, you have changed the course of history by erasing the payment you made to Bob and now keeping it for yourself. You have defrauded your target if they provided you withsomething in exchange for those bitcoins, preferably actual money or tangible products theycan't readily take back. And if you control a majority of the network's electricity, you couldbenefit in this way. Protecting Bitcoin Against Forking Attacks: Understanding the Risks and Solutions Bitcoin has emerged as one of the most popular cryptocurrencies in the world, with a market capitalization of over $1 trillion. Its decentralized nature and limited supply havemade it a favorite among investors looking for a hedge against inflation and financialuncertainty. However, like any other financial system, Bitcoin is not immune to attacks, andone of the most significant threats it faces is a forking attack. A forking attack happens when a hostile actor makes a duplicate of the Bitcoin blockchain and uses it to mine new blocks, to put it simply. To force additional nodes to switch to theattacker's chain, the attacker aims to extend the existing chain beyond its original length. Asa result, the Bitcoin network may split, with some nodes adopting the attacker's chain andsome remaining loyal to the original. The consequences of a forking attack can be catastrophic. It can lead to a loss of trust in Bitcoin, a drop in its value, and a significant disruption of the network. In fact, if done on alarge scale, it's possible that it could destroy the currency completely by a dramatic loss ofconfidence. So, who would want to do this? The scenario where people are worried about an attack like this has been referred to as a Goldfinger Attack. Named after the famous villain in theJames Bond movie whose goal was to irradiate all of the gold that the U.S. government heldat Fort Knox to make it valueless. If the goal is to destroy Bitcoin, then a forking attack might be used specifically to tank the market, make bitcoins worthless, and possibly profit because the attacker either shortedbitcoin or had significant holdings in some competing currency. However, beyond that threat model, it's not clear in which scenarios we would have to worry about a large-scale forking attack. Although it's possible that the attack is easier thanachieving that alpha greater than 0.5, all that hash power, by simply buying it. So, whereas itwould be really expensive to buy enough mining capacity to have more than everybody elsein the world, it might be possible to just bribe the people who do control that capacity to workon behalf of you. One defense that does exist in Bitcoin against forking attacks is Checkpointing. Since 2010, each version of the default Bitcoin client ships with a specific checkpoint and will
refuse to accept versions of the block chain that don't date back to that version. It's usuallyseveral hundred blocks before whatever the current longest chain is. However, there are some questions about the implications for this in terms of how decentralized this is. Because this now means that, essentially, a central party, thedevelopers who maintain the core Bitcoin client, are deciding something about the value ofthe valid block chain. But this does serve as a good practical mitigation against the risk of adeep fork in the block chain. A block-withholding strike is another intriguing kind of attack. The attacker is supposed to avoid announcing their blocks as soon as they are discovered. Instead, they want to makean effort to advance. They intend to engage in a small amount of mining in the hopes oflocating two consecutive blocks before the rest of the network does. What do we mean by "get ahead"? Well, they want to create a fork that is longer than the original chain, so other nodes will switch to their chain. This can lead to double-spendingattacks, where the attacker spends their bitcoins on one chain, then switches to the otherchain and spends them again. This can result in significant financial losses for merchantsand other users who accept Bitcoin payments. Bitcoin mining is a process that involves solving complex mathematical problems and adding new blocks to the blockchain. Miners who succeed in solving these problems getrewarded with newly minted bitcoins. The process is decentralized and designed toincentivize miners to work together to maintain the integrity of the blockchain. However, there are ways for miners to cheat the system, and one of them is the block withholding attack. This attack is a theoretical but interesting strategy that allows miners towithhold valid blocks from the network to gain a competitive advantage. So instead of being two blocks ahead, you just have one secret block held in your back pocket, and then the rest of the network announces what they think will be the next validblock. Well, if this happens, you're gonna want to immediately push your secret block out thedoor. And now there's two versions of potentially the longest chain, and every other miner is going to have to decide which version they wanna work on. And we're in that race condition. The Block Withholding Attack Explained In a block withholding attack, a miner solves a valid block but doesn't broadcast it to the network. Instead, the miner keeps the block secret and mines on top of it, creating a forkedversion of the blockchain. When the miner is ready to reveal the secret block, they broadcastit to the network and try to convince other miners to switch to their forked version. The viability of this block withholding approach is going to depend really heavily on your ability to win these races.
So when is it a good idea to do a block-withholding attack? Well, if you assume that you can win every race every time there's competition for the next valid block, the rest of the network is going to accept yours. Then no matter what alpha,no matter how much mining capacity you have, it's better to try selfish mining. By selfishmining, I mean this block withholding strategy that I've just described. So how would you tryto win every race? Well, you could just fight really hard to have a good network position. Youcould try to peer with every node so that you'll announce to more nodes ahead of thelegitimate flooding algorithm. Or you could try bribing people, and again, you could bribe byincluding small tips in your block, so that it makes it more attractive for people to mine on topof you rather than the competing block. If you assume that you only have a 50% chance of winning these races, which is about what the natural chances would be if you're competing fairly, then this block-withholdingstrategy is an improvement if alpha is greater than 0.25. And again, this is a theoretical attack which is very interesting, but it hasn't actually been observed yet in practice. It should be something that you'd be able to tell by monitoring theblockchain and when miners are announcing new blocks. The Limits of the Block Withholding Attack The block withholding attack is not foolproof, and there are limits to its effectiveness. If a miner doesn't have enough computing power, they won't be able to create a forked versionof the blockchain that is longer than the main one. In that case, their secret block willbecome worthless, and they will have wasted their time and resources. Moreover, the block withholding attack can only work if a miner has a significant amount of computing power and can compete with other miners. If a miner is small and doesn't haveenough computing power, they won't be able to win the race to broadcast their secret blockand convince other miners to switch to their forked version. But a much more interesting case is if miners do this to try to enforce a minimum transaction fee. The Future of Transaction Fees in Bitcoin Mining Bitcoin mining is a process that involves the use of specialized hardware and software to perform complex calculations in order to add new blocks to the blockchain. Miners whosuccessfully add new blocks are rewarded with a fixed number of bitcoins, and this is themain source of revenue for miners. In addition to the fixed rewards, there are also transaction fees that are paid by users who want their transactions to be processed quickly. These fees are currently not a significantsource of revenue for miners, but as the block rewards decrease over time, transaction feeswill become more important.
This raises the question of whether miners will become more aggressive in enforcing minimum transaction fees in the future, and how this might impact the Bitcoin ecosystem. The current default policy for transaction fees in Bitcoin is based on a priority system that assigns a priority score to each transaction. This score is based on the age of the inputs, thesize of the transaction, and other factors. Transactions with a higher priority score areprocessed more quickly, and users can pay a transaction fee to increase the priority score oftheir transaction. However, this priority system is not perfect, and there is no complete model for miner behavior that says that the default strategy is optimal. In fact, some miners may choose toimplement their own strategies for transaction fees, which could result in the creation of acartel to enforce minimum transaction fees. If this were to happen, it could have significant implications for the Bitcoin ecosystem. It could lead to higher transaction fees for users, as well as a more centralized mining network. One possible solution to this problem is to introduce a new system for transaction fees that is more transparent and fair. For example, instead of a blacklist against a specificaddress, miners could blacklist any transaction that does not include a minimum transactionfee that they consider fair. This would help to ensure that miners are compensated for their hard work, while also preventing the creation of a cartel. It would also make the transaction fee system moretransparent and fair, which would be beneficial for users. Of course, there are many factors that could influence the future of transaction fees in Bitcoin mining. The size and behavior of the mining network, as well as the level ofcompetition among miners, will all play a role in determining how transaction fees areenforced. Despite these uncertainties, it is clear that the future of transaction fees in Bitcoin mining is an important issue that deserves attention from both researchers and practitioners. Bystaying informed and engaged with this issue, we can help to ensure that Bitcoin continuesto evolve in a way that is fair, transparent, and beneficial for everyone involved.
Incentives, Strategies, and Risks in Bitcoin Mining
Please or to post comments