diff options
| author | J08nY | 2017-02-09 04:07:37 +0100 |
|---|---|---|
| committer | J08nY | 2017-02-09 04:07:37 +0100 |
| commit | 79b29481b1c4d13063dd8b6ee6a1d0d70a54faab (patch) | |
| tree | 007da84bc4133c656f2f66df541f74c6b55bfb11 /src/math/curve.h | |
| parent | 0b5d1cca9c78869c6cffa2932297c1d70ba142e2 (diff) | |
| download | ecgen-79b29481b1c4d13063dd8b6ee6a1d0d70a54faab.tar.gz ecgen-79b29481b1c4d13063dd8b6ee6a1d0d70a54faab.tar.zst ecgen-79b29481b1c4d13063dd8b6ee6a1d0d70a54faab.zip | |
Diffstat (limited to 'src/math/curve.h')
| -rw-r--r-- | src/math/curve.h | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/src/math/curve.h b/src/math/curve.h new file mode 100644 index 0000000..d1688ff --- /dev/null +++ b/src/math/curve.h @@ -0,0 +1,62 @@ +/* + * ecgen, tool for generating Elliptic curve domain parameters + * Copyright (C) 2017 J08nY + */ +#ifndef ECGEN_CURVE_H +#define ECGEN_CURVE_H + +#include <pari/pari.h> +#include "io/cli.h" +#include "types.h" + +/** + * + * @param curve + * @param config + * @return + */ +int curve_init(curve_t *curve, config_t *config, ...); + +/** + * + * @param curve + * @param config + * @return + */ +int curve_nonzero(curve_t *curve, config_t *config, ...); + +/** + * + * @param curve + * @param config + * @return + */ +int curve_prime(curve_t *curve, config_t *config, ...); + +/** + * + * @param curve + * @param config + * @return + */ +int curve_seed(curve_t *curve, config_t *config, ...); + +/** + * @param curve + * @return + */ +GEN curve_params(curve_t *curve); + +/** + * + * @return + */ +curve_t *curve_new(); + +/** + * + * @param curve + */ +void curve_free(curve_t **curve); + +#endif // ECGEN_CURVE_H |
