Я пытаюсь выяснить, как возник недопустимый блок и что происходит (технически) с действительными транзакциями в недопустимом блоке.
Насколько я понимаю, недействительные транзакции (например, трата больше ETH, чем баланс аккаунта) даже не попадут в блок. Так всегда ли это мошенничество или случайность (например, когда 2 майнера решают головоломку одновременно)?
Кроме того, когда блок оказывается недействительным, возвращаются ли включенные действительные транзакции в пул транзакций? Может кто-нибудь объяснить мне, как это работает? Кроме того, в случае двух майнеров, публикующих блок одновременно... включают ли они одни и те же транзакции, остаются ли они в пуле до тех пор, пока не произойдет ..x.. подтверждений?
Много вопросов, я просто немного не понимаю фактических причин «недействительного блока» и того, как система гарантирует, что все действительные транзакции по-прежнему будут включены в другой блок .
Благодарность!
Я пытаюсь понять, как мог появиться недопустимый блок
Майнер может создать недопустимый блок разными способами (например, поставив на него недопустимую временную метку), в том числе имея в блоке недопустимую транзакцию.
Но недопустимого блока в принципе не существует, потому что все остальные майнеры и узлы просто игнорируют этот блок.
Насколько я понимаю, недействительные транзакции (например, трата больше ETH, чем баланс аккаунта) даже не попадут в блок. Так это всегда мошенничество или случайность
Правильно, майнеры не будут включать недействительные транзакции в блок: они не получат от этого никакого вознаграждения. Недействительная транзакция, как правило, является мошенничеством или может быть создана с использованием ошибочного программного обеспечения. Как правило, действительная транзакция (которая еще не находится в блоке) всегда остается действительной: если Алиса выписывает чек для оплаты Бобу, чек всегда будет действительным: только Алиса может попытаться аннулировать чек, скажем, отправив все свои деньги Чарли. используя тот же контрольный номер.
когда блок оказывается недействительным, возвращаются ли включенные действительные транзакции в пул транзакций?
У каждого майнера есть собственный пул транзакций, и каждый из них может решить, какие транзакции включить в блок. Поскольку недопустимый блок просто игнорируется, майнеры и узлы будут хранить все транзакции в недопустимом блоке в своем пуле транзакций (они даже не знают, что в недопустимом блоке были транзакции, чтобы удалить их из пула в первую очередь). .
в случае, если два майнера публикуют блок одновременно... включают в себя одни и те же транзакции, остаются ли они в пуле до тех пор, пока не произойдет ..x.. подтверждений?
Как правило, нет, оба майнера не включают одни и те же транзакции. Случайно оба могут включать одни и те же транзакции, но каждый майнер может решить, что включать, и порядок транзакций. У каждого майнера и узла может быть собственное правило о том, когда транзакции будут удаляться из пула, так как это не является частью протокола.
Я просто немного не понимаю фактических причин «недействительного блока» и того, как система гарантирует, что все действительные транзакции по-прежнему будут включены в другой блок.
Недопустимый блок игнорируется, поэтому любые транзакции в нем не влияют на пул транзакций. Транзакции останутся в пуле, и, поскольку майнеры хотели бы получать комиссию за газ/транзакции, они, скорее всего, включат их в другой блок.
Сиг
эт
эт