Проблема расчета времени подтверждения транзакции в основном заключается в несогласованности периода выпуска новых блоков. Если бы блоки выходили ровно каждые 10 минут (даже с ошибкой в 1-2 минуты), то можно было бы относительно точно оценить время, по истечении которого транзакция получит 1 подтверждение. На самом деле блоки биткойнов могут выходить за период от 1 минуты до 2 часов, и количество новых транзакций в этот период может поступать больше, что значительно увеличивает нагрузку на сеть.
Даже при отправке транзакции с высокой комиссией никто не может быть уверен, что через 10-20 минут эта комиссия не перестанет быть актуальной. В эту ситуацию может попасть кто угодно: и отправитель, и получатель. Используя биткойн, нужно понимать, как работает сеть, и принимать правила ее работы.
Если вы отправили транзакцию, но она все еще не подтверждена, скорее всего, она находится в «очереди» - мемпуле биткойнов и ожидает, что майнеры включат ее в блок. Позиция в мемпуле зависит от того, на какую комиссию (комиссию за байт) вы отправили свою транзакцию - чем выше комиссия, тем быстрее будет проходить ваша транзакция.
Чтобы предсказать, как долго ваша транзакция будет подтверждена, зайдите на сайт проводника blockchair.com, введите идентификатор транзакции (TXID, хеш). Приведем пример для транзакции с хешем: b7f1813807462650e521b8d98a5da4fee9cfb80347cfefad96172e9f4ec64275
Итак, проводим расчет: число 1676 (приоритет нашей транзакции в мемпуле биткойнов) меньше числа 2500 (общее количество транзакций в блоке биткойнов), это означает, что наша транзакция будет проходить в следующий блок, или через 10 минут.
На практике приоритет транзакции постоянно меняется, потому что в сети появляется все больше и больше новых транзакций. А поскольку время выхода нового блока предсказать никто не может, рассчитать точное время подтверждения транзакции просто невозможно.