Exemplo n.º 1
0
bool RippleAddress::isValid() const
{
    bool	bValid	= false;

	if (!vchData.empty())
	{
		CKey	key;

		switch (nVersion) {
		case VER_NODE_PUBLIC:
			bValid	= key.SetPubKey(getNodePublic());
			break;

		case VER_ACCOUNT_PUBLIC:
			bValid	= key.SetPubKey(getAccountPublic());
			break;

		case VER_ACCOUNT_PRIVATE:
			bValid	= key.SetPrivateKeyU(getAccountPrivate());
			break;

		default:
			bValid	= true;
			break;
		}
	}

	return bValid;
}
Exemplo n.º 2
0
bool RippleAddress::accountPublicVerify(const uint256& uHash, const std::vector<unsigned char>& vucSig) const
{
	CKey		ckPublic;
	bool		bVerified;

	if (!ckPublic.SetPubKey(getAccountPublic()))
	{
		// Bad private key.
		cLog(lsWARNING) << "accountPublicVerify: Bad private key.";
		bVerified	= false;
	}
	else
	{
		bVerified	= ckPublic.Verify(uHash, vucSig);
	}

	return bVerified;
}
Exemplo n.º 3
0
bool RippleAddress::accountPublicVerify (uint256 const& uHash, Blob const& vucSig) const
{
    CKey        ckPublic;
    bool        bVerified;

    if (!ckPublic.SetPubKey (getAccountPublic ()))
    {
        // Bad private key.
        WriteLog (lsWARNING, RippleAddress) << "accountPublicVerify: Bad private key.";
        bVerified   = false;
    }
    else
    {
        bVerified   = ckPublic.Verify (uHash, vucSig);
    }

    return bVerified;
}