#ifndef PA_SIGNER_SRC_PRIVATEKEY_H_
#define PA_SIGNER_SRC_PRIVATEKEY_H_

#include <stdint.h>
#include <string>
#include <vector>
#include <openssl/evp.h>

#include "KeyInterface.h"

class PrivateKey: public KeyInterface {
  EVP_PKEY* key;

 public:
  PrivateKey(const std::string& filename);
  PrivateKey(const std::vector<uint8_t>& key);
  ~PrivateKey();

  EVP_PKEY* GetKey();
};

#endif /* PA_SIGNER_SRC_PRIVATEKEY_H_ */
