Позвольте мне предварить это с, я не совсем уверен, как bitcoind сделки с получением двух эквивалентных блоков (два различных блока 213s, например). Очевидно, что, как только он получает блок 214 он будет держать 213, на который ссылается его 214. Но до тех пор, от моего исследования (которое может быть неполным, но я не могу найти много об этом), кажется, что он держит блок его получил первый. Это, однако, является нарушением протокола Bitcoin.
Протокол Bitcoin указывает, что в случае blockchain вилки выигрышная цепи является один с большей работой в ней. Очевидно, что первый блок получил не обязательно один с самой работой - блок с самой работы будет блок с наименьшим хэш. Для всех нейтральных шахтеров (шахтеры, которые не противоминные либо версия блока 213) и недобывающих узлы, замена блока является нормальным явлением, что ничего не стоит. Поэтому, в соответствии с протоколом и заменить принятый блок, блок с наименьшим хэш кажется, интуитивно, что нужно сделать. Это также полезно, что нужно сделать - это немедленно завершает текущую ситуацию, когда выгоднее добывать блоки с меньшим количеством сделок, если сделки не платить гораздо более высокую плату, чем в противном случае не было бы необходимости. Я не вижу причин, почему Bitcoin ядро не соответствует одному из самых основных правил протокола, особенно если не после него имеет стоимость в сети полезностью.
Да, я знаю, что O Гэвины (1) время распространения блока решает проблему слишком, однако эти решения могут сосуществовать. И осуществление замены-по-хэш-низка была бы чрезвычайно просто, по сравнению с O (1) время распространения раствора.
РЕДАКТИРОВАТЬ:
Чтобы избежать натыкаясь на это, я просто хочу, чтобы изменить этот пост.
Я не согласен с некоторыми особенностями Шорену, но я не могу опровергнуть общую точку, которая является то, что он откроет некоторые возможности для атаки, которые в настоящее время не представляется возможным.