Почему временные метки в цепочке блоков всегда увеличиваются?

Временные метки, начинающиеся с блока 145044:

145044: 2011-09-12 15:46:39     
145045: 2011-09-12 16:05:07 
145046: 2011-09-12 16:00:05 // ~5 minutes before prior block
145047: 2011-09-12 15:53:36 // ~7 & ~12 minutes before 2 prior blocks
145048: 2011-09-12 16:04:06 // after 2 prior blocks but still before 145045

Как это происходит?

22 голоса | спросил Mocky 12 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowMon, 12 Sep 2011 21:20:45 +0400 2011, 21:20:45

4 ответа


19

Из wiki :

  

Временная метка считается действительной, если она больше, чем средняя   временные метки предыдущих 11 блоков и меньше, чем настроенные сетью   время + 2 часа. «Время, скорректированное по сети», является медианом   временные метки, возвращаемые всеми связанными вами узлами.

     

Всякий раз, когда узел подключается к другому узлу, он получает временную метку UTC из   он и сохраняет смещение от локального UTC-узла. Настройка сети   время - это локальный UTC-узел и среднее смещение от всех   связанных узлов. Сетевое время никогда не настраивается более 70 минут   от локального системного времени.

Не очевидно, что нет никаких проблем с этим способом timestamping. См. Сообщение в блоге Timejacking & Биткойн и обсуждение этого вопроса здесь .

ответил D.H. 12 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowMon, 12 Sep 2011 21:34:12 +0400 2011, 21:34:12
12

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

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

ответил David Schwartz 13 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowTue, 13 Sep 2011 23:49:03 +0400 2011, 23:49:03
7

Как минимум один пул горных работ намеренно устанавливает отметки времени 6 минут в будущем и Блок 145045 появляется от Eligius (транзакция генерации разделена на несколько адресов).

ответил jarpiain 12 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowMon, 12 Sep 2011 21:49:00 +0400 2011, 21:49:00
6

Я считаю, что временная метка основана на машине, на которой размещен клиент биткойнов, который отправил этот блок, и дисперсия разрешена, так как не каждый из них правильно синхронизировал свое компьютерное время.

ответил tysat 12 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowMon, 12 Sep 2011 21:25:18 +0400 2011, 21:25:18

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132