Блок
Блок — пачка транзакций биткоина, которая добавляется в цепочку примерно раз в десять минут. Майнер, нашедший его, получает новые монеты и комиссии.
Коротко
Пачка транзакций, добавляемая в цепочку примерно раз в 10 минут.
Что внутри
Блок — это заголовок и список транзакций. Первая транзакция — coinbase: у неё нет входов, и она платит майнеру субсидию и все комиссии. Остальные — обычные платежи из мемпула, которые обычно выбирают по наибольшей ставке комиссии.
После SegWit (BIP 141) размер блока считают в весе: не более 4 000 000 единиц, где байты без подписей считаются вчетверо, а байты witness (подписи) — один раз. На практике это блоки до ~4 МБ, обычно 1,5–2 МБ.
Время
Блоки приходят случайно: десять минут — только среднее. Пересчёт сложности каждые 2016 блоков возвращает среднее к десяти минутам, когда майнеры приходят или уходят.
См. также
- БлокчейнБлокчейн — общая история платежей биткоина: цепочка блоков, где каждый блок ссылается на предыдущий. Изменение старого блока разорвало бы все звенья после него.
- МайнингМайнинг — работа по добавлению новых блоков в биткоин. Майнеры запускают специальные компьютеры (ASIC), которые подбирают числа; победитель каждого раунда получает субсидию за блок и комиссии.
- МемпулМемпул — зал ожидания для платежей: отправленные, но ещё не попавшие в блок транзакции. Майнеры обычно берут сначала те, что платят больше всего за байт.
- ХалвингКаждые 210 000 блоков, примерно раз в четыре года, количество новых биткоинов, которые майнер получает за блок, уменьшается вдвое. Так эмиссия биткоина ограничивается 21 миллионом.
- SegWit (Segregated Witness)SegWit — обновление 2017 года, которое вынесло подписи в отдельную часть транзакции. Оно исправило давнюю ошибку, освободило место для большего числа транзакций и открыло дорогу Lightning Network.
- Генезис-блокГенезис-блок — блок 0, первый блок биткоина, смайненный Сатоши Накамото 3 января 2009 года. В нём записан газетный заголовок о спасении банков.
Источники
- BIP 141 (github.com/bitcoin/bips) github.com
- Bitcoin developer reference: block headers developer.bitcoin.org