• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt/router/openssl-1.0.0q/include/openssl/

Lines Matching refs:EC_GROUP

129 	EC_GROUP;
166 /* EC_GROUP functions */
169 /** Creates a new EC_GROUP object
171 * \return newly created EC_GROUP object or NULL in case of an error.
173 EC_GROUP *EC_GROUP_new(const EC_METHOD *meth);
175 /** Frees a EC_GROUP object
176 * \param group EC_GROUP object to be freed.
178 void EC_GROUP_free(EC_GROUP *group);
180 /** Clears and frees a EC_GROUP object
181 * \param group EC_GROUP object to be cleared and freed.
183 void EC_GROUP_clear_free(EC_GROUP *group);
185 /** Copies EC_GROUP objects. Note: both EC_GROUPs must use the same EC_METHOD.
186 * \param dst destination EC_GROUP object
187 * \param src source EC_GROUP object
190 int EC_GROUP_copy(EC_GROUP *dst, const EC_GROUP *src);
192 /** Creates a new EC_GROUP object and copies the copies the content
194 * \param src source EC_GROUP object
195 * \return newly created EC_GROUP object or NULL in case of an error.
197 EC_GROUP *EC_GROUP_dup(const EC_GROUP *src);
199 /** Returns the EC_METHOD of the EC_GROUP object.
200 * \param group EC_GROUP object
201 * \return EC_METHOD used in this EC_GROUP object.
203 const EC_METHOD *EC_GROUP_method_of(const EC_GROUP *group);
211 /** Sets the generator and it's order/cofactor of a EC_GROUP object.
212 * \param group EC_GROUP object
219 int EC_GROUP_set_generator(EC_GROUP *group, const EC_POINT *generator, const BIGNUM *order, const BIGNUM *cofactor);
221 /** Returns the generator of a EC_GROUP object.
222 * \param group EC_GROUP object
225 const EC_POINT *EC_GROUP_get0_generator(const EC_GROUP *group);
227 /** Gets the order of a EC_GROUP
228 * \param group EC_GROUP object
233 int EC_GROUP_get_order(const EC_GROUP *group, BIGNUM *order, BN_CTX *ctx);
235 /** Gets the cofactor of a EC_GROUP
236 * \param group EC_GROUP object
241 int EC_GROUP_get_cofactor(const EC_GROUP *group, BIGNUM *cofactor, BN_CTX *ctx);
243 /** Sets the name of a EC_GROUP object
244 * \param group EC_GROUP object
247 void EC_GROUP_set_curve_name(EC_GROUP *group, int nid);
249 /** Returns the curve name of a EC_GROUP object
250 * \param group EC_GROUP object
253 int EC_GROUP_get_curve_name(const EC_GROUP *group);
255 void EC_GROUP_set_asn1_flag(EC_GROUP *group, int flag);
256 int EC_GROUP_get_asn1_flag(const EC_GROUP *group);
258 void EC_GROUP_set_point_conversion_form(EC_GROUP *, point_conversion_form_t);
259 point_conversion_form_t EC_GROUP_get_point_conversion_form(const EC_GROUP *);
261 unsigned char *EC_GROUP_get0_seed(const EC_GROUP *);
262 size_t EC_GROUP_get_seed_len(const EC_GROUP *);
263 size_t EC_GROUP_set_seed(EC_GROUP *, const unsigned char *, size_t len);
266 * \param group EC_GROUP object
273 int EC_GROUP_set_curve_GFp(EC_GROUP *group, const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx);
276 * \param group EC_GROUP object
283 int EC_GROUP_get_curve_GFp(const EC_GROUP *group, BIGNUM *p, BIGNUM *a, BIGNUM *b, BN_CTX *ctx);
286 * \param group EC_GROUP object
293 int EC_GROUP_set_curve_GF2m(EC_GROUP *group, const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx);
296 * \param group EC_GROUP object
303 int EC_GROUP_get_curve_GF2m(const EC_GROUP *group, BIGNUM *p, BIGNUM *a, BIGNUM *b, BN_CTX *ctx);
306 * \param group EC_GROUP object
309 int EC_GROUP_get_degree(const EC_GROUP *group);
311 /** Checks whether the parameter in the EC_GROUP define a valid ec group
312 * \param group EC_GROUP object
316 int EC_GROUP_check(const EC_GROUP *group, BN_CTX *ctx);
319 * \param group EC_GROUP object
323 int EC_GROUP_check_discriminant(const EC_GROUP *group, BN_CTX *ctx);
325 /** Compares two EC_GROUP objects
326 * \param a first EC_GROUP object
327 * \param b second EC_GROUP object
331 int EC_GROUP_cmp(const EC_GROUP *a, const EC_GROUP *b, BN_CTX *ctx);
336 /** Creates a new EC_GROUP object with the specified parameters defined
342 * \return newly created EC_GROUP object with the specified parameters
344 EC_GROUP *EC_GROUP_new_curve_GFp(const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx);
346 /** Creates a new EC_GROUP object with the specified parameters defined
352 * \return newly created EC_GROUP object with the specified parameters
354 EC_GROUP *EC_GROUP_new_curve_GF2m(const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx);
356 /** Creates a EC_GROUP object with a curve specified by a NID
358 * \return newly created EC_GROUP object with specified curve or NULL
361 EC_GROUP *EC_GROUP_new_by_curve_name(int nid);
384 /** Creates a new EC_POINT object for the specified EC_GROUP
385 * \param group EC_GROUP the underlying EC_GROUP object
388 EC_POINT *EC_POINT_new(const EC_GROUP *group);
410 * \param group underlying the EC_GROUP object
413 EC_POINT *EC_POINT_dup(const EC_POINT *src, const EC_GROUP *group);
422 * \param group underlying EC_GROUP object
426 int EC_POINT_set_to_infinity(const EC_GROUP *group, EC_POINT *point);
429 * \param group underlying EC_GROUP object
437 int EC_POINT_set_Jprojective_coordinates_GFp(const EC_GROUP *group, EC_POINT *p,
441 * \param group underlying EC_GROUP object
449 int EC_POINT_get_Jprojective_coordinates_GFp(const EC_GROUP *group,
453 * \param group underlying EC_GROUP object
460 int EC_POINT_set_affine_coordinates_GFp(const EC_GROUP *group, EC_POINT *p,
464 * \param group underlying EC_GROUP object
471 int EC_POINT_get_affine_coordinates_GFp(const EC_GROUP *group,
475 * \param group underlying EC_GROUP object
482 int EC_POINT_set_compressed_coordinates_GFp(const EC_GROUP *group, EC_POINT *p,
486 * \param group underlying EC_GROUP object
493 int EC_POINT_set_affine_coordinates_GF2m(const EC_GROUP *group, EC_POINT *p,
497 * \param group underlying EC_GROUP object
504 int EC_POINT_get_affine_coordinates_GF2m(const EC_GROUP *group,
508 * \param group underlying EC_GROUP object
515 int EC_POINT_set_compressed_coordinates_GF2m(const EC_GROUP *group, EC_POINT *p,
519 * \param group underlying EC_GROUP object
528 size_t EC_POINT_point2oct(const EC_GROUP *group, const EC_POINT *p,
533 * \param group underlying EC_GROUP object
540 int EC_POINT_oct2point(const EC_GROUP *group, EC_POINT *p,
544 BIGNUM *EC_POINT_point2bn(const EC_GROUP *, const EC_POINT *,
546 EC_POINT *EC_POINT_bn2point(const EC_GROUP *, const BIGNUM *,
548 char *EC_POINT_point2hex(const EC_GROUP *, const EC_POINT *,
550 EC_POINT *EC_POINT_hex2point(const EC_GROUP *, const char *,
559 * \param group underlying EC_GROUP object
566 int EC_POINT_add(const EC_GROUP *group, EC_POINT *r, const EC_POINT *a, const EC_POINT *b, BN_CTX *ctx);
569 * \param group underlying EC_GROUP object
575 int EC_POINT_dbl(const EC_GROUP *group, EC_POINT *r, const EC_POINT *a, BN_CTX *ctx);
578 * \param group underlying EC_GROUP object
583 int EC_POINT_invert(const EC_GROUP *group, EC_POINT *a, BN_CTX *ctx);
586 * \param group the underlying EC_GROUP object
590 int EC_POINT_is_at_infinity(const EC_GROUP *group, const EC_POINT *p);
593 * \param group underlying EC_GROUP object
598 int EC_POINT_is_on_curve(const EC_GROUP *group, const EC_POINT *point, BN_CTX *ctx);
601 * \param group underlying EC_GROUP object
607 int EC_POINT_cmp(const EC_GROUP *group, const EC_POINT *a, const EC_POINT *b, BN_CTX *ctx);
609 int EC_POINT_make_affine(const EC_GROUP *, EC_POINT *, BN_CTX *);
610 int EC_POINTs_make_affine(const EC_GROUP *, size_t num, EC_POINT *[], BN_CTX *);
613 * \param group underlying EC_GROUP object
622 int EC_POINTs_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *n, size_t num, const EC_POINT *p[], const BIGNUM *m[], BN_CTX *ctx);
625 * \param group underlying EC_GROUP object
633 int EC_POINT_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *n, const EC_POINT *q, const BIGNUM *m, BN_CTX *ctx);
636 * \param group EC_GROUP object
640 int EC_GROUP_precompute_mult(EC_GROUP *group, BN_CTX *ctx);
643 * \param group EC_GROUP object
646 int EC_GROUP_have_precompute_mult(const EC_GROUP *group);
655 int EC_GROUP_get_basis_type(const EC_GROUP *);
656 int EC_GROUP_get_trinomial_basis(const EC_GROUP *, unsigned int *k);
657 int EC_GROUP_get_pentanomial_basis(const EC_GROUP *, unsigned int *k1,
664 EC_GROUP *d2i_ECPKParameters(EC_GROUP **, const unsigned char **in, long len);
665 int i2d_ECPKParameters(const EC_GROUP *, unsigned char **out);
667 #define d2i_ECPKParameters_bio(bp,x) ASN1_d2i_bio_of(EC_GROUP,NULL,d2i_ECPKParameters,bp,x)
668 #define i2d_ECPKParameters_bio(bp,x) ASN1_i2d_bio_of_const(EC_GROUP,i2d_ECPKParameters,bp,x)
669 #define d2i_ECPKParameters_fp(fp,x) (EC_GROUP *)ASN1_d2i_fp(NULL, \
675 int ECPKParameters_print(BIO *bp, const EC_GROUP *x, int off);
678 int ECPKParameters_print_fp(FILE *fp, const EC_GROUP *x, int off);
698 * EC_GROUP object.
728 /** Returns the EC_GROUP object of a EC_KEY object
730 * \return the EC_GROUP object (possibly NULL).
732 const EC_GROUP *EC_KEY_get0_group(const EC_KEY *key);
734 /** Sets the EC_GROUP of a EC_KEY object.
736 * \param group EC_GROUP to use in the EC_KEY object (note: the EC_KEY
737 * object will use an own copy of the EC_GROUP).
740 int EC_KEY_set_group(EC_KEY *key, const EC_GROUP *group);
787 /* wrapper functions for the underlying EC_GROUP object */