Lines Matching full:curve
174 X9_62_CURVE *curve;
245 ASN1_SIMPLE(ECPARAMETERS, curve, X9_62_CURVE),
436 static int ec_asn1_group2curve(const EC_GROUP *group, X9_62_CURVE *curve)
445 if (!group || !curve || !curve->a || !curve->b)
523 if (!M_ASN1_OCTET_STRING_set(curve->a, a_buf, len_1) ||
524 !M_ASN1_OCTET_STRING_set(curve->b, b_buf, len_2))
533 if (!curve->seed)
534 if ((curve->seed = ASN1_BIT_STRING_new()) == NULL)
539 curve->seed->flags &= ~(ASN1_STRING_FLAG_BITS_LEFT|0x07);
540 curve->seed->flags |= ASN1_STRING_FLAG_BITS_LEFT;
541 if (!ASN1_BIT_STRING_set(curve->seed, group->seed,
550 if (curve->seed)
552 ASN1_BIT_STRING_free(curve->seed);
553 curve->seed = NULL;
609 /* set the curve */
610 if (!ec_asn1_group2curve(group, ret->curve))
717 * the elliptic curve parameters
762 /* now extract the curve parameters a and b */
763 if (!params->curve || !params->curve->a ||
764 !params->curve->a->data || !params->curve->b ||
765 !params->curve->b->data)
770 a = BN_bin2bn(params->curve->a->data, params->curve->a->length, NULL);
776 b = BN_bin2bn(params->curve->b->data, params->curve->b->length, NULL);
880 /* we have a curve over a prime field */
923 if (params->curve->seed != NULL)
927 if (!(ret->seed = OPENSSL_malloc(params->curve->seed->length)))
933 memcpy(ret->seed, params->curve->seed->data,
934 params->curve->seed->length);
935 ret->seed_len = params->curve->seed->length;
1030 { /* the curve is given by an OID */