[Перевод] Особенность протокола Bitcoin, которая привела к задержкам выводов Mtgox и общему переполоху

MtGox выступил с заявлением, что в связи с «проблемой» в протоколе Bitcoin, у них были задержки с выводом BTC и поэтому им пришлось прекратить все выплаты, пока причина не будет устранена. www.mtgox.com/press_release_20140210.html Если вам нужен быстрый ответ — нет ошибки в самом Bitcoin. Вы можете пойти на Bitstamp / Coinbase / btc-e и купить больше BTC с огромной скидкой, прежде чем курс вернется к $800 — $900… Длинный ответ: Неподтвержденные транзакции Bitcoin всегда были malleable (тягучими), то есть вы можете немного изменить транзакцию, которая «в подвешенном состоянии » (еще не в blockchain), и вы не нарушите свои подписи. Однако, невозможно изменить какие-то важные данные, такие как исходные операции, суммы, порядок входов и выходов, а также какие-то другие метаданные. То, что вы можете сделать, это добавить некоторые фиктивные данные, что не меняет сути сделки, но меняет ее содержание. Что это означает? Вы можете отправить ABC123 транзакцию, а кто-то может увидеть ее в сети и по тихому изменить, в результате чего ее вид чего будет — ABC124. Если ему повезет, то ABC124 будут включена первой, а исходная ABC123 никогда не будет включена (для предотвращения даблспендинга). Нет никаких проблем для получателя сделки — он все равно получат все свои деньги на адрес, на который он запросил вывод. Но если он будут наблюдать за транзакцией через blockchain специально, то ABC123, он никогда там уже не обнаружит. Читать дальше →

© Habrahabr.ru