TGStat
TGStat
Введите текст для поиска
Расширенный поиск каналов
  • Язык сайта
    flag Russian flag English flag Uzbek
  • Вход на сайт
  • Каталог
    Каталог каналов и чатов Региональные подборки Тематические подборки Платные каналы Поиск каналов
    Добавить канал/чат
  • Рейтинги
    Рейтинг каналов Рейтинг чатов Рейтинг публикаций
    Рейтинги брендов и персон
  • Аналитика
  • Поиск по публикациям
  • Мониторинг Telegram
  • Продвижение
    Реклама через Яндекс Бизнес Реклама в каналах через TGStat Agency Реклама на сайте TGStat.ru
Блокчейн & Разработка

5 Mar 2020, 17:09

Открыть в Telegram Поделиться Пожаловаться

На днях в сети Биткоина был добыт «брошенный» блок (stale block). На картинке выше это блок справа, он был добыт на 4 секунды быстрее, чем блок слева, который и продолжил цепочку. Почему это происходит?

Каждый майнер добывает свой блок, но блоки эти практически одинаковы, т. к. майнеры пользуются одинаковым софтом для майнинга и руководствуются одинаковыми (наиболее оптимальными и прибыльными) правилами для построения блоков и включения в них транзакций. Блок справа абсолютно валиден и практически ничем не отличается от блока слева. Он стал брошенным, потому что:
1. Майнер, добывший блок 619 971, получил левый блок раньше, чем правый.
2. Этот же майнер смог добыть новый блок быстрее, чем те майнеры, которые получили правый блок.

Если два блока добываются практически одновременно в разных концах мира (либо ещё какая-то задержка в рассылке блоков), то майнеры получают разные блоки. И, как только они их получат, они сразу начнут майнить новый блок. В итоге выиграет цепочка с самым большим количеством блоков.

По сути, это микроразделение сети, микрофорк. И это тот случай, когда одного подтверждения транзакции недостаточно. Представьте такую ситуацию:
1. Вы покупаете что-то за биткоины.
2. Магазин требует одно подтверждение транзакции.
3. Вы оплачиваете, получаете подтверждение, магазин передаёт вам товар.
4. Происходит микроразделение, добывается новый блок с тем же номером, но чуть другим списком транзакций. И вашей транзакции в нем нету.
5. У вас на руках биткоины и товар. Магазин понёс потери.

Это как раз и есть пример двойной траты. Но справедливости ради стоит сказать, что двойная трата будет возможна только до следующего добытого блока: ваша транзакция неизбежно попадёт в следующий блок, и биткоины будут потрачены. Возможно, единственный вариант провести полноценную двойную трату возможен только с помощью Replace by fee транзакции: такие транзакции позволяют менять параметры отправленной, но ещё не добытой, транзакции с обязательным повышением комиссии. Можно поменять получателя транзакции (переправить её себе) пока она ещё не была добыта. Теоретически это возможно, но практически это нужно ждать подходящего случая и покупать что-то в каждом блоке.

924 3 10
Каталог
Каталог каналов и чатов Подборки каналов Поиск каналов Добавить канал/чат
Рейтинги
Рейтинг каналов Telegram Рейтинг чатов Telegram Рейтинг публикаций Рейтинги брендов и персон
API
API статистики API поиска публикаций API Callback
Наши каналы
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Почитать
Академия TGStat Исследование Telegram 2019 Исследование Telegram 2021 Исследование Telegram 2023
Контакты
Справочный центр Поддержка Почта Вакансии
Всякая всячина
Пользовательское соглашение Политика конфиденциальности Публичная оферта
Наши боты
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot