Annotation of embedaddon/strongswan/src/libstrongswan/plugins/mgf1/mgf1_xof.h, revision 1.1.1.1
1.1 misho 1: /*
2: * Copyright (C) 2016 Andreas Steffen
3: * HSR Hochschule fuer Technik Rapperswil
4: *
5: * This program is free software; you can redistribute it and/or modify it
6: * under the terms of the GNU General Public License as published by the
7: * Free Software Foundation; either version 2 of the License, or (at your
8: * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
9: *
10: * This program is distributed in the hope that it will be useful, but
11: * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
12: * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13: * for more details.
14: */
15:
16: /**
17: * @defgroup mgf1_xof mgf1_xof
18: * @{ @ingroup crypto
19: */
20:
21: #ifndef MGF1_XOF_H_
22: #define MGF1_XOF_H_
23:
24: typedef struct mgf1_xof_t mgf1_xof_t;
25:
26: #include <crypto/xofs/mgf1.h>
27:
28: /**
29: * Implements the PKCS#1 MGF1_XOF Mask Generation Function based on a hash
30: * function defined in section 10.2.1 of RFC 2437
31: */
32: struct mgf1_xof_t {
33:
34: /**
35: * mgf1_t interface for this Extended Output Function (XOF).
36: */
37: mgf1_t mgf1_interface;
38: };
39:
40: /**
41: * Create an mgf1_xof_t object
42: *
43: * @param algorithm XOF_MGF1_SHA1, XOF_MGF1_SHA256 or XOF_MGF1_SHA512
44: * @return mgf1_xof_t object, NULL if not supported
45: */
46: mgf1_xof_t *mgf1_xof_create(ext_out_function_t algorithm);
47:
48: #endif /** MGF1_XOF_H_ @}*/
49:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>