Beispiel #1
0
int
rsa_sha512_sign_digest(const struct rsa_private_key *key,
		       const uint8_t *digest,
		       mpz_t s)
{
  if (pkcs1_rsa_sha512_encode_digest(s, key->size, digest))
    {
      rsa_compute_root(key, s, s);
      return 1;
    }
  else
    {
      mpz_set_ui(s, 0);
      return 0;
    }  
}
Beispiel #2
0
int
rsa_sha512_sign_digest_tr(const struct rsa_public_key *pub,
			  const struct rsa_private_key *key,
			  void *random_ctx, nettle_random_func *random,
			  const uint8_t *digest,
			  mpz_t s)
{
  mpz_t m;
  int res;

  mpz_init (m);

  res = (pkcs1_rsa_sha512_encode_digest(m, key->size, digest)
	 && rsa_compute_root_tr (pub, key,
				 random_ctx, random,
				 s, m));

  mpz_clear (m);
  return res;
}