• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src/router/openssl/crypto/ec/

Lines Matching refs:EC_GROUP

127     EC_GROUP;
181 /* EC_GROUP functions */
184 /** Creates a new EC_GROUP object
186 * \return newly created EC_GROUP object or NULL in case of an error.
188 EC_GROUP *EC_GROUP_new(const EC_METHOD *meth);
190 /** Frees a EC_GROUP object
191 * \param group EC_GROUP object to be freed.
193 void EC_GROUP_free(EC_GROUP *group);
195 /** Clears and frees a EC_GROUP object
196 * \param group EC_GROUP object to be cleared and freed.
198 void EC_GROUP_clear_free(EC_GROUP *group);
200 /** Copies EC_GROUP objects. Note: both EC_GROUPs must use the same EC_METHOD.
201 * \param dst destination EC_GROUP object
202 * \param src source EC_GROUP object
205 int EC_GROUP_copy(EC_GROUP *dst, const EC_GROUP *src);
207 /** Creates a new EC_GROUP object and copies the copies the content
209 * \param src source EC_GROUP object
210 * \return newly created EC_GROUP object or NULL in case of an error.
212 EC_GROUP *EC_GROUP_dup(const EC_GROUP *src);
214 /** Returns the EC_METHOD of the EC_GROUP object.
215 * \param group EC_GROUP object
216 * \return EC_METHOD used in this EC_GROUP object.
218 const EC_METHOD *EC_GROUP_method_of(const EC_GROUP *group);
226 /** Sets the generator and it's order/cofactor of a EC_GROUP object.
227 * \param group EC_GROUP object
234 int EC_GROUP_set_generator(EC_GROUP *group, const EC_POINT *generator,
237 /** Returns the generator of a EC_GROUP object.
238 * \param group EC_GROUP object
241 const EC_POINT *EC_GROUP_get0_generator(const EC_GROUP *group);
244 * \param group EC_GROUP object
247 BN_MONT_CTX *EC_GROUP_get_mont_data(const EC_GROUP *group);
249 /** Gets the order of a EC_GROUP
250 * \param group EC_GROUP object
255 int EC_GROUP_get_order(const EC_GROUP *group, BIGNUM *order, BN_CTX *ctx);
257 /** Gets the cofactor of a EC_GROUP
258 * \param group EC_GROUP object
263 int EC_GROUP_get_cofactor(const EC_GROUP *group, BIGNUM *cofactor,
266 /** Sets the name of a EC_GROUP object
267 * \param group EC_GROUP object
270 void EC_GROUP_set_curve_name(EC_GROUP *group, int nid);
272 /** Returns the curve name of a EC_GROUP object
273 * \param group EC_GROUP object
276 int EC_GROUP_get_curve_name(const EC_GROUP *group);
278 void EC_GROUP_set_asn1_flag(EC_GROUP *group, int flag);
279 int EC_GROUP_get_asn1_flag(const EC_GROUP *group);
281 void EC_GROUP_set_point_conversion_form(EC_GROUP *group,
283 point_conversion_form_t EC_GROUP_get_point_conversion_form(const EC_GROUP *);
285 unsigned char *EC_GROUP_get0_seed(const EC_GROUP *x);
286 size_t EC_GROUP_get_seed_len(const EC_GROUP *);
287 size_t EC_GROUP_set_seed(EC_GROUP *, const unsigned char *, size_t len);
290 * \param group EC_GROUP object
297 int EC_GROUP_set_curve_GFp(EC_GROUP *group, const BIGNUM *p, const BIGNUM *a,
301 * \param group EC_GROUP object
308 int EC_GROUP_get_curve_GFp(const EC_GROUP *group, BIGNUM *p, BIGNUM *a,
313 * \param group EC_GROUP object
320 int EC_GROUP_set_curve_GF2m(EC_GROUP *group, const BIGNUM *p, const BIGNUM *a,
324 * \param group EC_GROUP object
331 int EC_GROUP_get_curve_GF2m(const EC_GROUP *group, BIGNUM *p, BIGNUM *a,
335 * \param group EC_GROUP object
338 int EC_GROUP_get_degree(const EC_GROUP *group);
340 /** Checks whether the parameter in the EC_GROUP define a valid ec group
341 * \param group EC_GROUP object
345 int EC_GROUP_check(const EC_GROUP *group, BN_CTX *ctx);
348 * \param group EC_GROUP object
352 int EC_GROUP_check_discriminant(const EC_GROUP *group, BN_CTX *ctx);
354 /** Compares two EC_GROUP objects
355 * \param a first EC_GROUP object
356 * \param b second EC_GROUP object
360 int EC_GROUP_cmp(const EC_GROUP *a, const EC_GROUP *b, BN_CTX *ctx);
367 /** Creates a new EC_GROUP object with the specified parameters defined
373 * \return newly created EC_GROUP object with the specified parameters
375 EC_GROUP *EC_GROUP_new_curve_GFp(const BIGNUM *p, const BIGNUM *a,
378 /** Creates a new EC_GROUP object with the specified parameters defined
384 * \return newly created EC_GROUP object with the specified parameters
386 EC_GROUP *EC_GROUP_new_curve_GF2m(const BIGNUM *p, const BIGNUM *a,
389 /** Creates a EC_GROUP object with a curve specified by a NID
391 * \return newly created EC_GROUP object with specified curve or NULL
394 EC_GROUP *EC_GROUP_new_by_curve_name(int nid);
420 /** Creates a new EC_POINT object for the specified EC_GROUP
421 * \param group EC_GROUP the underlying EC_GROUP object
424 EC_POINT *EC_POINT_new(const EC_GROUP *group);
446 * \param group underlying the EC_GROUP object
449 EC_POINT *EC_POINT_dup(const EC_POINT *src, const EC_GROUP *group);
458 * \param group underlying EC_GROUP object
462 int EC_POINT_set_to_infinity(const EC_GROUP *group, EC_POINT *point);
465 * \param group underlying EC_GROUP object
473 int EC_POINT_set_Jprojective_coordinates_GFp(const EC_GROUP *group,
479 * \param group underlying EC_GROUP object
487 int EC_POINT_get_Jprojective_coordinates_GFp(const EC_GROUP *group,
493 * \param group underlying EC_GROUP object
500 int EC_POINT_set_affine_coordinates_GFp(const EC_GROUP *group, EC_POINT *p,
505 * \param group underlying EC_GROUP object
512 int EC_POINT_get_affine_coordinates_GFp(const EC_GROUP *group,
517 * \param group underlying EC_GROUP object
524 int EC_POINT_set_compressed_coordinates_GFp(const EC_GROUP *group,
529 * \param group underlying EC_GROUP object
536 int EC_POINT_set_affine_coordinates_GF2m(const EC_GROUP *group, EC_POINT *p,
541 * \param group underlying EC_GROUP object
548 int EC_POINT_get_affine_coordinates_GF2m(const EC_GROUP *group,
553 * \param group underlying EC_GROUP object
560 int EC_POINT_set_compressed_coordinates_GF2m(const EC_GROUP *group,
565 * \param group underlying EC_GROUP object
574 size_t EC_POINT_point2oct(const EC_GROUP *group, const EC_POINT *p,
579 * \param group underlying EC_GROUP object
586 int EC_POINT_oct2point(const EC_GROUP *group, EC_POINT *p,
590 BIGNUM *EC_POINT_point2bn(const EC_GROUP *, const EC_POINT *,
592 EC_POINT *EC_POINT_bn2point(const EC_GROUP *, const BIGNUM *,
594 char *EC_POINT_point2hex(const EC_GROUP *, const EC_POINT *,
596 EC_POINT *EC_POINT_hex2point(const EC_GROUP *, const char *,
604 * \param group underlying EC_GROUP object
611 int EC_POINT_add(const EC_GROUP *group, EC_POINT *r, const EC_POINT *a,
615 * \param group underlying EC_GROUP object
621 int EC_POINT_dbl(const EC_GROUP *group, EC_POINT *r, const EC_POINT *a,
625 * \param group underlying EC_GROUP object
630 int EC_POINT_invert(const EC_GROUP *group, EC_POINT *a, BN_CTX *ctx);
633 * \param group the underlying EC_GROUP object
637 int EC_POINT_is_at_infinity(const EC_GROUP *group, const EC_POINT *p);
640 * \param group underlying EC_GROUP object
645 int EC_POINT_is_on_curve(const EC_GROUP *group, const EC_POINT *point,
649 * \param group underlying EC_GROUP object
655 int EC_POINT_cmp(const EC_GROUP *group, const EC_POINT *a, const EC_POINT *b,
658 int EC_POINT_make_affine(const EC_GROUP *group, EC_POINT *point, BN_CTX *ctx);
659 int EC_POINTs_make_affine(const EC_GROUP *group, size_t num,
663 * \param group underlying EC_GROUP object
672 int EC_POINTs_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *n,
677 * \param group underlying EC_GROUP object
685 int EC_POINT_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *n,
689 * \param group EC_GROUP object
693 int EC_GROUP_precompute_mult(EC_GROUP *group, BN_CTX *ctx);
696 * \param group EC_GROUP object
699 int EC_GROUP_have_precompute_mult(const EC_GROUP *group);
709 int EC_GROUP_get_basis_type(const EC_GROUP *);
711 int EC_GROUP_get_trinomial_basis(const EC_GROUP *, unsigned int *k);
712 int EC_GROUP_get_pentanomial_basis(const EC_GROUP *, unsigned int *k1,
720 EC_GROUP *d2i_ECPKParameters(EC_GROUP **, const unsigned char **in, long len);
721 int i2d_ECPKParameters(const EC_GROUP *, unsigned char **out);
723 # define d2i_ECPKParameters_bio(bp,x) ASN1_d2i_bio_of(EC_GROUP,NULL,d2i_ECPKParameters,bp,x)
724 # define i2d_ECPKParameters_bio(bp,x) ASN1_i2d_bio_of_const(EC_GROUP,i2d_ECPKParameters,bp,x)
725 # define d2i_ECPKParameters_fp(fp,x) (EC_GROUP *)ASN1_d2i_fp(NULL, \
731 int ECPKParameters_print(BIO *bp, const EC_GROUP *x, int off);
734 int ECPKParameters_print_fp(FILE *fp, const EC_GROUP *x, int off);
763 * EC_GROUP object.
793 /** Returns the EC_GROUP object of a EC_KEY object
795 * \return the EC_GROUP object (possibly NULL).
797 const EC_GROUP *EC_KEY_get0_group(const EC_KEY *key);
799 /** Sets the EC_GROUP of a EC_KEY object.
801 * \param group EC_GROUP to use in the EC_KEY object (note: the EC_KEY
802 * object will use an own copy of the EC_GROUP).
805 int EC_KEY_set_group(EC_KEY *key, const EC_GROUP *group);
856 /* wrapper functions for the underlying EC_GROUP object */