#include "uint256.h"
#include "hash.h"
#include "bignum.h"
-#include "ies.h"
#include <openssl/ec.h> // for EC_KEY definition
+#include <openssl/obj_mac.h>
// secp160k1
// const unsigned int PRIVATE_KEY_SIZE = 192;
// Reserialize to DER
static bool ReserealizeSignature(std::vector<unsigned char>& vchSig);
-
- // Encrypt data
- void EncryptData(const std::vector<unsigned char>& data, std::vector<unsigned char>& encrypted);
};
// secure_allocator is defined in allocators.h
protected:
EC_KEY* pkey;
bool fSet;
- bool fCompressedPubKey;
public:
bool IsNull() const;
bool IsCompressed() const;
- void SetCompressedPubKey();
+ void SetCompressedPubKey(bool fCompressed=true);
void MakeNewKey(bool fCompressed=true);
bool SetPrivKey(const CPrivKey& vchPrivKey);
bool SetSecret(const CSecret& vchSecret, bool fCompressed = true);
CSecret GetSecret() const;
CPrivKey GetPrivKey() const;
CPubKey GetPubKey() const;
- bool WritePEM(BIO *streamObj, const SecureString &strPassKey) const;
bool Sign(uint256 hash, std::vector<unsigned char>& vchSig);
// Check whether an element of a signature (r or s) is valid.
static bool CheckSignatureElement(const unsigned char *vch, int len, bool half);
-
- // Decrypt data
- void DecryptData(const std::vector<unsigned char>& encrypted, std::vector<unsigned char>& data);
};
class CPoint