Почему в файле генезиса есть значение nonce и mixHash?

Я не могу полностью понять файл генезиса.

  1. Почему в файле есть значение nonce и mixHash, если ничего не добывается?
  2. У меня сложилось впечатление, что файл генезиса используется для начальной загрузки блока 0, вот и все. Если это так, то почему эти значения вообще существуют?
  3. Где я могу найти файл генезиса основной сети в geth? Что такое путь к файлу?

Ответы (1)

Во-первых, вы должны проверить это.

  • Почему в файле есть значение nonce и mixHash, если ничего не добывается?

Потому что нам нужно с чего-то начинать. Файл генезиса представляет собой описание цепочки перед блоком 0. Эта информация используется блоком 0 для запуска.

  • У меня сложилось впечатление, что файл генезиса используется для начальной загрузки блока 0, вот и все. Если это так, то почему эти значения вообще существуют?

в основном тот же ответ, что и выше :)

  • Где я могу найти файл генезиса основной сети в geth? Что такое путь к файлу?

В каждом дистрибутиве он разный. Нужно больше деталей.

«Потому что нам нужно с чего-то начать. Файл генезиса представляет собой описание цепочки до блока 0. Эта информация используется блоком 0 для начала». То есть сделать так, чтобы блок 0 выглядел как любой другой блок, потому что ему нужны эти значения, как и любому другому блоку? Если это так, то нет подтверждения того, что эти значения действительно работают с точки зрения алгоритма Ethash, верно? Кажется, туда можно положить что угодно.
Можете ли вы объяснить следующее: где находится файл генезиса основной сети в Geth? Подойдет любая последняя версия Если ВСЕ в моем файле генезиса основной сети одинаково, за исключением того, что у меня есть пустой alloc {}раздел, как моя цепочка узнает, какие транзакции происходят в блоке 0? Это важно : есть ли в основной сети genesis.json заполненный раздел alloc {}, и он точно соответствует транзакциям генезиса, показанным в блоке 0 Ethereum?
Сам не нашел, нет времени искать в инете. Если в файле генезиса есть выделенный адрес, в блоке 0 не будет никакой транзакции. Потому что это «виртуально» уже произошло (tx из блока 1000 больше не находится в блоке 1001, не имеет смысла)