Dash Core  0.12.2.1
P2P Digital Currency
gen_base58_test_vectors Namespace Reference

Functions

def is_valid (v)
 
def gen_valid_vectors ()
 
def gen_invalid_vector (template, corrupt_prefix, randomize_payload_size, corrupt_suffix)
 
def randbool (p=0.5)
 
def gen_invalid_vectors ()
 

Variables

int PUBKEY_ADDRESS = 76
 
int SCRIPT_ADDRESS = 16
 
int PUBKEY_ADDRESS_TEST = 140
 
int SCRIPT_ADDRESS_TEST = 19
 
int PRIVKEY = 204
 
int PRIVKEY_TEST = 239
 
list metadata_keys = ['isPrivkey', 'isTestnet', 'addrType', 'isCompressed']
 
list templates
 
dictionary iters = {'valid':gen_valid_vectors, 'invalid':gen_invalid_vectors}
 
dictionary uiter = iters[sys.argv[1]]
 
 count = int(sys.argv[2])
 
 data = list(islice(uiter(), count))
 
 stdout
 
 sort_keys
 
 True
 
 indent
 

Detailed Description

Generate valid and invalid base58 address and private key test vectors.

Usage: 
gen_base58_test_vectors.py valid 50 > ../../src/test/data/base58_keys_valid.json
gen_base58_test_vectors.py invalid 50 > ../../src/test/data/base58_keys_invalid.json

Function Documentation

◆ gen_invalid_vector()

def gen_base58_test_vectors.gen_invalid_vector (   template,
  corrupt_prefix,
  randomize_payload_size,
  corrupt_suffix 
)
Generate possibly invalid vector

Definition at line 66 of file gen_base58_test_vectors.py.

Referenced by gen_invalid_vectors().

◆ gen_invalid_vectors()

def gen_base58_test_vectors.gen_invalid_vectors ( )
Generate invalid test vectors

Definition at line 89 of file gen_base58_test_vectors.py.

◆ gen_valid_vectors()

def gen_base58_test_vectors.gen_valid_vectors ( )
Generate valid test vectors

Definition at line 54 of file gen_base58_test_vectors.py.

◆ is_valid()

def gen_base58_test_vectors.is_valid (   v)
Check vector v for validity

Definition at line 40 of file gen_base58_test_vectors.py.

Referenced by gen_invalid_vectors(), and gen_valid_vectors().

◆ randbool()

def gen_base58_test_vectors.randbool (   p = 0.5)
Return True with P(p)

Definition at line 85 of file gen_base58_test_vectors.py.

Referenced by gen_invalid_vectors().

Variable Documentation

◆ count

int gen_base58_test_vectors.count = int(sys.argv[2])

Definition at line 119 of file gen_base58_test_vectors.py.

◆ data

gen_base58_test_vectors.data = list(islice(uiter(), count))

Definition at line 123 of file gen_base58_test_vectors.py.

Referenced by base_blob< 512 >.base_blob(), bench_ecdh(), bench_ecdh_setup(), bench_ecmult_wnaf(), bench_field_inverse(), bench_field_inverse_var(), bench_field_mul(), bench_field_normalize(), bench_field_normalize_weak(), bench_field_sqr(), bench_field_sqrt_var(), bench_group_add_affine(), bench_group_add_affine_var(), bench_group_add_var(), bench_group_double_var(), bench_hmac_sha256(), bench_recover(), bench_recover_setup(), bench_rfc6979_hmac_sha256(), bench_scalar_add(), bench_scalar_inverse(), bench_scalar_inverse_var(), bench_scalar_mul(), bench_scalar_negate(), bench_scalar_sqr(), bench_setup(), bench_sha256(), bench_sign(), bench_sign_setup(), bench_wnaf_const(), benchmark_schnorr_init(), benchmark_schnorr_verify(), benchmark_verify(), BIP32Hash(), blake32(), bmw32(), CheckMinimalPush(), compress_small(), CBloomFilter.contains(), CRollingBloomFilter.contains(), counting_illegal_callback_fn(), createrawtransaction(), cubehash_core(), default_error_callback_fn(), default_illegal_callback_fn(), echo_big_core(), echo_small_core(), CMnemonic.FromData(), CMnemonic.Generate(), CDataStream.GetAndClear(), base_blob< 512 >.GetHex(), Checkpoints.GetLastCheckpoint(), PaymentRequestPlus.getMerchant(), CScript.GetSigOpCount(), groestl_big_core(), groestl_small_core(), Checkpoints.GuessVerificationProgress(), http_request_done(), httpevent_callback_fn(), importaddress(), importelectrumwallet(), importpubkey(), CBloomFilter.insert(), CRollingBloomFilter.insert(), InterruptibleRecv(), CBloomFilter.IsRelevantAndUpdate(), Java_org_bitcoin_NativeSecp256k1_secp256k1_1ecdsa_1verify(), jh_core(), keccak_core(), PaymentServer.LoadRootCAs(), luffa3(), luffa4(), luffa5(), main(), payments::PaymentDetails.MergePartialFromCodedStream(), payments::PaymentRequest.MergePartialFromCodedStream(), payments::Payment.MergePartialFromCodedStream(), payments::PaymentACK.MergePartialFromCodedStream(), MutateTxAddOutData(), PaymentServer.netRequestFinished(), nonce_function_rfc6979(), nonce_function_test_fail(), nonce_function_test_retry(), CZMQPublishHashBlockNotifier.NotifyBlock(), CZMQPublishHashTransactionNotifier.NotifyTransaction(), CZMQPublishHashTransactionLockNotifier.NotifyTransactionLock(), CScript.operator<<(), PaymentRequestPlus.parse(), precomputed_nonce_function(), HTTPRequest.ReadBody(), PaymentServer.readPaymentRequestFromFile(), run_benchmark(), secp256k1_context_set_error_callback(), secp256k1_context_set_illegal_callback(), secp256k1_hmac_sha256_write(), secp256k1_sha256_write(), CZMQAbstractPublishNotifier.SendMessage(), payments::PaymentDetails.SerializeWithCachedSizes(), payments::PaymentRequest.SerializeWithCachedSizes(), payments::Payment.SerializeWithCachedSizes(), payments::PaymentACK.SerializeWithCachedSizes(), payments::PaymentDetails.SerializeWithCachedSizesToArray(), payments::PaymentRequest.SerializeWithCachedSizesToArray(), payments::Payment.SerializeWithCachedSizesToArray(), payments::PaymentACK.SerializeWithCachedSizesToArray(), base_blob< 512 >.SetHex(), shavite_big_core(), shavite_small_core(), CConnman.SocketSendData(), sph_blake224(), sph_blake256(), sph_bmw224(), sph_bmw256(), sph_cubehash224(), sph_cubehash256(), sph_cubehash384(), sph_cubehash512(), sph_echo224(), sph_echo256(), sph_echo384(), sph_echo512(), sph_groestl224(), sph_groestl256(), sph_groestl384(), sph_groestl512(), sph_jh224(), sph_jh256(), sph_jh384(), sph_jh512(), sph_keccak224(), sph_keccak256(), sph_keccak384(), sph_keccak512(), sph_luffa224(), sph_luffa256(), sph_luffa384(), sph_luffa512(), sph_shavite224(), sph_shavite256(), sph_shavite384(), sph_shavite512(), sph_simd224(), sph_simd256(), sph_simd384(), sph_simd512(), test_ec_combine(), uncounting_illegal_callback_fn(), update_big(), update_small(), org.bitcoin.NativeSecp256k1.verify(), CRIPEMD160.Write(), CSHA256.Write(), CSHA1.Write(), CSHA512.Write(), CHMAC_SHA512.Write(), CHMAC_SHA256.Write(), CSVModelWriter.write(), CHash256.Write(), CHash160.Write(), WriteBinaryFile(), and zmq_send_multipart().

◆ indent

gen_base58_test_vectors.indent

Definition at line 124 of file gen_base58_test_vectors.py.

Referenced by FormatParagraph().

◆ iters

dictionary gen_base58_test_vectors.iters = {'valid':gen_valid_vectors, 'invalid':gen_invalid_vectors}

Definition at line 113 of file gen_base58_test_vectors.py.

◆ metadata_keys

list gen_base58_test_vectors.metadata_keys = ['isPrivkey', 'isTestnet', 'addrType', 'isCompressed']

Definition at line 25 of file gen_base58_test_vectors.py.

◆ PRIVKEY

int gen_base58_test_vectors.PRIVKEY = 204

Definition at line 22 of file gen_base58_test_vectors.py.

◆ PRIVKEY_TEST

int gen_base58_test_vectors.PRIVKEY_TEST = 239

Definition at line 23 of file gen_base58_test_vectors.py.

◆ PUBKEY_ADDRESS

int gen_base58_test_vectors.PUBKEY_ADDRESS = 76

Definition at line 18 of file gen_base58_test_vectors.py.

◆ PUBKEY_ADDRESS_TEST

int gen_base58_test_vectors.PUBKEY_ADDRESS_TEST = 140

Definition at line 20 of file gen_base58_test_vectors.py.

◆ SCRIPT_ADDRESS

int gen_base58_test_vectors.SCRIPT_ADDRESS = 16

Definition at line 19 of file gen_base58_test_vectors.py.

◆ SCRIPT_ADDRESS_TEST

int gen_base58_test_vectors.SCRIPT_ADDRESS_TEST = 19

Definition at line 21 of file gen_base58_test_vectors.py.

◆ sort_keys

gen_base58_test_vectors.sort_keys

Definition at line 124 of file gen_base58_test_vectors.py.

◆ stdout

◆ templates

list gen_base58_test_vectors.templates
Initial value:
1 = [
2  # prefix, payload_size, suffix, metadata
3  # None = N/A
4  ((PUBKEY_ADDRESS,), 20, (), (False, False, 'pubkey', None)),
5  ((SCRIPT_ADDRESS,), 20, (), (False, False, 'script', None)),
6  ((PUBKEY_ADDRESS_TEST,), 20, (), (False, True, 'pubkey', None)),
7  ((SCRIPT_ADDRESS_TEST,), 20, (), (False, True, 'script', None)),
8  ((PRIVKEY,), 32, (), (True, False, None, False)),
9  ((PRIVKEY,), 32, (1,), (True, False, None, True)),
10  ((PRIVKEY_TEST,), 32, (), (True, True, None, False)),
11  ((PRIVKEY_TEST,), 32, (1,), (True, True, None, True))
12 ]

Definition at line 27 of file gen_base58_test_vectors.py.

◆ True

gen_base58_test_vectors.True

Definition at line 124 of file gen_base58_test_vectors.py.

◆ uiter

def gen_base58_test_vectors.uiter = iters[sys.argv[1]]

Definition at line 115 of file gen_base58_test_vectors.py.