Lines Matching refs:key

30 int dsa_verify_key(const dsa_key *key, int *stat)  in dsa_verify_key()  argument
34 err = dsa_int_validate_primes(key, stat); in dsa_verify_key()
37 err = dsa_int_validate_pqg(key, stat); in dsa_verify_key()
40 return dsa_int_validate_xy(key, stat); in dsa_verify_key()
51 int dsa_int_validate_pqg(const dsa_key *key, int *stat) in dsa_int_validate_pqg() argument
56 LTC_ARGCHK(key != NULL); in dsa_int_validate_pqg()
61 if ( key->qord >= LTC_MDSA_MAX_GROUP || key->qord <= 15 || in dsa_int_validate_pqg()
62 (unsigned long)key->qord >= mp_unsigned_bin_size(key->p) || in dsa_int_validate_pqg()
63 (mp_unsigned_bin_size(key->p) - key->qord) >= LTC_MDSA_DELTA ) { in dsa_int_validate_pqg()
68 if (mp_cmp_d(key->g, 1) != LTC_MP_GT || mp_cmp(key->g, key->p) != LTC_MP_LT) { in dsa_int_validate_pqg()
75 if ((err = mp_sub_d(key->p, 1, tmp1)) != CRYPT_OK) { goto error; } in dsa_int_validate_pqg()
76 if ((err = mp_div(tmp1, key->q, tmp1, tmp2)) != CRYPT_OK) { goto error; } in dsa_int_validate_pqg()
85 if ((err = mp_exptmod(key->g, key->q, key->p, tmp1)) != CRYPT_OK) { goto error; } in dsa_int_validate_pqg()
105 int dsa_int_validate_primes(const dsa_key *key, int *stat) in dsa_int_validate_primes() argument
110 LTC_ARGCHK(key != NULL); in dsa_int_validate_primes()
114 if ((err = mp_prime_is_prime(key->q, LTC_MILLER_RABIN_REPS, &res)) != CRYPT_OK) { in dsa_int_validate_primes()
122 if ((err = mp_prime_is_prime(key->p, LTC_MILLER_RABIN_REPS, &res)) != CRYPT_OK) { in dsa_int_validate_primes()
140 int dsa_int_validate_xy(const dsa_key *key, int *stat) in dsa_int_validate_xy() argument
146 LTC_ARGCHK(key != NULL); in dsa_int_validate_xy()
153 if ((err = mp_sub_d(key->p, 1, tmp)) != CRYPT_OK) { in dsa_int_validate_xy()
156 if (mp_cmp_d(key->y, 1) != LTC_MP_GT || mp_cmp(key->y, tmp) != LTC_MP_LT) { in dsa_int_validate_xy()
161 if (key->type == PK_PRIVATE) { in dsa_int_validate_xy()
163 if (mp_cmp_d(key->x, 0) != LTC_MP_GT || mp_cmp(key->x, key->q) != LTC_MP_LT) { in dsa_int_validate_xy()
168 if ((err = mp_exptmod(key->g, key->x, key->p, tmp)) != CRYPT_OK) { in dsa_int_validate_xy()
171 if (mp_cmp(tmp, key->y) != LTC_MP_EQ) { in dsa_int_validate_xy()
180 if ((err = mp_exptmod(key->y, key->q, key->p, tmp)) != CRYPT_OK) { in dsa_int_validate_xy()