BeeCrypt
4.2.1
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
include
beecrypt
sha224.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2009 Bob Deblier
3
*
4
* This library is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU Lesser General Public
6
* License as published by the Free Software Foundation; either
7
* version 2.1 of the License, or (at your option) any later version.
8
*
9
* This library is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
* Lesser General Public License for more details.
13
*
14
* You should have received a copy of the GNU Lesser General Public
15
* License along with this library; if not, write to the Free Software
16
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17
*
18
*/
19
26
#ifndef _SHA224_H
27
#define _SHA224_H
28
29
#include "
beecrypt/beecrypt.h
"
30
34
#ifdef __cplusplus
35
struct
BEECRYPTAPI
sha224Param
36
#else
37
struct _sha224Param
38
#endif
39
{
42
uint32_t h[8];
45
uint32_t data[64];
50
#if (MP_WBITS == 64)
51
mpw
length[1];
52
#elif (MP_WBITS == 32)
53
mpw
length[2];
54
#else
55
# error
56
#endif
57
61
uint32_t
offset
;
62
};
63
64
#ifndef __cplusplus
65
typedef
struct
_sha224Param
sha224Param
;
66
#endif
67
68
#ifdef __cplusplus
69
extern
"C"
{
70
#endif
71
75
extern
BEECRYPTAPI
const
hashFunction
sha224
;
76
82
BEECRYPTAPI
83
void
sha224Process
(
sha224Param
* sp);
84
91
BEECRYPTAPI
92
int
sha224Reset
(
sha224Param
* sp);
93
102
BEECRYPTAPI
103
int
sha224Update
(
sha224Param
* sp,
const
byte
* data,
size_t
size);
104
112
BEECRYPTAPI
113
int
sha224Digest
(
sha224Param
* sp,
byte
* digest);
114
115
#ifdef __cplusplus
116
}
117
#endif
118
119
#endif
Generated by
1.8.3.1