Browse Source

Add data to blocks (in progress)

golang
garritfra 6 years ago
parent
commit
96b2f2fd87
  1. 5
      Block.go
  2. 2
      Blockchain.go
  3. 5
      main.go

5
Block.go

@ -12,10 +12,11 @@ type Block struct {
Timestamp time.Time
Hash []byte
PreviousHash []byte
Data []byte
}
func newBlock(previousHash []byte) Block {
block := Block{Timestamp: time.Now(), PreviousHash: previousHash}
func newBlock(previousHash []byte, data []byte) Block {
block := Block{Timestamp: time.Now(), PreviousHash: previousHash, Data: data}
block.calculateHash()

2
Blockchain.go

@ -20,6 +20,6 @@ func newBlockchain() Blockchain {
}
func generateGenesisBlock() Block {
block := newBlock([]byte{})
block := newBlock([]byte{}, []byte("Genesis"))
return block
}

5
main.go

@ -8,10 +8,10 @@ import (
func main() {
blockchain := newBlockchain()
block := newBlock(blockchain.blocks[0].Hash)
block := newBlock(blockchain.blocks[0].Hash, []byte("I am the first block!!"))
blockchain.addBlock(block)
block = newBlock(blockchain.blocks[1].Hash)
block = newBlock(blockchain.blocks[1].Hash, []byte("This is number two"))
blockchain.addBlock(block)
for i := 0; i < len(blockchain.blocks); i++ {
@ -20,7 +20,6 @@ func main() {
fmt.Println("Block " + string(i))
fmt.Println(hex.EncodeToString(block.PreviousHash))
fmt.Println(hex.EncodeToString(block.Hash))
fmt.Println(block.Timestamp)
fmt.Println()
}

Loading…
Cancel
Save