def get_blkhex(tmpl, blkheader, dataid): data = blkheader data += _varintEncode(1 + len(tmpl.txns)) data += _extranonce(tmpl, dataid) for i in range(len(tmpl.txns)): data += tmpl.txns[i].data return _b2a_hex(data).decode('ascii')
def _assemble_submission(tmpl, data, dataid, nonce, foreign): data = data[:76] data += _pack('<I', nonce) if foreign or ('submit/truncate' not in tmpl.mutations or dataid): data += _varintEncode(1 + len(tmpl.txns)) data += _extranonce(tmpl, dataid) if foreign or ('submit/coinbase' not in tmpl.mutations): for i in range(len(tmpl.txns)): data += tmpl.txns[i].data return _b2a_hex(data).decode('ascii')
def _assemble_submission2_internal(tmpl, data, extranonce, nonce, foreign): data = data[:76] data += _pack('!I', nonce) if foreign or ('submit/truncate' not in tmpl.mutations or extranonce): data += _varintEncode(1 + len(tmpl.txns)) # Essentially _extranonce if extranonce: data += _append_cb(tmpl, extranonce) else: data += tmpl.cbtxn.data if foreign or ('submit/coinbase' not in tmpl.mutations): for i in range(len(tmpl.txns)): data += tmpl.txns[i].data return _b2a_hex(data).decode('ascii')
def b2a_hex(data): return _b2a_hex(data).decode("ascii")
def b2a_hex(s): return _b2a_hex(s).decode('us-ascii')
from collections import namedtuple from base64 import b64encode, b64decode from pycoin.tx.Tx import Tx from pycoin.tx.TxOut import TxOut from pycoin.tx.TxIn import TxIn from pycoin.ui import standard_tx_out_script from pycoin.encoding import b2a_hashed_base58, hash160 from pycoin.serialize import b2h_rev, b2h, h2b, h2b_rev from pycoin.contrib.segwit_addr import encode as bech32_encode from pycoin.key.BIP32Node import BIP32Node from pycoin.convention import tx_fee import urllib.request from .txn import * b2a_hex = lambda a: str(_b2a_hex(a), 'ascii') #xfp2hex = lambda a: b2a_hex(a[::-1]).upper() SIM_XPUB = 'tpubD6NzVbkrYhZ4XzL5Dhayo67Gorv1YMS7j8pRUvVMd5odC2LBPLAygka9p7748JtSq82FNGPppFEz5xxZUdasBRCqJqXvUHq6xpnsMcYJzeh' def str2ipath(s): # convert text to numeric path for BIP174 for i in s.split('/'): if i == 'm': continue if not i: continue # trailing or duplicated slashes if i[-1] in "'ph": assert len(i) >= 2, i here = int(i[:-1]) | 0x80000000 else:
def to_sql(self): data = self.to_dict() json_data = json.dumps(data, ensure_ascii=False, check_circular=False, separators=(',', ':')) json_data_z = zlib.compress(json_data.encode('ascii')) return "INSERT INTO region_statistics (region_id, statistics) VALUES (%d, X'%s');" % (self.db_region.db_id, _b2a_hex(json_data_z).decode('ascii'))
def b2a_hex(s): return _b2a_hex(s).decode("us-ascii")