Там, кажется, некоторая путаница о том, почему вызов откате v0.7 была сделана таким образом, мы надеемся, это будет рассеять некоторые миф.
Что случилось?
Сетевой жесткий раздвоенной на блоке 225433. блока производится с помощью узла v0.8 был отклонен, по крайней мере, в некоторых узлах v0.7. В отличие от первоначальных требований это было более сложным, чем просто "блок был слишком большим", Блоки вплоть до предела 1Мб были созданы и передаются без проблем на testnet. BDB используется v0.7 не удалось подтвердить блок 225433 из-за неспособности справиться количество входов TX (не путать с размером или количеством операций блока) и отклоненный его. Это недокументированная проблема с v0.7 ("ошибка").
На этом этапе трудно вилка существовала. Узлы горнодобывающих бегущих v0.8 построены на блоке 225433 и расширили свою сеть. Узлы запуска v0.7 отклонил блок 225433 и в конечном итоге получают альтернативный и несовместимый блок "225433a", Поскольку отклонение уни-направление в теории v0.7 в конечном счете может превзойти v0.8 цепь и вновь объединить сеть однако v0.8 цепь имела значительное большинство хеширования власти и что никогда не случалось. К тому времени этот вопрос анализируется v0.8 был более 5 блоков вперед и тянущих дальше вперед со временем.
Почему вилка критичный по времени?
Пользователи на v0.7 вилке никогда бы не присоединиться к сети. Если все эти пользователи отключения своих клиентов и не принимали никаких сделок не было никакого реального риска для них. Однако во время, как хеширования власти сбежавших из v0.7 вилки остальных узлы будут становиться все более и более уязвимым для различных атак. Не только от потенциальной 51% атаки, но и от принятия сгенерированных монет, которые были действительны на v0.8 блоках и даже не hashpower связанных двойные тратит.
Почему бы просто не позволить "большинство побед хеширования мощности"?
"большинство побед хеширования мощности" Концепция используются для решения расколов / не трудно реорганизации; вилки. Это создало бы плохой прецедент. По существу шахтеры на v0.8 узле уедет потенциальных пользователей v0.7 уязвимы для атак, чтобы сэкономить несколько блоков награды. Так как не-горнодобывающие узлы (пользователи) работают v0.7 никогда не будет принимать колодку # 225433 произведенного v0.8 они не будут иметь метод, чтобы воссоединиться с длинной цепью не хватает модернизации. пользователи v0.8 (не шахтеры) будут принимать блоки, произведенные v0.7. Имея несколько шахтеров понижают до v0.7 его "воссоединиться" сеть в короткий период времени с минимальным количеством требуемых изменений.
Что делать, если операторы разработчиков / пула не смогли достичь консенсуса? Будет ли это уничтожили Bitcoin?
Нет. V0.8 цепь будет продолжаться. Пользователям v0.7 будет настоятельно рекомендовано немедленно прекратить все операции и обновления. Пользователи на v0.7 клиентов останутся (чаще) уязвимы для различных атак, если активно участвовать в сделках, пока они не обновлены. В конце концов, все пользователи будут модернизировать и сети продолжили бы с v0.7 ветвь будучи oprhaned сайдчейн. Потенциальная угроза для активных пользователей v0.7 бы сделать это менее чем оптимальная, но сеть в целом никогда не была в какой-либо опасности отказа.
Был ли реальный риск 51% атаки на главной цепи?
На самом деле, нет. V0.8 цепи была примерно 60% от мощности хеширования так, чтобы удвоить потратить эту цепь требует более хеширования энергии, чем 60% от сети Bitcoin. В то время как 60% меньше, чем на 100% это все еще ошеломляющее количество хэширования мощности. Любая malicous актер строит из сети, которая в целом не будет останавливаться и ждать удаленной вероятность того, что 60% будет достаточно. Любой человек с таким количеством времени и ресурсов будет планируют чрезмерно застраивать всю сеть и атаку.
Какие риски были там для пользователей v0.7 вилки?
Самый большой риск был бы от 51% атаки а. Первоначально v0.7 вилка была относительно хорошо защищена, но если бы она была оставлена в пользу расширения v0.8 цепи, что хэш мощность упала бы в течение долгого времени. Чем дольше пользователь остается активным в сети v0.7 тем больше опасности, что они будут в. В конце концов хэширования мощность снизится до уровня, при котором даже небольшой бассейн может быть легко выполнен двойным тратит.
Пользователи на v0.7, в конечном счете (100 блоков после развилки) подвергаются риску принести двойной потраченный на вновь образованных монет. Монеты будут подтвердить, но как только они повышены до v0.8, что сделка никогда не будет существовать (как блок его производства и никогда не существовал). пользователи v0.7, которые вняли оповещение ключа предупреждения и засыпали все сделки никогда не были в какой-либо значительной опасности.
Наконец умный взломщик с хорошим временем мог бы казнен "нет хеширования мощности" двойные проводит в отношении уязвимых пользователей v0.7 (которые по-прежнему участвовать в активных операциях, несмотря на предупреждения ключа предупреждения). Упрощенная версия этой атаки будет работать, как это. Как хэшировании питания v0.7 вилки упала, скорость генерации блока замедлится и количество сделок в пуле памяти увеличится. Злоумышленник может использовать этот дифференциал, создавая большое количество низких / нет платных транзакций и ждать, пока некоторые из них, чтобы быть принятым в v0.8 блоков. Сеть Bitcoin в конечном итоге забыть о неподтвержденных транзакций, как они получают достаточно стар, чтобы выпасть из пула памяти. Обычно клиент будет ретранслировать неподтвержденный транзакцию периодически, но в этом случае клиент атакующего будет видеть сделку подтвердил. Злоумышленник может ускорить этот процесс, но производит большое количество несвязанных сделок. Когда ТЕ в v0.8 блоках были исключены из пула v0.7 памяти атака может дважды провести жертва в сети v0.7.