Add built-in RIPEMD-160 implementation

This commit is contained in:
Pieter Wuille
2014-05-01 00:43:31 +02:00
parent 13b5dfef64
commit a5bc9c0917
5 changed files with 248 additions and 4 deletions

View File

@@ -7,14 +7,13 @@
#define BITCOIN_HASH_H
#include "crypto/sha2.h"
#include "crypto/ripemd160.h"
#include "serialize.h"
#include "uint256.h"
#include "version.h"
#include <vector>
#include <openssl/ripemd.h>
/** A hasher class for Bitcoin's 256-bit hash (double SHA-256). */
class CHash256 {
private:
@@ -45,7 +44,7 @@ public:
void Finalize(unsigned char *hash) {
unsigned char buf[32];
sha.Finalize(buf);
RIPEMD160(buf, 32, hash);
CRIPEMD160().Write(buf, 32).Finalize(hash);
}
CHash160& Write(const unsigned char *data, size_t len) {