Показывайте ошибку в методике, иначе мы ещё увидим войны пулов
Идея проста: имея контрольный пакет мощности, пул(ы) не собираются проводить атаку, блокировать транзацкции и т.п., они просто решают давить других майнеров.
Алгоритм таков - пока чужая цепочка не достигла 5 блоков длины, пытаемся строить свою цепочку, с тем чтобы обогнать общую. Если обогнали - предлагаем всем свой вариант, и как более длинный он принимается сетью, переходим к пункту 1.
5 блоков выбрано для того, чтобы уж совсем не нервировать обычные ноды сети - подтверждённые транзакции остаются подтверждёнными.
на псевдокоде реализация выглядит так
q = 0.55; // (% мощности которую мы контролируем, соответсвенно и шанс появления блока у нас)
alien_chain = 0;
alien_block = 0;
friend_chain = 0;
friend_block = 0;
for (;;){
if (rand() < (1.0-q)/600){
alien_chain++;
if (alien_chain > 4){
alien_block += alien_chain;
alien_chain = 0;
friend_chain = 0;
}
}
if (rand() < q/600){
friend_chain++
if (friend_chain > alien_chain){
friend_block += friend_chain;
friend_chain = 0;
alien_chain = 0;
}
}
}
// friend_block, alien_block - число намайненных блоков своими, и соответсвенно всё-таки доставшиеся чужакам
Проверка на улов блока раз в секунду с уменьшеной вероятностью 1/600, выдаёт вполне правдоподобные результаты при честной игре. имеешь 80% мощности (q=0.8 ), получаешь ~800 блоков из 1000.
Но вот тестируем включение мухлежа:
реальная получаемый повышение
мощность % блоков дохода в:
40,0% 31,0% 0,775
50,0% 49,0% 0,98
55,0% 60,0% 1,09(09)
60,0% 70,0% 1,16(6)
66,7% 82,0% 1,23
75,0% 93,0% 1,24
80,0% 97,0% 1,2125
90,0% 99,9% 1,1094(4)
Правда стоит отметить, что число своих генерируемых блоков естественно не увеличивается, в краткосрочной перспективе. Просто определённая часть работы "конкурентов" пропадает, и для системы это выглядит как снижение генерирующих мощностей
Но если такой прессинг будет долгосрочным (т.е. дольше чем один пересчёт мощности), то соотвественно искуственно повышенная сложность позволит получать действительно "лишние" блоки и награду за них.
При мощностях ниже 50%, таким мухлежом естественно заниматься невыгодно, но из этого есть ещё одно следствие - и противостоять нечесному большинству, меньшинство по этому алгоритму не сможет. Продолжать свою цепочку из 2-3 блоков, не переключаясь на цепочку монополии, которая "незаконно" обогнала - гарантировано терять ещё больше блоков.