Lines Matching refs:grp

28 	EAP_PWD_group *grp;
145 if (data->grp) {
146 EC_GROUP_free(data->grp->group);
147 EC_POINT_free(data->grp->pwe);
148 BN_free(data->grp->order);
149 BN_free(data->grp->prime);
150 os_free(data->grp);
200 ((data->my_element = EC_POINT_new(data->grp->group)) == NULL) ||
208 BN_rand_range(data->private_value, data->grp->order);
209 BN_rand_range(mask, data->grp->order);
211 BN_mod(data->my_scalar, data->my_scalar, data->grp->order,
214 if (!EC_POINT_mul(data->grp->group, data->my_element, NULL,
215 data->grp->pwe, mask, data->bnctx)) {
222 if (!EC_POINT_invert(data->grp->group, data->my_element, data->bnctx))
236 if (!EC_POINT_get_affine_coordinates_GFp(data->grp->group,
244 if (((scalar = os_malloc(BN_num_bytes(data->grp->order))) == NULL) ||
245 ((element = os_malloc(BN_num_bytes(data->grp->prime) * 2)) ==
256 os_memset(scalar, 0, BN_num_bytes(data->grp->order));
257 os_memset(element, 0, BN_num_bytes(data->grp->prime) * 2);
258 offset = BN_num_bytes(data->grp->order) -
262 offset = BN_num_bytes(data->grp->prime) - BN_num_bytes(x);
264 offset = BN_num_bytes(data->grp->prime) - BN_num_bytes(y);
265 BN_bn2bin(y, element + BN_num_bytes(data->grp->prime) + offset);
267 data->outbuf = wpabuf_alloc(2 * BN_num_bytes(data->grp->prime) +
268 BN_num_bytes(data->grp->order));
274 2 * BN_num_bytes(data->grp->prime));
275 wpabuf_put_data(data->outbuf, scalar, BN_num_bytes(data->grp->order));
293 u16 grp;
305 if (((cruft = os_malloc(BN_num_bytes(data->grp->prime))) == NULL) ||
324 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
325 offset = BN_num_bytes(data->grp->prime) - BN_num_bytes(data->k);
327 H_Update(&ctx, cruft, BN_num_bytes(data->grp->prime));
330 if (!EC_POINT_get_affine_coordinates_GFp(data->grp->group,
338 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
339 offset = BN_num_bytes(data->grp->prime) - BN_num_bytes(x);
341 H_Update(&ctx, cruft, BN_num_bytes(data->grp->prime));
342 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
343 offset = BN_num_bytes(data->grp->prime) - BN_num_bytes(y);
345 H_Update(&ctx, cruft, BN_num_bytes(data->grp->prime));
348 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
349 offset = BN_num_bytes(data->grp->order) -
352 H_Update(&ctx, cruft, BN_num_bytes(data->grp->order));
355 if (!EC_POINT_get_affine_coordinates_GFp(data->grp->group,
363 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
364 offset = BN_num_bytes(data->grp->prime) - BN_num_bytes(x);
366 H_Update(&ctx, cruft, BN_num_bytes(data->grp->prime));
367 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
368 offset = BN_num_bytes(data->grp->prime) - BN_num_bytes(y);
370 H_Update(&ctx, cruft, BN_num_bytes(data->grp->prime));
373 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
374 offset = BN_num_bytes(data->grp->order) -
377 H_Update(&ctx, cruft, BN_num_bytes(data->grp->order));
380 grp = htons(data->group_num);
381 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
383 os_memcpy(ptr, &grp, sizeof(u16));
597 if ((data->grp = os_malloc(sizeof(EAP_PWD_group))) == NULL) {
602 if (compute_password_element(data->grp, data->group_num,
612 BN_num_bits(data->grp->prime));
634 ((point = EC_POINT_new(data->grp->group)) == NULL) ||
635 ((K = EC_POINT_new(data->grp->group)) == NULL) ||
636 ((data->peer_element = EC_POINT_new(data->grp->group)) == NULL)) {
642 if (!EC_GROUP_get_cofactor(data->grp->group, cofactor, NULL)) {
650 BN_bin2bn(ptr, BN_num_bytes(data->grp->prime), x);
651 ptr += BN_num_bytes(data->grp->prime);
652 BN_bin2bn(ptr, BN_num_bytes(data->grp->prime), y);
653 ptr += BN_num_bytes(data->grp->prime);
654 BN_bin2bn(ptr, BN_num_bytes(data->grp->order), data->peer_scalar);
655 if (!EC_POINT_set_affine_coordinates_GFp(data->grp->group,
665 if (!EC_POINT_mul(data->grp->group, point, NULL,
671 if (EC_POINT_is_at_infinity(data->grp->group, point)) {
679 if ((!EC_POINT_mul(data->grp->group, K, NULL, data->grp->pwe,
681 (!EC_POINT_add(data->grp->group, K, K, data->peer_element,
683 (!EC_POINT_mul(data->grp->group, K, NULL, K, data->private_value,
692 if (!EC_POINT_mul(data->grp->group, K, NULL, K, cofactor,
706 if (EC_POINT_is_at_infinity(data->grp->group, K)) {
711 if (!EC_POINT_get_affine_coordinates_GFp(data->grp->group, K, data->k,
740 u16 grp;
745 grp = htons(data->group_num);
747 os_memcpy(ptr, &grp, sizeof(u16));
754 if (((cruft = os_malloc(BN_num_bytes(data->grp->prime))) == NULL) ||
767 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
768 offset = BN_num_bytes(data->grp->prime) - BN_num_bytes(data->k);
770 H_Update(&ctx, cruft, BN_num_bytes(data->grp->prime));
773 if (!EC_POINT_get_affine_coordinates_GFp(data->grp->group,
780 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
781 offset = BN_num_bytes(data->grp->prime) - BN_num_bytes(x);
783 H_Update(&ctx, cruft, BN_num_bytes(data->grp->prime));
784 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
785 offset = BN_num_bytes(data->grp->prime) - BN_num_bytes(y);
787 H_Update(&ctx, cruft, BN_num_bytes(data->grp->prime));
790 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
791 offset = BN_num_bytes(data->grp->order) -
794 H_Update(&ctx, cruft, BN_num_bytes(data->grp->order));
797 if (!EC_POINT_get_affine_coordinates_GFp(data->grp->group,
805 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
806 offset = BN_num_bytes(data->grp->prime) - BN_num_bytes(x);
808 H_Update(&ctx, cruft, BN_num_bytes(data->grp->prime));
809 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
810 offset = BN_num_bytes(data->grp->prime) - BN_num_bytes(y);
812 H_Update(&ctx, cruft, BN_num_bytes(data->grp->prime));
815 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
816 offset = BN_num_bytes(data->grp->order) -
819 H_Update(&ctx, cruft, BN_num_bytes(data->grp->order));
822 os_memset(cruft, 0, BN_num_bytes(data->grp->prime));
836 if (compute_keys(data->grp, data->bnctx, data->k,