Idea just came to me, and I want to express it before I lose it.
If litecoin inherits much of the P2P commerce from bitcoin in the future, ASIC-mining of litecoin will go through the roof. We can expect the same arms race and centralization.
How about we preempt this?
My idea is a two tier system of fees based on a dual PoW protocol system.
Low fees get mined in blocks with the RandomX protocol. These blocks would be done by home or small business nodes, as the RandomX protocol is optimized for CPUs. (And by âlow feesâ I mean- obviously given the particular cryptocurrency- very low fees)
High fees get mined with the Scrypt protocol, as is. This can become the domain of ASICs. Existing miners wonât get pissed off that things have changed.
Transactions offering a fee below a certain amount would get taken up by home or small business miners, using CPU-based systems, and the target block time would be 15 minutes. The 15 minute time would (1) keep out of the way of the âlarge businessâ miners; (2) ensure that people on slow networks were not penalized; (3) offer protection against DoS; (4) offer more time for an ASIC reorg due to added security risk of probable weak overall hashrate from the âamateursâ; (5) mitigate the envy the big miners would have at the âamateursâ getting those LTC rewards.
This would combine the best of the monero world, and the best of the bitcoin world.
Advantages:
Users could choose to support home or small business miners.
Users could vote with their pockets if the high fee ASIC-miners were becoming too rapacious.
Big ASIC data centers are useful for all the hashrate.
Big ASIC miners could charge higher fees, see point 3.
Same blockchain, just different source of some blocks.
Having two mining methods (protocols) might work in practice but not sure about the benefits.
I think the primary purpose of mining is to secure the blockchain against tampering, this proposition would at best make it weaker, granted you get some decentralization by allowing the mining to spread out which is good.
Another problem with your idea is that you assume there is something like âRandomXâ possible which canât be scaled, however, most things can be scaled as hardware design and software improves over time, and thinking of current progress now it looks like we are moving towards pads and phones at home and the rest are rackmounted servers somewhere else (aka cloud computing). That said, I prefer your future which includes computers at home and in small businesses, but not sure thatâs where we are going.
I like that you posted the idea, not many dare to do that.
most things can be scaled as hardware design and software improves over time.
Yes, but RandomX is pretty resistant. It is designed for CPU pipelines and a lot of L3 cache. ASIC manufacturers would hence be taking on the PC hardware market, which is not trivial. Iâm sure they are not so stupid not to realize that the RandomX protocol can, and probably will, be tweaked in future to thwart any attempt at ASIC dominance. As it is open source, Litecoin would be free to stick with the existing RandomX or go to the new tweaked version, but either way, uncertainty is the enemy of business.
I think the primary purpose of mining is to secure the blockchain against tampering, this proposition would at best make it weaker,
Absolutely agreeâŚI have an idea how to mitigate thisâŚgive me a day or two.
Home mining would introduce significant security risks to litecoin. This is because home miners share the same blockchain but (CPU-based) malware bot armies would be reasonably easy to organize.
The following protocol nullfies the risk:
All home miners must join the official litecoin pool, hereafter called the âRoots Poolâ.
No other pools allowed.
Each block mined by the Roots Pool uses RandomX and the difficulty adjustment aims at 15 minutes per block
Difficulty adjusted every 777 blocks, approx. 8 days.
There is a queue for each miner joining the Roots Pool.
There is a default wait-time in the queue. (Discussion needed).
Wait-time is dynamically adjusted. Default wait-time is increased based on a function of number of miners having joined the queue in the last 2 and last 32 blocks. (This prevents sudden rush of 51% attacks)
Single miners with impossibly large hashrates would be deemed a submining pool and banned. (1.25x of current maximum miner hashrate? Discussion needed.)
The winning miner earns 100% of fees.
The block reward is split between the winner and the rest of the pool.
The winner gets 75%, and the entire pool (including the winner to make it simpler) gets 25% split evenly.
Of the 25% earned by the entire pool, 15% goes to all the pool, and 10% goes to a subset of the pool, namely those miners which have been active for more than 70,000 (RandomX) blocks. (Loyalty reward).
The developers can decide which of the two options is easier to implement: Either the mining rewards are first paid into an escrow account for 14 days or there is a timelock on the mining rewards of 14 days. (This allows the litecoin community 14 days to plan a course of action if there is a catastrophic forking attack).
Dynamic DNS could be used by the nodes, so a single âdns seedâ could be hardcoded into the software update, e.g. rootspool.litecoin.org. This could trigger the whole process with a conditional, i.e. âif connected to rootspool.litecoin.org, then receive blocks only from it according to these rulesâ.
Presumably the winning block would need to be signed by the Roots Pool private key to prevent forgeries? (Discussion needed)
These measures would discourage a well-organized forking attack. This is especially so, since one must remember that the Roots Pool would be earning very low fee rewards. There would be more to be gained by going after the âbig boysâ.
EDIT: Thinking about it, DNSSEC in 14 would be better than doing 15. By âforgeriesâ I mean a rogue pool imitating the Roots Pool and sending the nodes the winning block.