summaryrefslogtreecommitdiff
path: root/src/blocks.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/blocks.rs')
-rw-r--r--src/blocks.rs12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/blocks.rs b/src/blocks.rs
index 67af3f1..1097626 100644
--- a/src/blocks.rs
+++ b/src/blocks.rs
@@ -58,10 +58,14 @@ impl Block {
unreachable!()
}
- pub fn verify_pow(&mut self) -> bool {
- let mut hasher = Sha256::new();
- Digest::update(&mut hasher, bincode::encode_to_vec(&*self, bincode::config::standard()).unwrap());
- Self::pref_zeros(&hasher.finalize()).is_ok()
+ pub fn verify_pow(&self) -> bool {
+ if let Some(nonce) = self.pow {
+ let mut hasher = Sha256::new();
+ Digest::update(&mut hasher, bincode::encode_to_vec((&self.prev_hash, &self.trans, nonce), bincode::config::standard()).unwrap());
+ Self::pref_zeros(&hasher.finalize()).is_ok()
+ } else {
+ false
+ }
}
pub fn calc_set_pow(&mut self) {