From 56c9e3faa65b442a6207a836e4e7ab9fc44d59ec Mon Sep 17 00:00:00 2001 From: Wei Yang Date: Sun, 22 Oct 2017 10:53:22 +0800 Subject: [PATCH] add GetBalance to chain --- blockchain.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/blockchain.go b/blockchain.go index 60b1235..da5e78a 100644 --- a/blockchain.go +++ b/blockchain.go @@ -376,3 +376,16 @@ func (bc *Blockchain) PrintHTML() string { return strings.Join(lines, "\n") } + +func (bc *Blockchain) GetBalance(address string) int { + UTXOSet := UTXOSet{bc} + balance := 0 + pubKeyHash := Base58Decode([]byte(address)) + pubKeyHash = pubKeyHash[1 : len(pubKeyHash)-4] + UTXOs := UTXOSet.FindUTXO(pubKeyHash) + + for _, out := range UTXOs { + balance += out.Value + } + return balance +}