More Mining: Selfish Mining and Expected Advances
This content delves into the concepts of selfish mining and expected advances in the context of blockchain technology. It explores the implications of selfish mining strategies, the distribution of rewards between selfish and honest miners, and the expected number of additional forward steps taken before exiting through a certain branch. The visual aids and diagrams further elucidate these complex topics in a simplified manner.
Download Presentation

Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.
E N D
Presentation Transcript
More Mining David Evans and Samee Zahur CS4501, Fall 2015 University of Virginia
Selfish mining back with math! our hashing power total hashing power ? =
? ? ? ? 2 3 4 1 ? 1 ? 1 ? 1 ?
State diagram ? ? ? ? 1 2 3 0 1 ? 1 ? 1 ? 1 ? 1 ?
State diagram ? ? ? ? 1 2 3 0 1 ? 1 ? 1 ? 1 ? 1 ? Blocks won = number of forward advances
Expected advances ? ? ? ? 2 3 4 1 ? 1 ? 1 ? 1 ? Define ? = Expected number of additional forward steps taken, before we exit through (1 ?) branch
Expected advances ? ? ? ? 2 3 4 1 ? 1 ? 1 ? 1 ? ? = 1 ? 0 +
Expected advances ? ? ? ? 2 3 4 1 ? 1 ? 1 ? 1 ? ? = 1 ? 0 + ? (1 + )
Expected advances ? ? ? ? 2 3 4 1 ? 1 ? 1 ? 1 ? ? = 1 ? 0 + ? (1 + ? + ?)
Expected advances ? ? ? ? 2 3 4 1 ? 1 ? 1 ? 1 ? ? = ? (1 + 2?) 1 2?,assuming ? <1 ? ? = 2
? ? ? ? 1 2 3 0 1 ? 1 ? 1 ? 1 ? 1 ? Selfish Others ?2 2 + ? 1 ? 1 ? 1 ? 1
? ? ? ? 1 2 3 0 1 ? 1 ? 1 ? 1 ? 1 ? Selfish Others ? 1 ? 1 + ? 1 ? 1 = 1 ?2 ?2 2 + 1 2?
Selfish Others ? ?2 2 + 1 ?2 1 2? At ? = 0.40, Selfish reward = 0.64 blocks/cycle Honest reward = 0.84 blocks/cycle Selfish Total = 0.64 0.84+0.64 0.432
Mining profit Intel Core i5 2600K Quad core Speed: total 17.3 M hashes per second Power: 75 Watts At last night s difficulty, we would need over 374,000 years.
Engaging small miners again GPUs @ 30-100 MH/sec ASICs @ 11 GH/sec
Calculate at: http://www.alcula.com/calculators/finance/bitcoin-mining/
Pool manager Hey, I found a block! Worker Worker Worker Yay! Yay! Yay!
Puzzle shares Pool manager Lower difficulty: Hash(B1) = 0x00000002dd43 Hash(B2) = 0x0000000076a5 Hash(B3) = 0x0000000f270b Hash(B4) = 0x0000000f3f5b Purpose of shares : Proof of work Measures hash rate Worker
Proportional rewards When block is found: yourShares = shares you submitted since last block totalShares = shares submitted by the pool since last block yourReward = 25 BTC * yourShares/totalShares
Reward variation You get more reward if this block is found is found early. I.e. early shares are worth more in expectation. Exploit by: Send shares only early in search Hop to a different pool if they found a block recently
Combating pool hopping Ineffective methods: Detect and punish/ban Delaying pool block statistics De-incentivize by changing scoring system: Reward miners who stay longer Make rewards independent of block found time
Encouraging small miners again Can we use GPU/ASIC resistant cryptocurrencies?
Password Databases Better Insecure Username Password Username Salt Scrypt(password+salt) Jack.Clough 12password Jack.Clough 150FE5Btiq PaR6mPwHBj Betty.Smith 8c2odkw Betty.Smith t1Y1B67ulN QrUaLRqFvc
Logistics No class on Monday, Oct 5th Next class on Wednesday, Oct 7th Problemset 2 is out: due Oct 9th Midterm: Oct 19th