Lines Matching refs:ecParams

190 ec_NewKey(ECParams *ecParams, ECPrivateKey **privKey,  in ec_NewKey()  argument
205 if (!ecParams || ecParams->name == ECCurve_noName || in ec_NewKey()
228 key->ecParams.arena = arena; in ec_NewKey()
229 key->ecParams.type = ecParams->type; in ec_NewKey()
230 key->ecParams.fieldID.size = ecParams->fieldID.size; in ec_NewKey()
231 key->ecParams.fieldID.type = ecParams->fieldID.type; in ec_NewKey()
232 if (ecParams->fieldID.type == ec_field_GFp || in ec_NewKey()
233 ecParams->fieldID.type == ec_field_plain) { in ec_NewKey()
234 CHECK_SEC_OK(SECITEM_CopyItem(arena, &key->ecParams.fieldID.u.prime, in ec_NewKey()
235 &ecParams->fieldID.u.prime)); in ec_NewKey()
237 CHECK_SEC_OK(SECITEM_CopyItem(arena, &key->ecParams.fieldID.u.poly, in ec_NewKey()
238 &ecParams->fieldID.u.poly)); in ec_NewKey()
240 key->ecParams.fieldID.k1 = ecParams->fieldID.k1; in ec_NewKey()
241 key->ecParams.fieldID.k2 = ecParams->fieldID.k2; in ec_NewKey()
242 key->ecParams.fieldID.k3 = ecParams->fieldID.k3; in ec_NewKey()
243 CHECK_SEC_OK(SECITEM_CopyItem(arena, &key->ecParams.curve.a, in ec_NewKey()
244 &ecParams->curve.a)); in ec_NewKey()
245 CHECK_SEC_OK(SECITEM_CopyItem(arena, &key->ecParams.curve.b, in ec_NewKey()
246 &ecParams->curve.b)); in ec_NewKey()
247 CHECK_SEC_OK(SECITEM_CopyItem(arena, &key->ecParams.curve.seed, in ec_NewKey()
248 &ecParams->curve.seed)); in ec_NewKey()
249 CHECK_SEC_OK(SECITEM_CopyItem(arena, &key->ecParams.base, in ec_NewKey()
250 &ecParams->base)); in ec_NewKey()
251 CHECK_SEC_OK(SECITEM_CopyItem(arena, &key->ecParams.order, in ec_NewKey()
252 &ecParams->order)); in ec_NewKey()
253 key->ecParams.cofactor = ecParams->cofactor; in ec_NewKey()
254 CHECK_SEC_OK(SECITEM_CopyItem(arena, &key->ecParams.DEREncoding, in ec_NewKey()
255 &ecParams->DEREncoding)); in ec_NewKey()
256 key->ecParams.name = ecParams->name; in ec_NewKey()
257 CHECK_SEC_OK(SECITEM_CopyItem(arena, &key->ecParams.curveOID, in ec_NewKey()
258 &ecParams->curveOID)); in ec_NewKey()
260 SECITEM_AllocItem(arena, &key->publicValue, EC_GetPointSize(ecParams)); in ec_NewKey()
261 len = ecParams->order.len; in ec_NewKey()
275 if (ecParams->fieldID.type == ec_field_plain) { in ec_NewKey()
276 const ECMethod *method = ec_get_method_from_name(ecParams->name); in ec_NewKey()
290 rv = ec_points_mul(ecParams, &k, NULL, NULL, &(key->publicValue)); in ec_NewKey()
318 EC_NewKeyFromSeed(ECParams *ecParams, ECPrivateKey **privKey, in EC_NewKeyFromSeed() argument
322 rv = ec_NewKey(ecParams, privKey, seed, seedlen); in EC_NewKeyFromSeed()
388 EC_NewKey(ECParams *ecParams, ECPrivateKey **privKey) in EC_NewKey() argument
394 if (!ecParams || ecParams->name == ECCurve_noName || !privKey) { in EC_NewKey()
399 len = ecParams->order.len; in EC_NewKey()
400 privKeyBytes = ec_GenerateRandomPrivateKey(ecParams->order.data, len); in EC_NewKey()
404 CHECK_SEC_OK(ec_NewKey(ecParams, privKey, privKeyBytes, len)); in EC_NewKey()
425 EC_ValidatePublicKey(ECParams *ecParams, SECItem *publicValue) in EC_ValidatePublicKey() argument
433 if (!ecParams || ecParams->name == ECCurve_noName || in EC_ValidatePublicKey()
440 if (ecParams->fieldID.type == ec_field_plain) { in EC_ValidatePublicKey()
441 const ECMethod *method = ec_get_method_from_name(ecParams->name); in EC_ValidatePublicKey()
451 len = (((unsigned int)ecParams->fieldID.size) + 7) >> 3; in EC_ValidatePublicKey()
470 group = ECGroup_fromName(ecParams->name); in EC_ValidatePublicKey()
481 if ((ecParams->name <= ECCurve_noName) || in EC_ValidatePublicKey()
482 (ecParams->name >= ECCurve_pastLastCurve)) { in EC_ValidatePublicKey()
525 ECParams *ecParams, in ECDH_Derive() argument
541 !ecParams || ecParams->name == ECCurve_noName || in ECDH_Derive()
551 if (EC_ValidatePublicKey(ecParams, publicValue) != SECSuccess) { in ECDH_Derive()
557 if (ecParams->fieldID.type == ec_field_plain) { in ECDH_Derive()
560 derivedSecret = SECITEM_AllocItem(NULL, derivedSecret, EC_GetPointSize(ecParams)); in ECDH_Derive()
565 method = ec_get_method_from_name(ecParams->name); in ECDH_Derive()
589 len = (ecParams->fieldID.size + 7) >> 3; in ECDH_Derive()
590 pointQ.len = EC_GetPointSize(ecParams); in ECDH_Derive()
598 if (withCofactor && (ecParams->cofactor != 1)) { in ECDH_Derive()
602 mp_set(&cofactor, ecParams->cofactor); in ECDH_Derive()
607 if (ec_points_mul(ecParams, NULL, &k, publicValue, &pointQ) != SECSuccess) { in ECDH_Derive()
660 ECParams *ecParams = NULL; in ECDSA_SignDigestWithSeed() local
688 ecParams = &(key->ecParams); in ECDSA_SignDigestWithSeed()
689 flen = (ecParams->fieldID.size + 7) >> 3; in ECDSA_SignDigestWithSeed()
690 olen = ecParams->order.len; in ECDSA_SignDigestWithSeed()
709 SECITEM_TO_MPINT(ecParams->order, &n); in ECDSA_SignDigestWithSeed()
752 kGpoint.len = EC_GetPointSize(ecParams); in ECDSA_SignDigestWithSeed()
755 (ec_points_mul(ecParams, &k, NULL, NULL, &kGpoint) != SECSuccess)) in ECDSA_SignDigestWithSeed()
813 if ((t2 = PORT_Alloc(2 * ecParams->order.len)) == NULL) { in ECDSA_SignDigestWithSeed()
817 if (RNG_GenerateGlobalRandomBytes(t2, 2 * ecParams->order.len) != SECSuccess) { in ECDSA_SignDigestWithSeed()
822 CHECK_MPI_OK(mp_read_unsigned_octets(&t, t2, 2 * ecParams->order.len)); /* t <-$ Zn */ in ECDSA_SignDigestWithSeed()
823 PORT_Memset(t2, 0, 2 * ecParams->order.len); in ECDSA_SignDigestWithSeed()
824 if (RNG_GenerateGlobalRandomBytes(t2, 2 * ecParams->order.len) != SECSuccess) { in ECDSA_SignDigestWithSeed()
829 CHECK_MPI_OK(mp_read_unsigned_octets(&ar, t2, 2 * ecParams->order.len)); /* ar <-$ Zn */ in ECDSA_SignDigestWithSeed()
919 len = key->ecParams.order.len; in ECDSA_SignDigest()
920 kBytes = ec_GenerateRandomPrivateKey(key->ecParams.order.data, len); in ECDSA_SignDigest()
958 ECParams *ecParams = NULL; in ECDSA_VerifyDigest() local
987 ecParams = &(key->ecParams); in ECDSA_VerifyDigest()
988 flen = (ecParams->fieldID.size + 7) >> 3; in ECDSA_VerifyDigest()
989 olen = ecParams->order.len; in ECDSA_VerifyDigest()
1001 SECITEM_AllocItem(NULL, &pointC, EC_GetPointSize(ecParams)); in ECDSA_VerifyDigest()
1026 SECITEM_TO_MPINT(ecParams->order, &n); in ECDSA_VerifyDigest()
1082 if (ec_points_mul(ecParams, &u1, &u2, &key->publicValue, &pointC) != SECSuccess) { in ECDSA_VerifyDigest()