# fe_invert(one_minus_y, one_minus_y);
$one_minux_y = self::
fe_invert( self::
fe_sub( self::
fe_1(),
$A->Y
) );
# fe_1(x);
# fe_add(x, x, A.Y);
# fe_mul(x, x, one_minus_y);
$x = self::
fe_mul( self::
fe_add(self::
fe_1(),
$A->Y
),
$one_minux_y );
# fe_tobytes(curve25519_pk, x);
return self::
fe_tobytes($x);
} /**
* @internal You should not use this directly from another application
*
* @param string $sk
* @return string
* @throws SodiumException
* @throws TypeError
*/