Lines Matching defs:p_n
258 static void montgomery_mul_add(struct long_int_num *p_a, unsigned long b, struct long_int_num *p_n,
266 unsigned long *p_nd = p_n->p_uint;
270 while (p_a->valid_word_len > p_n->valid_word_len){
271 lin_sub(p_a, p_n);
297 p_res->valid_word_len = p_n->valid_word_len;
299 lin_sub(p_res, p_n);
303 static void montgomery_mod_mul(struct long_int_num *p_a, struct long_int_num *p_b, struct long_int_num *p_n,
311 montgomery_mul_add(p_a, p_b->p_uint[i], p_n, n_n0_i, p_res);
315 struct long_int_num *montgomery_mod_exp(struct long_int_num *p_m, struct long_int_num *p_n, unsigned long n_n0_i,
326 p_mr = lin_create(p_n->valid_word_len);
331 p_square = lin_create(p_n->valid_word_len);
336 p_res = lin_create(p_n->valid_word_len);
341 montgomery_mod_mul(p_m, p_rr, p_n, n_n0_i, p_mr);
352 montgomery_mod_mul(p_res, p_res, p_n, n_n0_i, p_square);
354 montgomery_mod_mul(p_mr, p_square, p_n, n_n0_i, p_res);
359 montgomery_mod_mul(p_res, p_res, p_n, n_n0_i, p_square);
360 montgomery_mod_mul(p_m, p_square, p_n, n_n0_i, p_res);
362 if (lin_compare(p_res, p_n) >= 0) {
363 lin_sub(p_res, p_n);