Bitcoin ABC
0.26.3
P2P Digital Currency
Loading...
Searching...
No Matches
src
crypto
sha512.h
Go to the documentation of this file.
1
// Copyright (c) 2014-2016 The Bitcoin Core developers
2
// Distributed under the MIT software license, see the accompanying
3
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5
#ifndef BITCOIN_CRYPTO_SHA512_H
6
#define BITCOIN_CRYPTO_SHA512_H
7
8
#include <cstdint>
9
#include <cstdlib>
10
12
class
CSHA512
{
13
private
:
14
uint64_t
s
[8];
15
uint8_t
buf
[128];
16
uint64_t
bytes
;
17
18
public
:
19
static
constexpr
size_t
OUTPUT_SIZE
= 64;
20
21
CSHA512
();
22
CSHA512
&
Write
(
const
uint8_t
*data,
size_t
len
);
23
void
Finalize
(
uint8_t
hash[
OUTPUT_SIZE
]);
24
CSHA512
&
Reset
();
25
uint64_t
Size
()
const
{
return
bytes
; }
26
};
27
28
#endif
// BITCOIN_CRYPTO_SHA512_H
CSHA512
A hasher class for SHA-512.
Definition
sha512.h:12
CSHA512::Size
uint64_t Size() const
Definition
sha512.h:25
CSHA512::Write
CSHA512 & Write(const uint8_t *data, size_t len)
Definition
sha512.cpp:248
CSHA512::OUTPUT_SIZE
static constexpr size_t OUTPUT_SIZE
Definition
sha512.h:19
CSHA512::Reset
CSHA512 & Reset()
Definition
sha512.cpp:289
CSHA512::bytes
uint64_t bytes
Definition
sha512.h:16
CSHA512::buf
uint8_t buf[128]
Definition
sha512.h:15
CSHA512::s
uint64_t s[8]
Definition
sha512.h:14
CSHA512::Finalize
void Finalize(uint8_t hash[OUTPUT_SIZE])
Definition
sha512.cpp:273
CSHA512::CSHA512
CSHA512()
Definition
sha512.cpp:244
GetRand
T GetRand(T nMax=std::numeric_limits< T >::max()) noexcept
Generate a uniform random integer of type T in the range [0..nMax) nMax defaults to std::numeric_limi...
Definition
random.h:85
Generated on Thu Dec 26 2024 02:38:02 for Bitcoin ABC by
1.9.8