Sortix cisortix manual
This manual documents Sortix cisortix. You can instead view this document in the latest official manual.
NAME
EC_GROUP_copy, EC_GROUP_dup, EC_GROUP_method_of, EC_GROUP_set_generator, EC_GROUP_get0_generator, EC_GROUP_get_order, EC_GROUP_order_bits, EC_GROUP_get_cofactor, EC_GROUP_set_curve_name, EC_GROUP_get_curve_name, EC_GROUP_set_asn1_flag, EC_GROUP_get_asn1_flag, EC_GROUP_set_point_conversion_form, EC_GROUP_get_point_conversion_form, EC_GROUP_get0_seed, EC_GROUP_get_seed_len, EC_GROUP_set_seed, EC_GROUP_get_degree, EC_GROUP_check, EC_GROUP_check_discriminant, EC_GROUP_cmp, EC_GROUP_get_basis_type, EC_GROUP_get_trinomial_basis, EC_GROUP_get_pentanomial_basis — manipulate EC_GROUP objectsSYNOPSIS
#include <openssl/ec.h>#include <openssl/bn.h>
EC_GROUP_copy(EC_GROUP *dst, const EC_GROUP *src);
EC_GROUP_dup(const EC_GROUP *src);
EC_GROUP_method_of(const EC_GROUP *group);
EC_GROUP_set_generator(EC_GROUP *group, const EC_POINT *generator, const BIGNUM *order, const BIGNUM *cofactor);
EC_GROUP_get0_generator(const EC_GROUP *group);
EC_GROUP_get_order(const EC_GROUP *group, BIGNUM *order, BN_CTX *ctx);
EC_GROUP_order_bits(const EC_GROUP *group);
EC_GROUP_get_cofactor(const EC_GROUP *group, BIGNUM *cofactor, BN_CTX *ctx);
EC_GROUP_set_curve_name(EC_GROUP *group, int nid);
EC_GROUP_get_curve_name(const EC_GROUP *group);
EC_GROUP_set_asn1_flag(EC_GROUP *group, int flag);
EC_GROUP_get_asn1_flag(const EC_GROUP *group);
EC_GROUP_set_point_conversion_form(EC_GROUP *group, point_conversion_form_t form);
EC_GROUP_get_point_conversion_form(const EC_GROUP *);
EC_GROUP_get0_seed(const EC_GROUP *x);
EC_GROUP_get_seed_len(const EC_GROUP *);
EC_GROUP_set_seed(EC_GROUP *, const unsigned char *, size_t len);
EC_GROUP_get_degree(const EC_GROUP *group);
EC_GROUP_check(const EC_GROUP *group, BN_CTX *ctx);
EC_GROUP_check_discriminant(const EC_GROUP *group, BN_CTX *ctx);
EC_GROUP_cmp(const EC_GROUP *a, const EC_GROUP *b, BN_CTX *ctx);
EC_GROUP_get_basis_type(const EC_GROUP *);
EC_GROUP_get_trinomial_basis(const EC_GROUP *, unsigned int *k);
EC_GROUP_get_pentanomial_basis(const EC_GROUP *, unsigned int *k1, unsigned int *k2, unsigned int *k3);
DESCRIPTION
These functions operate on EC_GROUP objects created by the functions described in EC_GROUP_new(3).- 1
. The order multiplied by the cofactor gives the number of points on the curve.typedef enum { /** the point is encoded as z||x, where the octet z specifies * which solution of the quadratic equation y is */ POINT_CONVERSION_COMPRESSED = 2, /** the point is encoded as z||x||y, where z is the octet 0x04 */ POINT_CONVERSION_UNCOMPRESSED = 4, /** the point is encoded as z||x||y, where the octet z specifies * which solution of the quadratic equation y is */ POINT_CONVERSION_HYBRID = 6 } point_conversion_form_t;
f(x) = x^m + x^k + 1 with m > k >= 1
f(x) = x^m + x^k3 + x^k2 + x^k1 + 1 with m > k3 > k2 > k1 >= 1