Lines Matching refs:P

330         mbedtls_mpi_free( &grp->P );  in mbedtls_ecp_group_free()
363 int mbedtls_ecp_copy( mbedtls_ecp_point *P, const mbedtls_ecp_point *Q ) in mbedtls_ecp_copy() argument
367 MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &P->X, &Q->X ) ); in mbedtls_ecp_copy()
368 MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &P->Y, &Q->Y ) ); in mbedtls_ecp_copy()
369 MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &P->Z, &Q->Z ) ); in mbedtls_ecp_copy()
409 int mbedtls_ecp_point_cmp( const mbedtls_ecp_point *P, in mbedtls_ecp_point_cmp() argument
412 if( mbedtls_mpi_cmp_mpi( &P->X, &Q->X ) == 0 && in mbedtls_ecp_point_cmp()
413 mbedtls_mpi_cmp_mpi( &P->Y, &Q->Y ) == 0 && in mbedtls_ecp_point_cmp()
414 mbedtls_mpi_cmp_mpi( &P->Z, &Q->Z ) == 0 ) in mbedtls_ecp_point_cmp()
425 int mbedtls_ecp_point_read_string( mbedtls_ecp_point *P, int radix, in mbedtls_ecp_point_read_string() argument
430 MBEDTLS_MPI_CHK( mbedtls_mpi_read_string( &P->X, radix, x ) ); in mbedtls_ecp_point_read_string()
431 MBEDTLS_MPI_CHK( mbedtls_mpi_read_string( &P->Y, radix, y ) ); in mbedtls_ecp_point_read_string()
432 MBEDTLS_MPI_CHK( mbedtls_mpi_lset( &P->Z, 1 ) ); in mbedtls_ecp_point_read_string()
441 int mbedtls_ecp_point_write_binary( const mbedtls_ecp_group *grp, const mbedtls_ecp_point *P, in mbedtls_ecp_point_write_binary() argument
455 if( mbedtls_mpi_cmp_int( &P->Z, 0 ) == 0 ) in mbedtls_ecp_point_write_binary()
466 plen = mbedtls_mpi_size( &grp->P ); in mbedtls_ecp_point_write_binary()
476 MBEDTLS_MPI_CHK( mbedtls_mpi_write_binary( &P->X, buf + 1, plen ) ); in mbedtls_ecp_point_write_binary()
477 MBEDTLS_MPI_CHK( mbedtls_mpi_write_binary( &P->Y, buf + 1 + plen, plen ) ); in mbedtls_ecp_point_write_binary()
486 buf[0] = 0x02 + mbedtls_mpi_get_bit( &P->Y, 0 ); in mbedtls_ecp_point_write_binary()
487 MBEDTLS_MPI_CHK( mbedtls_mpi_write_binary( &P->X, buf + 1, plen ) ); in mbedtls_ecp_point_write_binary()
514 plen = mbedtls_mpi_size( &grp->P ); in mbedtls_ecp_point_read_binary()
668 return( mbedtls_mpi_mod_mpi( N, N, &grp->P ) ); in ecp_modp()
681 MBEDTLS_MPI_CHK( mbedtls_mpi_add_mpi( N, N, &grp->P ) ); in ecp_modp()
683 while( mbedtls_mpi_cmp_mpi( N, &grp->P ) >= 0 ) in ecp_modp()
685 MBEDTLS_MPI_CHK( mbedtls_mpi_sub_abs( N, N, &grp->P ) ); in ecp_modp()
719 MBEDTLS_MPI_CHK( mbedtls_mpi_add_mpi( &N, &N, &grp->P ) )
727 while( mbedtls_mpi_cmp_mpi( &N, &grp->P ) >= 0 ) \
728 MBEDTLS_MPI_CHK( mbedtls_mpi_sub_abs( &N, &N, &grp->P ) )
756 MBEDTLS_MPI_CHK( mbedtls_mpi_inv_mod( &Zi, &pt->Z, &grp->P ) ); in ecp_normalize_jac()
817 MBEDTLS_MPI_CHK( mbedtls_mpi_inv_mod( &u, &c[t_len-1], &grp->P ) ); in ecp_normalize_jac_many()
848 MBEDTLS_MPI_CHK( mbedtls_mpi_shrink( &T[i]->X, grp->P.n ) ); in ecp_normalize_jac_many()
849 MBEDTLS_MPI_CHK( mbedtls_mpi_shrink( &T[i]->Y, grp->P.n ) ); in ecp_normalize_jac_many()
881 MBEDTLS_MPI_CHK( mbedtls_mpi_sub_mpi( &mQY, &grp->P, &Q->Y ) ); in ecp_safe_invert_jac()
906 const mbedtls_ecp_point *P ) in ecp_double_jac() argument
921 MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &S, &P->Z, &P->Z ) ); MOD_MUL( S ); in ecp_double_jac()
922 MBEDTLS_MPI_CHK( mbedtls_mpi_add_mpi( &T, &P->X, &S ) ); MOD_ADD( T ); in ecp_double_jac()
923 MBEDTLS_MPI_CHK( mbedtls_mpi_sub_mpi( &U, &P->X, &S ) ); MOD_SUB( U ); in ecp_double_jac()
930 MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &S, &P->X, &P->X ) ); MOD_MUL( S ); in ecp_double_jac()
937 MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &S, &P->Z, &P->Z ) ); MOD_MUL( S ); in ecp_double_jac()
945 MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &T, &P->Y, &P->Y ) ); MOD_MUL( T ); in ecp_double_jac()
947 MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &S, &P->X, &T ) ); MOD_MUL( S ); in ecp_double_jac()
965 MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &U, &P->Y, &P->Z ) ); MOD_MUL( U ); in ecp_double_jac()
997 const mbedtls_ecp_point *P, const mbedtls_ecp_point *Q ) in ecp_add_mixed() argument
1009 if( mbedtls_mpi_cmp_int( &P->Z, 0 ) == 0 ) in ecp_add_mixed()
1013 return( mbedtls_ecp_copy( R, P ) ); in ecp_add_mixed()
1024 MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &T1, &P->Z, &P->Z ) ); MOD_MUL( T1 ); in ecp_add_mixed()
1025 MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &T2, &T1, &P->Z ) ); MOD_MUL( T2 ); in ecp_add_mixed()
1028 MBEDTLS_MPI_CHK( mbedtls_mpi_sub_mpi( &T1, &T1, &P->X ) ); MOD_SUB( T1 ); in ecp_add_mixed()
1029 MBEDTLS_MPI_CHK( mbedtls_mpi_sub_mpi( &T2, &T2, &P->Y ) ); MOD_SUB( T2 ); in ecp_add_mixed()
1036 ret = ecp_double_jac( grp, R, P ); in ecp_add_mixed()
1046 MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &Z, &P->Z, &T1 ) ); MOD_MUL( Z ); in ecp_add_mixed()
1049 MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &T3, &T3, &P->X ) ); MOD_MUL( T3 ); in ecp_add_mixed()
1056 MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &T4, &T4, &P->Y ) ); MOD_MUL( T4 ); in ecp_add_mixed()
1093 while( mbedtls_mpi_cmp_mpi( &l, &grp->P ) >= 0 ) in ecp_randomize_jac()
1192 mbedtls_ecp_point T[], const mbedtls_ecp_point *P, in ecp_precompute_comb() argument
1204 MBEDTLS_MPI_CHK( mbedtls_ecp_copy( &T[0], P ) ); in ecp_precompute_comb()
1310 const mbedtls_mpi *m, const mbedtls_ecp_point *P, in ecp_mul_comb() argument
1341 p_eq_g = ( mbedtls_mpi_cmp_mpi( &P->Y, &grp->G.Y ) == 0 && in ecp_mul_comb()
1342 mbedtls_mpi_cmp_mpi( &P->X, &grp->G.X ) == 0 ); in ecp_mul_comb()
1377 MBEDTLS_MPI_CHK( ecp_precompute_comb( grp, T, P, w, d ) ); in ecp_mul_comb()
1440 static int ecp_normalize_mxz( const mbedtls_ecp_group *grp, mbedtls_ecp_point *P ) in ecp_normalize_mxz() argument
1444 MBEDTLS_MPI_CHK( mbedtls_mpi_inv_mod( &P->Z, &P->Z, &grp->P ) ); in ecp_normalize_mxz()
1445 MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &P->X, &P->X, &P->Z ) ); MOD_MUL( P->X ); in ecp_normalize_mxz()
1446 MBEDTLS_MPI_CHK( mbedtls_mpi_lset( &P->Z, 1 ) ); in ecp_normalize_mxz()
1460 static int ecp_randomize_mxz( const mbedtls_ecp_group *grp, mbedtls_ecp_point *P, in ecp_randomize_mxz() argument
1475 while( mbedtls_mpi_cmp_mpi( &l, &grp->P ) >= 0 ) in ecp_randomize_mxz()
1483 MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &P->X, &P->X, &l ) ); MOD_MUL( P->X ); in ecp_randomize_mxz()
1484 MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &P->Z, &P->Z, &l ) ); MOD_MUL( P->Z ); in ecp_randomize_mxz()
1509 const mbedtls_ecp_point *P, const mbedtls_ecp_point *Q, in ecp_double_add_mxz() argument
1519 MBEDTLS_MPI_CHK( mbedtls_mpi_add_mpi( &A, &P->X, &P->Z ) ); MOD_ADD( A ); in ecp_double_add_mxz()
1521 MBEDTLS_MPI_CHK( mbedtls_mpi_sub_mpi( &B, &P->X, &P->Z ) ); MOD_SUB( B ); in ecp_double_add_mxz()
1551 const mbedtls_mpi *m, const mbedtls_ecp_point *P, in ecp_mul_mxz() argument
1564 MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &PX, &P->X ) ); in ecp_mul_mxz()
1565 MBEDTLS_MPI_CHK( mbedtls_ecp_copy( &RP, P ) ); in ecp_mul_mxz()
1612 const mbedtls_mpi *m, const mbedtls_ecp_point *P, in mbedtls_ecp_mul() argument
1618 if( mbedtls_mpi_cmp_int( &P->Z, 1 ) != 0 ) in mbedtls_ecp_mul()
1622 ( ret = mbedtls_ecp_check_pubkey( grp, P ) ) != 0 ) in mbedtls_ecp_mul()
1627 return( ecp_mul_mxz( grp, R, m, P, f_rng, p_rng ) ); in mbedtls_ecp_mul()
1631 return( ecp_mul_comb( grp, R, m, P, f_rng, p_rng ) ); in mbedtls_ecp_mul()
1649 mbedtls_mpi_cmp_mpi( &pt->X, &grp->P ) >= 0 || in ecp_check_pubkey_sw()
1650 mbedtls_mpi_cmp_mpi( &pt->Y, &grp->P ) >= 0 ) in ecp_check_pubkey_sw()
1693 const mbedtls_ecp_point *P ) in mbedtls_ecp_mul_shortcuts() argument
1699 MBEDTLS_MPI_CHK( mbedtls_ecp_copy( R, P ) ); in mbedtls_ecp_mul_shortcuts()
1703 MBEDTLS_MPI_CHK( mbedtls_ecp_copy( R, P ) ); in mbedtls_ecp_mul_shortcuts()
1705 MBEDTLS_MPI_CHK( mbedtls_mpi_sub_mpi( &R->Y, &grp->P, &R->Y ) ); in mbedtls_ecp_mul_shortcuts()
1709 MBEDTLS_MPI_CHK( mbedtls_ecp_mul( grp, R, m, P, NULL, NULL ) ); in mbedtls_ecp_mul_shortcuts()
1721 const mbedtls_mpi *m, const mbedtls_ecp_point *P, in mbedtls_ecp_muladd() argument
1732 MBEDTLS_MPI_CHK( mbedtls_ecp_mul_shortcuts( grp, &mP, m, P ) ); in mbedtls_ecp_muladd()
1971 mbedtls_ecp_point R, P; in mbedtls_ecp_self_test() local
1987 mbedtls_ecp_point_init( &P ); in mbedtls_ecp_self_test()
2002 MBEDTLS_MPI_CHK( mbedtls_ecp_mul( &grp, &P, &m, &grp.G, NULL, NULL ) ); in mbedtls_ecp_self_test()
2045 MBEDTLS_MPI_CHK( mbedtls_ecp_mul( &grp, &R, &m, &P, NULL, NULL ) ); in mbedtls_ecp_self_test()
2057 MBEDTLS_MPI_CHK( mbedtls_ecp_mul( &grp, &R, &m, &P, NULL, NULL ) ); in mbedtls_ecp_self_test()
2081 mbedtls_ecp_point_free( &P ); in mbedtls_ecp_self_test()