CiFEr
include
cifer
internal
keygen.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2018 XLAB d.o.o.
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
17
#ifndef CIFER_KEYGEN_H
18
#define CIFER_KEYGEN_H
19
20
#include <gmp.h>
21
22
#include "
cifer/internal/errors.h
"
23
30
typedef
struct
cfe_elgamal
{
31
mpz_t p;
// Modulus
32
mpz_t g;
// Generator of the cyclic group
33
mpz_t q;
// (p - 1) / 2, i.e. order of g
34
}
cfe_elgamal
;
35
36
44
cfe_error
cfe_elgamal_init
(
cfe_elgamal
*key,
size_t
modulus_len);
45
51
void
cfe_elgamal_free
(
cfe_elgamal
*key);
52
53
#endif
cfe_elgamal
Definition:
keygen.h:30
cfe_elgamal_init
cfe_error cfe_elgamal_init(cfe_elgamal *key, size_t modulus_len)
errors.h
Error definitions.
cfe_elgamal_free
void cfe_elgamal_free(cfe_elgamal *key)
Generated by
1.8.17