https://github.com/henrycg/earand
Raw File
Tip revision: 362625f3847ddd2e2d5a90cf5f93b4b3ea76e059 authored by Henry Corrigan-Gibbs on 21 May 2018, 19:54:59 UTC
Merge branch 'master' of github.com:henrycg/earand
Tip revision: 362625f
rsa_ca.c
#include <string.h>
#include "rsa_ca.h"

struct rsa_ca {
  RsaParams params;
};

RsaCa RsaCa_New(RsaParams params)
{
  RsaCa ea = safe_malloc(sizeof(*ea));
  ea->params = params;

  return ea;
}

void RsaCa_Free(RsaCa ca)
{
  
  free(ca);
}

X509* RsaCa_SignCertificate(RsaCa ca, X509* cert)
{
  CHECK_CALL(X509_verify(cert, RsaParams_GetEaPublicKey(ca->params)));

  X509* cert_out = X509_dup(cert);
  CHECK_CALL(cert_out);
  CHECK_CALL(X509_sign(cert_out, RsaParams_GetCaPrivateKey(ca->params), EVP_sha1()));
  return cert_out;
}


back to top