Для транзакции, не тратящей выходные данные SegWit, все просто: если у меня установлена 1000
комиссия Satoshi за 500
необработанную байтовую транзакцию, я получаю 2
комиссию s/b.
Как насчет транзакции, содержащей данные свидетеля?
Скажем, моя необработанная транзакция — это 500
байты, 100
байты которых являются данными-свидетелями. Таким образом, 400
байты теперь конкурируют за место в 1-мегабайтном блоке.
Насколько точно можно сказать, что текущая комиссия за транзакцию равна 1000 / 400 = 2.5
s/b?
Скажем, моя необработанная транзакция занимает 500 байт, 100 байт из которых являются данными-свидетелями. Таким образом, за место в 1-мегабайтном блоке теперь конкурируют 400 байт.
Это неправильно.
SegWit заменяет концепцию размера и максимального размера блока на вес . Вес транзакции определяется как 3 умноженный на stripped_size в байтах (исключая свидетеля) плюс total_size в байтах (включая свидетеля). Максимальный вес всех транзакций в блоке — 4 000 000. Это единственное ограничение, которое имеет значение. Из-за того, как построена формула веса, она подразумевает, что старое правило (stripped_size <= 1000000) всегда выполняется. Майнеры стараются получить как можно больше комиссионных за лимит веса, который у них есть, и в результате оптимизируют комиссию за вес .
Таким образом, размеры транзакций больше не имеют значения. Важен их вес. К сожалению, между ними существует коэффициент масштабирования 4, поэтому вы не можете легко преобразовать ставки до SegWit в после. По этой причине было введено понятие vsize (виртуальный размер). Он равен весу/4. Для не-SegWit-транзакций их размер и vsize идентичны. Теперь самый простой способ выразить комиссию — увидеть ее в виде BTC на vbyte (vsize byte).
Насколько точно сказать, что текущая комиссия за транзакцию составляет 1000 / 400 = 2,5 с/б?
В вашем примере вес вашей транзакции составляет 3 * 400 + 500 = 1700. Это означает, что ее размер составляет 425 байт. В результате его скорость составляет 1000 / 425 = 2,35 сат/вбайт, и он будет конкурировать с другими транзакциями на этом уровне.
Устаревший выходной размер: 34 байта (сжатый)
Размер ввода Segwit: 104 байта
поэтому, если ваша транзакция имеет два входа и один общий размер вывода составляет ~ 246 байт, не забудьте еще о нескольких дополнительных байтах для заголовка транзакции.
Средний Джо
зона
Питер Уилле