Насколько я понимаю, сложность, требуемая доказательством работы в биткойнах, является функцией истории блоков, в частности, среднего времени между последними ~ 2000 блоками, с намерением, чтобы оно колебалось около 10-минутной отметки.
Функция использует отметку времени создания блока. Мне приходит в голову, что когда узлы вычисляют блоки, у них есть стимул завышать отметку времени (потому что тогда сложность будет пересчитана, чтобы обеспечить более быструю добычу новых блоков, что приведет к более высокой скорости, с которой этот узел получает вознагражденные биткойны). ).
В протоколе указано, что узлы должны отклонять блоки, временные метки которых выглядят недействительными (например, слишком далеко в будущем), но опять же он полагается на честность узлов.
Короче говоря, каковы стимулы для майнеров не завышать метки времени? Прав ли я, думая, что если бы большинство майнеров/узлов вступили в сговор, завышая + не отклоняя неверные временные метки, тогда вся биткойн-сеть начала бы генерировать биткойны быстрее?
Примечание. Мне кажется, что по мере того, как общий пул биткойнов увеличивается + ставка вознаграждения уменьшается вдвое каждые 4 года, это «ускорение» генерации блоков биткойнов оказывает все меньше и меньше влияния.
Отметка времени считается действительной, если она больше средней отметки времени предыдущих 11 блоков и меньше установленного сетью времени + 2 часа. «Время, скорректированное сетью» — это среднее значение временных меток, возвращаемых всеми подключенными к вам узлами.
Всякий раз, когда узел подключается к другому узлу, он получает от него метку времени UTC и сохраняет свое смещение от локального UTC узла. В этом случае время, скорректированное сетью, представляет собой локальный UTC узла плюс среднее смещение от всех подключенных узлов. Однако сетевое время никогда не корректируется более чем на 70 минут по сравнению с локальным системным временем.
Итак, если вы хотите, чтобы ваш блок был принят другими узлами, вы не будете возиться с чем-то, что близко к отклонению от текущего времени на два часа.
Но протоколу все равно, сколько блоков добывается, он будет использовать только те длительности последних 2016 блоков, чтобы регулировать сложность, когда происходит это периодическое событие.
Основным фактором для пулов является то, что если они это сделают, их блоки могут быть отклонены сетью и честными узлами. Это будет означать не только потерю прибыли для пула и майнеров, но и потерю доверия. Оба этих фактора могут привести к тому, что пул потеряет своих майнеров и вычислительную мощность.
пользователь5107
морсекодер