Пример #1
0
    def validate_address(self, address: str):
        """Validate the given address

        :param address: address
        :type address: str
        :returns: true or false
        """
        return convert.is_valid(address)
Пример #2
0
 def test_is_valid(self):
     self.assertTrue(convert.is_valid('bitcoincash:qqkv9wr69ry2p9l53lxp635va4h86wv435995w8p2h'))
     self.assertTrue(convert.is_valid('2MwikwR6hoVijCmr1u8UgzFMHFP6rpQyRvP'))
     self.assertFalse(convert.is_valid('bitcoincash:aqkv9wr69ry2p9l53lxp635va4h86wv435995w8p2h'))
     self.assertFalse(convert.is_valid('bitcoincash:qqqqqqqq9ry2p9l53lxp635va4h86wv435995w8p2h'))
     self.assertFalse(convert.is_valid('22222wR6hoVijCmr1u8UgzFMHFP6rpQyRvP'))
     self.assertFalse(convert.is_valid(False))
     self.assertFalse(convert.is_valid('Hello World!'))
Пример #3
0
def bitcoinAddress2bin(btcAddress):
    """convert a bitcoin address to binary data capable of being put in a CScript"""
    #print("btcAddress = ", btcAddress)
    legacyAddressBytes = b''
    # btcAddress contains prefix
    if convert.is_valid(btcAddress):
        # 2nd argument "1" is included for regtest; otherwise, omit the second argument
        legacyAddressBytes = convert.to_legacy_address(btcAddress, 1).encode()
    else:
        assert(0)  # should not arrive here
    return legacyAddressBytes
Пример #4
0
    def __init__(self,address):
        if not isinstance(address,str):
            raise TypeError('address should be str!')
        if not is_valid(address):
            raise ValueError('{} is not a valid address'.format(address))

        self._address = to_cash_address(address)
        self.memos_send=[]  # list of memos sent by user
        self.memos_post=[]  # list of post memo sent by user
        self.memos_like=[]  # list of like / tip memo sent by user

        self.memos_receive=[]   # list of memos that are not sent by user but transfer BCH to user

        self._private_key=None

        self.name=None
        self.following=set()
Пример #5
0
def generate_verify(parameters, ip_addr):
    _addr = False
    _amount = False
    _label = False
    _received = False
    _payment = False

    # Find payment by label, if not verified, set parameters
    if 'label' in parameters:
        _payment = get_payment_by_label(parameters.label)
        if not _payment:
            abort(400, "ERROR: Unknown Label! - " + parameters.label)
    # Find payment by addr, if not verified, set parameters
    elif 'addr' in parameters and 'amount' in parameters:
        _amount = parameters.amount
        if convert.is_valid(parameters.addr):
            _addr = parameters.addr
            _payment = get_payment_by_addr(_addr)
            if not _payment:
                abort(400, "ERROR: Unknown Payment Address! - " + _addr)
        else:
            abort(400, "Invalid address!")
    else:
        abort(400, "Incorrect use of API, RTFM!")

    # TODO: return more payment details. see verify_tx.verify()
    if _payment.received == 1:
        return json.dumps({"received": 1})
    else:
        _addr = _payment.addr
        _amount = _payment.amount
        _label = _payment.label

    # If payment not received yet, rescan
    _received = verify_tx.verify(_addr, _amount)

    # If rescan has positive result, update payment record in database
    if _received['received'] == 1 and _payment.received == 0:
        update_payment_received(_payment.id, 1, _received['txid'])

    # Return verification result
    if _received:
        return json.dumps(_received)
    else:
        return json.dumps({"received": 0})
Пример #6
0
    def validate_address(cls, name, address):
        if not is_valid(address):
            raise ValueError('{} is not a valid bitcoincash address'.format(name))

        return address
Пример #7
0
def filterBitcoin(bitcoin):
    """Filter bitcoin address
    """
    if convert.is_valid(bitcoin):
        return bitcoin
    return ""
Пример #8
0
def validate_address(address):
    return convert.is_valid(address)
Пример #9
0
 def validate_addr(self, addr):
     if is_valid(addr):
         return self.to_legacy_address(addr)
Пример #10
0
 def validate_bch(cls, addr):
     return is_valid(addr)
Пример #11
0
from cashaddress import convert
import sys

if len(sys.argv) != 2:
    print("usage : bhcconvert <cashAddrss>")
else:
    addrss = sys.argv[1]
    addrss = addrss.replace('bitcoincash:', '')
    if convert.is_valid('bitcoincash:' + addrss):
        print(convert.to_legacy_address('bitcoincash:' + addrss))
    else:
        sys.stderr.write('Invalid address\n')
Пример #12
0
def is_address_valid(address):
    return convert.is_valid(address)