Почему ethereum создает новый блок без какой-либо одной транзакции? [Дубликат]

    

У этого вопроса уже есть ответ:

    

У меня работает секретная цепочка Ethereum. Когда я устанавливаю один из узлов в шахту, этот узел непрерывно создает блоки, даже если внутри него нет транзакций. Какова цель этого?

17 голосов | спросил Heisenberg 5 +03002016-10-05T21:08:24+03:00312016bEurope/MoscowWed, 05 Oct 2016 21:08:24 +0300 2016, 21:08:24

3 ответа


16

Преимущество блочной цепи заключается в том, что она добавляется только с неизменными предыдущими блоками.

Эти прошлые блоки неизменяемы, потому что очень сложно (через доказательство работы) создать конкурирующий блок, который «перезаписывает историю». Кроме того, вы должны учитывать тот факт, что последующие блоки добавляют свои трудности. Таким образом, чтобы изменить блок в прошлом и быть принятым другими узлами, вам нужно изменить этот прошлый блок и все те, которые появились после этого.

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

Присвоение новых Эфиров стимулирует майнеров к защите прошлых блоков.

ответил Xavier Leprêtre B9lab 6 +03002016-10-06T11:57:25+03:00312016bEurope/MoscowThu, 06 Oct 2016 11:57:25 +0300 2016, 11:57:25
8

В общедоступной цепочке имеет смысл продолжать создавать блоки, потому что шахтер все равно получит вознаграждение за 5 ETH блоков, с или без транзакций внутри. Таким образом, гет будет постоянно продолжать, пока это сказано. Он не знает, что цепочка не является публичной. Можно написать скрипт для управления разработкой geth. См. этот вопрос.

Если вы ищете частный блок-код для тестирования dapps, симулятор, такой как testrpc , скорее всего, быть более подходящим, чем подлинный полный узел. testrpc только «мины», когда есть транзакция, и этот майнинг моделируется - фактическое хеширование не происходит.

ответил Matthew Schmidt 5 +03002016-10-05T22:44:42+03:00312016bEurope/MoscowWed, 05 Oct 2016 22:44:42 +0300 2016, 22:44:42
5

В ethereum blockchain мы создаем блоки каждый N раз (15 с), проверяем https://etherscan.io/charts /blocktime

мы делаем это для 2 целей:

1-include транзакции.

2 - генерировать новые Эфиры.

Если транзакция не включена или майнер отказывается включать их, он кладет новый блок без транзакций, но содержит вознагражденные эфиры.

, чтобы блок не содержал транзакций внутри него, но имейте в виду, что проверенный блок нуждается в некоторых подтверждениях (дополнительные блоки после него), чтобы быть более надежными [12 подтверждений для внесения «необратимых» изменений в данные].

ответил Badr Bellaj 6 +03002016-10-06T02:45:40+03:00312016bEurope/MoscowThu, 06 Oct 2016 02:45:40 +0300 2016, 02:45:40

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

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

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