Глоссарий / Транзакции и комиссии
Подтверждение
Другие названия: Число подтверждений, Подтверждения, Подтвержденная транзакция, Неподтвержденная транзакция, Confirmation.
- Что такое подтверждение?
- Подтверждение представляет собой один блок доказательства работы, добавленный поверх блока, который содержит вашу транзакцию, поэтому у платежа в самом последнем блоке имеется ровно одно подтверждение.
Подтверждения показывают, насколько дорого отменить платеж, а не как долго он существует. Блоки в среднем появляются примерно каждые десять минут, поэтому шесть блоков обычно требуют около часа. Биржи превращают это число в правило зачисления, поэтому пополнение может быть видно в сети и при этом оставаться недоступным на вашем счете.
Как это работает
Подсчет представляет собой простую арифметику с высотами блоков. Возьмите высоту верхушки цепи, вычтите высоту блока, содержащего вашу транзакцию, прибавьте единицу, и получите число подтверждений. У транзакции, которая еще ждет в пулах памяти, оно равно нулю, и число растет само по себе, пока майнеры надстраивают блоки сверху.
Число подтверждений представляет собой замаскированную оценку стоимости. Переписать историю означает заново выполнить доказательство работы в вашем блоке и во всех блоках над ним быстрее, чем остальная сеть продлевает честную цепь. В разделе 11 белой книги биткоина рассчитаны вероятности и найдено решение для вероятности провала ниже 0,1 процента: пяти блоков достаточно против атакующего с 10 процентами хешрейта, двадцати четырех блоков против 30 процентов и 340 блоков против 45 процентов. Привычная цифра шесть представляет собой округленный вверх ответ на конкретную модель угрозы, а не закон.
Неглубокие отмены реальны, хотя и редки. В марте 2013 года блок, который более старое программное обеспечение не могло обработать, разделил сеть на две части, и ветвь, несшая примерно 60 процентов вычислительной мощности, была намеренно оставлена, когда два крупных пула откатили свои узлы на предыдущую версию, чтобы восстановить единую цепь. BIP50 является разбором этого случая, и в нем зафиксировано, что биржи приостанавливали пополнение, пока длилось разделение, и что за это время была проведена одна двойная трата. Гонки между майнерами, которые публикуют действительные блоки с разницей в мгновения, встречаются гораздо чаще и разрешаются в течение нескольких минут.
Протокол высказывает собственное мнение в одном месте. Выход coinbase нельзя потратить, пока над ним не будет построено 100 блоков, примерно 16 часов и 40 минут, и это встроенный ответ сети на вопрос, какая глубина делает новые созданные деньги достаточно безопасными для перемещения.
Время между блоками представляет собой среднее значение, а не расписание. Майнинг является случайным поиском, поэтому блоки могут появляться с интервалом в секунды или оставлять час тишины, и именно корректировка сложности каждые 2016 блоков возвращает долгосрочное среднее к десяти минутам.
Почему это важно при покупке биткоина
Правила пополнения устанавливаются каждой платформой отдельно, а торговать тем, что не зачислено, нельзя. Kraken, Coinbase и Binance публикуют число подтверждений, которое каждая из них требует, прежде чем пополнение в биткоине станет торговым балансом, и это ожидание добавляется ко всему времени, которое ваша транзакция провела в пуле памяти. Тому, кто планирует продавать на движущемся рынке, стоит перевести биткоины на площадку до того, как он намерен действовать, а не во время этого.
Та же задержка действует и в обратном направлении и застает людей врасплох в худший момент. Вывод, запрошенный во время скачка комиссий, может оставаться неподтвержденным часами, и это одна из причин, по которым Strike и Kraken поддерживают выплаты через Lightning, где расчет происходит немедленно и подтверждения не являются частью процесса.
При личных сделках и одноранговой торговле число подтверждений действительно важно. На площадке вроде Paxful эскроу защищает покупателя, а не вас; если вы передаете наличные, товары или банковский перевод, делайте это после подтверждений, а не после того, как увидели идентификатор. Биткоин-банкоматы намеренно поступают наоборот: выдают средства при нуле подтверждений и закладывают риск в спред, который часто составляет несколько процентов.
Хранение является простым случаем. Биткоины, уже находящиеся в вашем собственном кошельке, не требуют наблюдения, потому что глубина только накапливается. Как только покупка у Bitpanda или Relai поступила и прошла несколько блоков, никаких дальнейших действий больше не требуется.
Что на самом деле дают шесть подтверждений
Возьмите покупку на 20 000 $, которая зачисляется в ваш собственный кошелек. При нуле подтверждений платеж существует только в пулах памяти и может быть заменен отправителем, поскольку полный режим replace-by-fee является политикой ретрансляции по умолчанию в современных версиях Bitcoin Core. При одном подтверждении он находится в блоке, и для его отмены атакующему нужно превзойти по майнингу всю сеть, начав с отставания в один блок.
К шести подтверждениям собственные цифры белой книги оценивают вероятность того, что атакующий с 10 процентами догонит цепь, как значительно меньшую, чем один к тысяче, а стоимость попытки складывается из электроэнергии и оборудования, чтобы превзойти по хешрейту весь мир в течение часа. Для личного перевода сбережений одного подтверждения уже более чем достаточно. Для расчета на 20 млн $ между организациями шесть является общепринятой нормой именно потому, что модель атакующего там крупнее.
Число подтверждений нельзя и ускорить. Повышение комиссии ускоряет первое подтверждение, поскольку оно поднимает вас в очереди, которую сортируют майнеры; второе не ускоряет ничего, потому что этот блок все равно появится примерно через десять минут, кто бы вы ни были.
Подтверждение vs высота блока
Высота блока считает блоки от блока генезиса, поэтому она только растет и одинакова для всех. Подтверждения относительны: они считают расстояние между транзакцией и текущей верхушкой цепи, поэтому платеж непрерывно получает подтверждения, тогда как высота его блока никогда не меняется. Обозреватель блоков, показывающий «блок 900 000» и «412 подтверждения», сообщает вам, где находится транзакция и насколько глубоко она погружена.
Подтверждение vs реорганизация цепи
Подтверждения являются защитой; реорганизация цепи представляет собой событие, от которого они защищают. Когда два майнера публикуют действительные блоки одновременно, одна ветвь отбрасывается, и ее транзакции возвращаются в пулы памяти, поэтому платеж с одним подтверждением может ненадолго вернуться к нулю. Это нормальное поведение сети, а не атака, и именно поэтому глубина важна: каждый дополнительный блок делает ветвь, содержащую ваш платеж, труднее отбросить.