fn encrypt_internal<R: CryptoRngCore + ?Sized, MGF: FnMut(&mut [u8], &mut [u8])>( rng: &mut R, msg: &[u8], p_hash: &[u8], h_size: usize, k: usize, mgf: MGF, ) -> Result<Zeroizing<Vec<u8>>>