diff options
author | Pieter Wuille <pieter.wuille@gmail.com> | 2015-11-17 17:35:40 +0100 |
---|---|---|
committer | Pieter Wuille <pieter.wuille@gmail.com> | 2015-11-27 15:31:01 +0100 |
commit | ee60e5625bf8a11c8e5509b9cea8b6465056c448 (patch) | |
tree | 4369d0745993de5ee1b347d67bd37f6284b753a3 /src/consensus/merkle.h | |
parent | 93e0514fd083971dcef1fea8d107895244270f4c (diff) |
Add merkle.{h,cpp}, generic merkle root/branch algorithm
Diffstat (limited to 'src/consensus/merkle.h')
-rw-r--r-- | src/consensus/merkle.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/consensus/merkle.h b/src/consensus/merkle.h new file mode 100644 index 0000000000..7fd13d3e43 --- /dev/null +++ b/src/consensus/merkle.h @@ -0,0 +1,17 @@ +// Copyright (c) 2015 The Bitcoin Core developers +// Distributed under the MIT software license, see the accompanying +// file COPYING or http://www.opensource.org/licenses/mit-license.php. + +#ifndef BITCOIN_MERKLE +#define BITCOIN_MERKLE + +#include <stdint.h> +#include <vector> + +#include "uint256.h" + +uint256 ComputeMerkleRoot(const std::vector<uint256>& leaves, bool* mutated = NULL); +std::vector<uint256> ComputeMerkleBranch(const std::vector<uint256>& leaves, uint32_t position); +uint256 ComputeMerkleRootFromBranch(const uint256& leaf, const std::vector<uint256>& branch, uint32_t position); + +#endif |