• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/ap/gpl/openssl/crypto/ec/

Lines Matching defs:EC_POINT

129 typedef struct ec_point_st EC_POINT;
228 * \param generator EC_POINT object with the generator.
234 int EC_GROUP_set_generator(EC_GROUP *group, const EC_POINT *generator,
241 const EC_POINT *EC_GROUP_get0_generator(const EC_GROUP *group);
417 /* EC_POINT functions */
420 /** Creates a new EC_POINT object for the specified EC_GROUP
422 * \return newly created EC_POINT object or NULL if an error occurred
424 EC_POINT *EC_POINT_new(const EC_GROUP *group);
426 /** Frees a EC_POINT object
427 * \param point EC_POINT object to be freed
429 void EC_POINT_free(EC_POINT *point);
431 /** Clears and frees a EC_POINT object
432 * \param point EC_POINT object to be cleared and freed
434 void EC_POINT_clear_free(EC_POINT *point);
436 /** Copies EC_POINT object
437 * \param dst destination EC_POINT object
438 * \param src source EC_POINT object
441 int EC_POINT_copy(EC_POINT *dst, const EC_POINT *src);
443 /** Creates a new EC_POINT object and copies the content of the supplied
444 * EC_POINT
445 * \param src source EC_POINT object
447 * \return newly created EC_POINT object or NULL if an error occurred
449 EC_POINT *EC_POINT_dup(const EC_POINT *src, const EC_GROUP *group);
451 /** Returns the EC_METHOD used in EC_POINT object
452 * \param point EC_POINT object
455 const EC_METHOD *EC_POINT_method_of(const EC_POINT *point);
459 * \param point EC_POINT to set to infinity
462 int EC_POINT_set_to_infinity(const EC_GROUP *group, EC_POINT *point);
464 /** Sets the jacobian projective coordinates of a EC_POINT over GFp
466 * \param p EC_POINT object
474 EC_POINT *p, const BIGNUM *x,
478 /** Gets the jacobian projective coordinates of a EC_POINT over GFp
480 * \param p EC_POINT object
488 const EC_POINT *p, BIGNUM *x,
492 /** Sets the affine coordinates of a EC_POINT over GFp
494 * \param p EC_POINT object
500 int EC_POINT_set_affine_coordinates_GFp(const EC_GROUP *group, EC_POINT *p,
504 /** Gets the affine coordinates of a EC_POINT over GFp
506 * \param p EC_POINT object
513 const EC_POINT *p, BIGNUM *x,
516 /** Sets the x9.62 compressed coordinates of a EC_POINT over GFp
518 * \param p EC_POINT object
525 EC_POINT *p, const BIGNUM *x,
528 /** Sets the affine coordinates of a EC_POINT over GF2m
530 * \param p EC_POINT object
536 int EC_POINT_set_affine_coordinates_GF2m(const EC_GROUP *group, EC_POINT *p,
540 /** Gets the affine coordinates of a EC_POINT over GF2m
542 * \param p EC_POINT object
549 const EC_POINT *p, BIGNUM *x,
552 /** Sets the x9.62 compressed coordinates of a EC_POINT over GF2m
554 * \param p EC_POINT object
561 EC_POINT *p, const BIGNUM *x,
564 /** Encodes a EC_POINT object to a octet string
566 * \param p EC_POINT object
574 size_t EC_POINT_point2oct(const EC_GROUP *group, const EC_POINT *p,
578 /** Decodes a EC_POINT from a octet string
580 * \param p EC_POINT 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 *,
593 EC_POINT *, BN_CTX *);
594 char *EC_POINT_point2hex(const EC_GROUP *, const EC_POINT *,
596 EC_POINT *EC_POINT_hex2point(const EC_GROUP *, const char *,
597 EC_POINT *, BN_CTX *);
600 /* functions for doing EC_POINT arithmetic */
603 /** Computes the sum of two EC_POINT
605 * \param r EC_POINT object for the result (r = a + b)
606 * \param a EC_POINT object with the first summand
607 * \param b EC_POINT object with the second summand
611 int EC_POINT_add(const EC_GROUP *group, EC_POINT *r, const EC_POINT *a,
612 const EC_POINT *b, BN_CTX *ctx);
614 /** Computes the double of a EC_POINT
616 * \param r EC_POINT object for the result (r = 2 * a)
617 * \param a EC_POINT object
621 int EC_POINT_dbl(const EC_GROUP *group, EC_POINT *r, const EC_POINT *a,
624 /** Computes the inverse of a EC_POINT
626 * \param a EC_POINT object to be inverted (it's used for the result as well)
630 int EC_POINT_invert(const EC_GROUP *group, EC_POINT *a, BN_CTX *ctx);
634 * \param p EC_POINT object
637 int EC_POINT_is_at_infinity(const EC_GROUP *group, const EC_POINT *p);
641 * \param point EC_POINT object to check
645 int EC_POINT_is_on_curve(const EC_GROUP *group, const EC_POINT *point,
650 * \param a first EC_POINT object
651 * \param b second EC_POINT 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);
660 EC_POINT *points[], BN_CTX *ctx);
664 * \param r EC_POINT object for the result
667 * \param p array of size num of EC_POINT objects
672 int EC_POINTs_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *n,
673 size_t num, const EC_POINT *p[], const BIGNUM *m[],
678 * \param r EC_POINT object for the result
680 * \param q EC_POINT object with the first factor of the second summand
685 int EC_POINT_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *n,
686 const EC_POINT *q, const BIGNUM *m, BN_CTX *ctx);
823 * \return a EC_POINT object with the public key (possibly NULL)
825 const EC_POINT *EC_KEY_get0_public_key(const EC_KEY *key);
829 * \param pub EC_POINT object with the public key (note: the EC_KEY object
830 * will use an own copy of the EC_POINT object).
833 int EC_KEY_set_public_key(EC_KEY *key, const EC_POINT *pub);