Python 블록 체인-Genesis 블록 생성
우리는 TPCoins의 창시자가 처음에 알려진 클라이언트에게 500 개의 TPCoin을 제공한다고 가정합니다. Dinesh. 이를 위해 그는 먼저 Dinesh 인스턴스를 만듭니다.
Dinesh = Client()
그런 다음 제네시스 트랜잭션을 생성하고 500 개의 TPCoin을 Dinesh의 공개 주소로 보냅니다.
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
마지막으로 다음 장에서 볼 수 있듯이 블록 체인을 만듭니다.