Сценарий был разработан пользователем: croraf и мной вчера при обсуждении моего вопроса . Чтобы было понятнее, хочу представить его здесь еще раз в более строгом оформлении.
Чтобы сделать это ясно, первые четыре предположения :
Теперь сценарий нападения .
Мы совершаем транзакцию с более высокой стоимостью, чем выгода майнинга от N блоков. Мы ждем, пока N блоков не подтвердят нашу транзакцию, поэтому транзакция принимается по предположению 1 . Затем мы подкупаем большинство майнеров, чтобы они создали форк и отменили нашу транзакцию. Взятка должна быть лишь немного больше, чем прибыль от майнинга в «реальной» цепочке, потому что они эгоистичны и не заинтересованы в поддержании валюты в соответствии с предположением 2 . Только заплатив взятку, стоимость атаки очень мала по сравнению с обещанной победой! Майнеры и мы получаем выгоду от атаки до того, как валюта упадет в соответствии с предположением 3.. Тогда валюта PoW, возможно, упадет, но подкупленные майнеры смогут пойти добывать альткоин без каких-либо потерь, что возможно по предположению 4 .
Где ошибка, в сценарии нападения или в предположениях?
Я думаю, что сценарий атаки правильный, и предложенные ошибки в предположениях из вчерашней дискуссии не могут меня убедить.
Наиболее важные критики, которых я уже знаю:
Предположение 1 : Мы должны доверять только транзакциям со значениями, сравнимыми с затратами на майнинг, но это делает валюту неэффективной, что было показано здесь .
Предположение 3 : Если вы не доверяете этому предположению, значит, вы отрицаете обычный сценарий атаки валюты PoW. Если вы это сделаете, почему бы нам тогда не сделать PoW с очень низкой сложностью и очень маленькой мощностью майнинга?
РЕДАКТИРОВАТЬ : я думаю, что мы можем пропустить предположение 3, выполнив атаку с короткой позицией, что означает, что мы выполняем транзакцию с высокой стоимостью в начале с криптовалютой, которую мы одолжили. Мне кажется очевидным, что валюта падает после такой большой атаки, и поэтому мы даже получаем прибыль от продажи.
Где ошибка, в сценарии нападения или в предположениях?
Ошибка заключается в том, что вы обесценили альтернативную стоимость, которая требуется противнику или конгломерату майнеров, чтобы разрушить цепочку, отколовшись от какого-то предшествующего блока. Ключевым моментом здесь является то, что разветвление блокчейна на произвольной высоте и повторное создание блоков сопряжено с неотъемлемыми затратами. Стоимость может быть сформулирована как block subsidy + total transaction fees
количество блоков, которые противник хочет воспроизвести.
Во-первых, честные майнеры не будут участвовать в этом, потому что им придется отказаться от своих предыдущих заработков и проделать двойную работу, чтобы повторно заработать разницу в ваших обещанных комиссионных за транзакции взятки, поэтому конфликтная транзакция, которой вы намереваетесь подкупить майнера должно быть настолько велико, что оно должно быть равно двойному (по крайней мере) block subsidy + total transaction fees
* N. Где N — общее количество блоков, которые вы хотите реорганизовать. Что еще более важно, чего злоумышленник пытается добиться, пожертвовав такую крупную сумму взяток (действительно ли это совместимо с поощрением)?
Во-вторых, предположение 3. просто не имеет особого смысла, поскольку ему не хватает совместимости стимулов. Как вы показали, если майнер может открыть короткую позицию на бирже, прежде чем вступить в сговор для проведения описанной вами атаки, существует риск проведения такой сделки, поскольку биржа из общественных интересов может отказаться или задержать платежи майнеру, участвующему в сговоре, который берет на себя обязательство. такая сделка. Проще говоря, честный майнинг транзакций более совместим для майнеров.
крораф
пользователь65934
пебвиндкрафт
пебвиндкрафт
пользователь65934
пользователь65934