Каково минимальное время для получения первого подтверждения транзакции?

  1. Сколько времени нужно, чтобы получить первое подтверждение транзакции? Мне не нужно точное количество минут, просто полезное приближение.

    Я нашел этот график среднего времени подтверждения , но я не уверен, что это время только для первого подтверждения.

  2. Если транзакция не подтверждена, скажем, через n часов, будет ли она все это время находиться в списке getrawmempool?

Ответы (1)

  1. Время получения подтверждения зависит от комиссии за транзакцию, приоритета транзакции и скорости создания блока. В грядущей версии Биткойн 0.10 будут представлены два новых RPC, которые помогут вам оценить количество блоков, которые транзакция потребует для получения подтверждения на основе комиссии и приоритета (см. примечания ниже). Скорость создания блоков непредсказуема в течение коротких промежутков времени — один блок может быть найден через несколько секунд после предыдущего блока или может занять более часа. В течение более длительных промежутков времени он составляет в среднем около одного блока каждые 10 минут.

  2. Если транзакция когда-либо будет подтверждена, она должна находиться в пуле памяти какого-то майнера. Если она была передана полным узлом, в кошельке которого есть эта транзакция, она также будет находиться в пуле памяти этого узла. Если у вас есть доступ к любому из этих узлов, getrawmemorypoolтранзакция будет возвращена.

    Что касается того, находится ли он в пуле памяти любого другого узла, это зависит от того, распространился ли он на этот узел или нет — при условии, что он платит разумную плату и является стандартной транзакцией, он должен распространиться на большинство узлов в течение нескольких минут (см . ) и должен оставаться там до тех пор, пока узлы не отключатся.

Приложение

Вот пример нового estimatefeeRPC из Bitcoin Core 0.10. Аргумент 6гласит: «Скажите мне, сколько мне нужно заплатить за килобайт, чтобы сделать статистически вероятным, что моя транзакция будет включена в следующие 6 блоков»:

bitcoin-cli estimatefee 6
0.00026809

Вот пример нового estimatepriorityRPC. То же самое, за исключением того, что приоритет основан на байтах. (Вот ответ SE о приоритете .)

bitcoin-cli estimatepriority 6
728784383.01282048

А вот шанс найти блок за определенное количество минут:

Дисперсия http://dtrt.org/tmp/en-block-variance.png

Код для создания этого графика в gnuplot: plot [0:60] 1-exp(-1/(600./60)*x)где 600 — среднее количество секунд между блоками (10 минут), а 60 — количество секунд в минуте.

Отличный ответ, я как раз собирался сказать «около 9-10 минут», так как большинство стандартных транзакций включаются довольно быстро.