Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Macros
Pages
cryptotools
sha
sha256.hpp
Go to the documentation of this file.
1
10
#ifndef _SHA256_H_
11
#define _SHA256_H_
12
13
#include "
shax.hpp
"
14
15
16
namespace
cryptoTools {
17
18
25
class
SHA256
:
public
SHAx
26
{
27
private
:
32
uint32_t
H
[8];
33
37
38
uint32_t
a
;
39
uint32_t
b
;
40
uint32_t
c
;
41
uint32_t
d
;
42
uint32_t
e
;
43
uint32_t
f
;
44
uint32_t
g
;
45
uint32_t
h
;
46
48
51
std::vector<uint32_t>
M
;
52
56
uint64_t
l
;
57
58
public
:
59
// Everything that is public is inherited from SHAx.
60
void
preprocess
(std::vector<uint8_t> initialMessage);
61
void
round
(
unsigned
int
counter);
62
void
hash
(std::vector<uint8_t> initialMessage);
63
std::vector<uint8_t>
getHash
();
64
std::string
getType
();
65
uint32_t
getHashLength
();
66
};
67
68
69
}
// closing namespace
70
71
#endif