Блокчейн Python - Создание блока Genesis
Мы предполагаем, что создатель TPCoins изначально выдает 500 TPCoins известному клиенту. Dinesh. Для этого он сначала создает экземпляр Dinesh -
Dinesh = Client()
Затем мы создаем транзакцию генезиса и отправляем 500 TPCoins на публичный адрес Динеша.
t0 = Transaction (
"Genesis",
Dinesh.identity,
500.0
)
Теперь мы создаем экземпляр Block класс и назовите это block0.
block0 = Block()
Мы инициализируем previous_block_hash и Nonce переменные экземпляра для None, поскольку это самая первая транзакция, которая будет храниться в нашей цепочке блоков.
block0.previous_block_hash = None
Nonce = None
Затем мы добавим указанную выше транзакцию t0 в verified_transactions список, который ведется внутри блока -
block0.verified_transactions.append (t0)
На этом этапе блок полностью инициализирован и готов к добавлению в нашу цепочку блоков. Для этого мы будем создавать блокчейн. Прежде чем добавить блок в цепочку блоков, мы будем хэшировать блок и сохранять его значение в глобальной переменной с именемlast_block_hashчто мы заявили ранее. Это значение будет использовать следующий майнер в своем блоке.
Мы используем следующие две строки кода для хеширования блока и хранения значения дайджеста.
digest = hash (block0)
last_block_hash = digest
Наконец, мы создаем блокчейн, как мы увидим в следующей главе.