parent
800cdb575d
commit
4cd5370f9c
@ -1,10 +1,5 @@ |
||||
{ |
||||
"workbench.colorTheme": "Solarized Light", |
||||
"npm.enableScriptExplorer": true, |
||||
"window.zoomLevel": 3, |
||||
"editor.tabSize": 4, |
||||
"editor.insertSpaces": true, |
||||
"editor.detectIndentation": false, |
||||
"editor.tabCompletion": true, |
||||
} |
||||
|
||||
"window.zoomLevel": 1, |
||||
} |
@ -1,40 +1,41 @@ |
||||
package main |
||||
|
||||
import ( |
||||
"bytes" |
||||
"crypto/sha256" |
||||
"encoding/gob" |
||||
"log" |
||||
"bytes" |
||||
"crypto/sha256" |
||||
"encoding/gob" |
||||
"log" |
||||
) |
||||
|
||||
// Transaction represents a Bitcoin transaction
|
||||
type Transaction struct { |
||||
id []byte |
||||
txInput []TXInput |
||||
txOutput []TXOutput |
||||
id []byte |
||||
txInput []TXInput |
||||
txOutput []TXOutput |
||||
} |
||||
|
||||
type TXOutput struct { |
||||
address string |
||||
value int |
||||
address string |
||||
value int |
||||
} |
||||
|
||||
type TXInput struct { |
||||
txId []byte |
||||
txOutputIndex int |
||||
address string |
||||
txId []byte |
||||
txOutputIndex int |
||||
address string |
||||
} |
||||
|
||||
// SetID sets ID of a transaction
|
||||
func (tx *Transaction) SetId() { |
||||
var encoded bytes.Buffer |
||||
var hash [32]byte |
||||
var encoded bytes.Buffer |
||||
var hash [32]byte |
||||
|
||||
enc := gob.NewEncoder(&encoded) |
||||
err := enc.Encode(tx) |
||||
if err != nil { |
||||
log.Panic(err) |
||||
} |
||||
hash = sha256.Sum256(encoded.Bytes()) |
||||
tx.ID = hash[:] |
||||
enc := gob.NewEncoder(&encoded) |
||||
err := enc.Encode(tx) |
||||
if err != nil { |
||||
log.Panic(err) |
||||
} |
||||
hash = sha256.Sum256(encoded.Bytes()) |
||||
tx.ID = hash[:] |
||||
} |
||||
|
||||
|
Loading…
Reference in new issue