Если я правильно понимаю, устаревший блок — это блок, для которого было найдено более раннее подтверждение и которое было принято большинством людей. Этот блок считается недействительным и в дальнейшем никогда не используется.
Но что такое осиротевший блок. Как он создается? Как проверяется, что он потерян, и что делается с потерянным блоком?
В любую секунду блок может быть «решен». Это означает, что все остальные в мире, работающие над этим блоком, должны остановиться и возобновить свою работу. Продолжение работы после этого момента известно как работа над «устаревшим блоком», потому что это старые данные и старые транзакции.
Насколько я понимаю, термин «устаревшие» гораздо чаще применяется к общим ресурсам при майнинге в пуле, поэтому вы, скорее всего, услышите об устаревших общих ресурсах, чем об устаревших блоках. В этом случае пул, вероятно, даже не стал бы проверять, действительно ли общий ресурс решил блок или нет.
Блоки Detached или Orphaned являются действительными блоками, которые не являются частью основной цепочки. Они могут возникать естественным образом, когда два майнера производят блоки в одно и то же время, или они могут быть вызваны злоумышленником (с достаточной вычислительной мощностью), пытающимся отменить транзакции.
Насколько я понимаю, потерянные блоки изначально принимаются большей частью сети, но позже отклоняются, когда получено доказательство более длинной цепочки блоков, которая не включает этот конкретный блок.
Это означает, что пользователь может увидеть транзакцию как имеющую одно подтверждение, а затем, если будет получен более длинный блокчейн, не включающий транзакцию, он может вернуться к 0 подтверждениям.
Есть несколько определений с перекрывающимися значениями.
Первый, пожалуй, лучше всего назвать вымершими блоками. Это блоки, которые были созданы путем построения блока, который больше не является активным концом цепочки. Некоторые узлы могли в какой-то момент счесть его лучшим блоком, но они переключились на другую цепочку, которая больше не содержит соответствующего блока. Они действительны, проверены, и их происхождение до блока генезиса полностью известно — просто в настоящее время они не «активны». Их иногда называют устаревшими блоками (обычно в контексте программного обеспечения для майнинга, понимающего, что оно построено на старых данных) или блоками-сиротами. Последнее название происходит от того факта, что выплаты из вымерших блоков обозначаются как «осиротевшие» в эталонном клиенте (имея в виду тот факт, что их транзакции на базе монет теперь лишены родительских прав).
Однако существуют и настоящие сиротские блоки, где сиротство имеет исходное значение «не имеющий родителя». Это блоки, полученные узлом, который еще не имеет полного предка и, следовательно, не может быть проверен. Узлы сохраняют такие блоки в памяти, при этом просят своих пиров заполнить пробел в своей истории. Клиент их не показывает, поэтому, когда люди говорят о блоках-сиротах, они, скорее всего, имеют в виду вымершие блоки. Обратите внимание, что начиная с Bitcoin Core v0.10 таких блоков-сирот больше нет из-за значительного изменения механизма загрузки.
Терминология здесь запутанная :)
Сироты не находятся в цепочке (с точки зрения обрабатывающего узла), потому что их родители отсутствуют, устаревшие не находятся в цепочке, потому что у них нет дочерних элементов в цепочке.
Источник: глоссарий на bitcoin.org:
устаревшие блоки : «Блоки, которые были успешно добыты, но не включены в текущую лучшую цепочку блоков, вероятно, потому, что какой-то другой блок той же высоты сначала расширил свою цепочку».
и блоки-сироты : «Блоки, родительский блок которых не был обработан локальным узлом, поэтому они еще не могут быть полностью проверены».
Оба ответа неплохие и хорошо объясняют концепцию потерянного блока ( или более точное название, согласно Питеру Вуили: вымершие блоки ). Я просто хочу дать конкретное представление будущим читателям, которые, как и я, могут также захотеть взглянуть на настоящие блоки-сироты в цепочке Биткойн :)
На веб-сайте blockchain.info есть некоторые подробные записи для этих потерянных блоков . Если вы нажмете на высоту блока, для вас будет даже информация о заголовке этих потерянных блоков, например, потерянный блок 503949 , добытый SlushPool.
Он также имеет представление статистики потерянных блоков , я загружаю его историю csv и могу рассчитать , что скорость потерянных блоков Биткойн составляет около 0,31% (с 2014/3/18 по 2017/6/14). Excel файл со статистикой здесь .
Юрген Штробель