Пример #1
0
int
rsa_md5_sign(const struct rsa_private_key *key,
             struct md5_ctx *hash,
             mpz_t s)
{
    if (pkcs1_rsa_md5_encode(s, key->size, hash))
    {
        rsa_compute_root(key, s, s);
        return 1;
    }
    else
    {
        mpz_set_ui(s, 0);
        return 0;
    }
}
Пример #2
0
int
rsa_md5_verify(const struct rsa_public_key *key,
               struct md5_ctx *hash,
               const mpz_t s)
{
  int res;
  mpz_t m;

  mpz_init(m);

  res = (pkcs1_rsa_md5_encode(m, key->size, hash)
	 && _rsa_verify(key, m, s));

  mpz_clear(m);

  return res;
}