#include "util.h"
+/** Errors thrown by the bignum class */
class bignum_error : public std::runtime_error
{
public:
};
-
+/** RAII encapsulated BN_CTX (OpenSSL bignum context) */
class CAutoBN_CTX
{
protected:
};
-
+/** C++ wrapper for BIGNUM (OpenSSl bignum) */
class CBigNum : public BIGNUM
{
public:
std::vector<unsigned char> getvch() const
{
unsigned int nSize = BN_bn2mpi(this, NULL);
- if (nSize < 4)
+ if (nSize <= 4)
return std::vector<unsigned char>();
std::vector<unsigned char> vch(nSize);
BN_bn2mpi(this, &vch[0]);