pub unsafe extern "C" fn mbedtls_rsa_private(
    ctx: *mut mbedtls_rsa_context,
    f_rng: Option<unsafe extern "C" fn(arg1: *mut c_void, arg2: *mut c_uchar, arg3: usize) -> c_int>,
    p_rng: *mut c_void,
    input: *const c_uchar,
    output: *mut c_uchar
) -> c_int
Expand description

\brief This function performs an RSA private key operation.

\note Blinding is used if and only if a PRNG is provided.

\note If blinding is used, both the base of exponentiation and the exponent are blinded, providing protection against some side-channel attacks.

\warning It is deprecated and a security risk to not provide a PRNG here and thereby prevent the use of blinding. Future versions of the library may enforce the presence of a PRNG.

\param ctx The initialized RSA context to use. \param f_rng The RNG function, used for blinding. It is mandatory. \param p_rng The RNG context to pass to \p f_rng. This may be \c NULL if \p f_rng doesn’t need a context. \param input The input buffer. This must be a readable buffer of length \c ctx->len Bytes. For example, \c 256 Bytes for an 2048-bit RSA modulus. \param output The output buffer. This must be a writable buffer of length \c ctx->len Bytes. For example, \c 256 Bytes for an 2048-bit RSA modulus.

\return \c 0 on success. \return An \c MBEDTLS_ERR_RSA_XXX error code on failure.