aboutsummaryrefslogtreecommitdiff
path: root/src/hash.cpp
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2014-11-04 08:58:43 +0100
committerWladimir J. van der Laan <laanwj@gmail.com>2014-11-04 09:26:45 +0100
commit73b82a30892224b17aa1b9db9b6de4eeeb903b7f (patch)
tree0416c14ba1e546a85abc8ab71320bd3f6e5a62c7 /src/hash.cpp
parentff17816abf2d2be2b349c4ba4d49633a126074fa (diff)
parentd2e74c55bdd8cee6a0cca49aca0e2ab1a182c9b5 (diff)
downloadbitcoin-73b82a30892224b17aa1b9db9b6de4eeeb903b7f.tar.xz
Merge pull request #5162
d2e74c5 boost: moveonly: split CPubKey and friends to new files (Cory Fields) 78c228c boost: moveonly: move BIP32Hash to hash.h (Cory Fields) 900078a boost: moveonly: create eccryptoverify.h|cpp and move helper functions there (Cory Fields)
Diffstat (limited to 'src/hash.cpp')
-rw-r--r--src/hash.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/hash.cpp b/src/hash.cpp
index 218607a6fd..29376b45aa 100644
--- a/src/hash.cpp
+++ b/src/hash.cpp
@@ -63,3 +63,16 @@ unsigned int MurmurHash3(unsigned int nHashSeed, const std::vector<unsigned char
return h1;
}
+
+void BIP32Hash(const unsigned char chainCode[32], unsigned int nChild, unsigned char header, const unsigned char data[32], unsigned char output[64])
+{
+ unsigned char num[4];
+ num[0] = (nChild >> 24) & 0xFF;
+ num[1] = (nChild >> 16) & 0xFF;
+ num[2] = (nChild >> 8) & 0xFF;
+ num[3] = (nChild >> 0) & 0xFF;
+ CHMAC_SHA512(chainCode, 32).Write(&header, 1)
+ .Write(data, 32)
+ .Write(num, 4)
+ .Finalize(output);
+}