├── .gitignore ├── README.md ├── backend ├── __init__.py ├── app │ └── __init__.py ├── blockchain │ ├── __init__.py │ ├── block.py │ └── blockchain.py ├── config.py ├── pubsub.py ├── scripts │ ├── average_block_rate.py │ └── test_app.py ├── tests │ ├── blockchain │ │ ├── test_block.py │ │ └── test_blockchain.py │ ├── util │ │ ├── test_crypto_hash.py │ │ └── test_hex_to_binary.py │ └── wallet │ │ ├── test_transaction.py │ │ ├── test_transaction_pool.py │ │ └── test_wallet.py ├── util │ ├── __init__.py │ ├── crypto_hash.py │ └── hex_to_binary.py └── wallet │ ├── __init__.py │ ├── transaction.py │ ├── transaction_pool.py │ └── wallet.py ├── blockchain-env ├── bin │ ├── activate │ ├── activate.csh │ ├── activate.fish │ ├── chardetect │ ├── easy_install │ ├── easy_install-3.7 │ ├── flask │ ├── pip │ ├── pip3 │ ├── pip3.7 │ ├── py.test │ ├── pytest │ ├── python │ └── python3 ├── lib │ └── python3.7 │ │ └── site-packages │ │ ├── Click-7.0.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE.txt │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── Cryptodome │ │ ├── Cipher │ │ │ ├── AES.py │ │ │ ├── AES.pyi │ │ │ ├── ARC2.py │ │ │ ├── ARC2.pyi │ │ │ ├── ARC4.py │ │ │ ├── ARC4.pyi │ │ │ ├── Blowfish.py │ │ │ ├── Blowfish.pyi │ │ │ ├── CAST.py │ │ │ ├── CAST.pyi │ │ │ ├── ChaCha20.py │ │ │ ├── ChaCha20.pyi │ │ │ ├── ChaCha20_Poly1305.py │ │ │ ├── ChaCha20_Poly1305.pyi │ │ │ ├── DES.py │ │ │ ├── DES.pyi │ │ │ ├── DES3.py │ │ │ ├── DES3.pyi │ │ │ ├── PKCS1_OAEP.py │ │ │ ├── PKCS1_OAEP.pyi │ │ │ ├── PKCS1_v1_5.py │ │ │ ├── PKCS1_v1_5.pyi │ │ │ ├── Salsa20.py │ │ │ ├── Salsa20.pyi │ │ │ ├── _ARC4.cpython-37m-darwin.so │ │ │ ├── _EKSBlowfish.py │ │ │ ├── _EKSBlowfish.pyi │ │ │ ├── _Salsa20.cpython-37m-darwin.so │ │ │ ├── __init__.py │ │ │ ├── __init__.pyi │ │ │ ├── _chacha20.cpython-37m-darwin.so │ │ │ ├── _mode_cbc.py │ │ │ ├── _mode_cbc.pyi │ │ │ ├── _mode_ccm.py │ │ │ ├── _mode_ccm.pyi │ │ │ ├── _mode_cfb.py │ │ │ ├── _mode_cfb.pyi │ │ │ ├── _mode_ctr.py │ │ │ ├── _mode_ctr.pyi │ │ │ ├── _mode_eax.py │ │ │ ├── _mode_eax.pyi │ │ │ ├── _mode_ecb.py │ │ │ ├── _mode_ecb.pyi │ │ │ ├── _mode_gcm.py │ │ │ ├── _mode_gcm.pyi │ │ │ ├── _mode_ocb.py │ │ │ ├── _mode_ocb.pyi │ │ │ ├── _mode_ofb.py │ │ │ ├── _mode_ofb.pyi │ │ │ ├── _mode_openpgp.py │ │ │ ├── _mode_openpgp.pyi │ │ │ ├── _mode_siv.py │ │ │ ├── _mode_siv.pyi │ │ │ ├── _raw_aes.cpython-37m-darwin.so │ │ │ ├── _raw_aesni.cpython-37m-darwin.so │ │ │ ├── _raw_arc2.cpython-37m-darwin.so │ │ │ ├── _raw_blowfish.cpython-37m-darwin.so │ │ │ ├── _raw_cast.cpython-37m-darwin.so │ │ │ ├── _raw_cbc.cpython-37m-darwin.so │ │ │ ├── _raw_cfb.cpython-37m-darwin.so │ │ │ ├── _raw_ctr.cpython-37m-darwin.so │ │ │ ├── _raw_des.cpython-37m-darwin.so │ │ │ ├── _raw_des3.cpython-37m-darwin.so │ │ │ ├── _raw_ecb.cpython-37m-darwin.so │ │ │ ├── _raw_eksblowfish.cpython-37m-darwin.so │ │ │ ├── _raw_ocb.cpython-37m-darwin.so │ │ │ └── _raw_ofb.cpython-37m-darwin.so │ │ ├── Hash │ │ │ ├── BLAKE2b.py │ │ │ ├── BLAKE2b.pyi │ │ │ ├── BLAKE2s.py │ │ │ ├── BLAKE2s.pyi │ │ │ ├── CMAC.py │ │ │ ├── CMAC.pyi │ │ │ ├── HMAC.py │ │ │ ├── HMAC.pyi │ │ │ ├── MD2.py │ │ │ ├── MD2.pyi │ │ │ ├── MD4.py │ │ │ ├── MD4.pyi │ │ │ ├── MD5.py │ │ │ ├── MD5.pyi │ │ │ ├── Poly1305.py │ │ │ ├── Poly1305.pyi │ │ │ ├── RIPEMD.py │ │ │ ├── RIPEMD.pyi │ │ │ ├── RIPEMD160.py │ │ │ ├── RIPEMD160.pyi │ │ │ ├── SHA.py │ │ │ ├── SHA.pyi │ │ │ ├── SHA1.py │ │ │ ├── SHA1.pyi │ │ │ ├── SHA224.py │ │ │ ├── SHA224.pyi │ │ │ ├── SHA256.py │ │ │ ├── SHA256.pyi │ │ │ ├── SHA384.py │ │ │ ├── SHA384.pyi │ │ │ ├── SHA3_224.py │ │ │ ├── SHA3_224.pyi │ │ │ ├── SHA3_256.py │ │ │ ├── SHA3_256.pyi │ │ │ ├── SHA3_384.py │ │ │ ├── SHA3_384.pyi │ │ │ ├── SHA3_512.py │ │ │ ├── SHA3_512.pyi │ │ │ ├── SHA512.py │ │ │ ├── SHA512.pyi │ │ │ ├── SHAKE128.py │ │ │ ├── SHAKE128.pyi │ │ │ ├── SHAKE256.py │ │ │ ├── SHAKE256.pyi │ │ │ ├── _BLAKE2b.cpython-37m-darwin.so │ │ │ ├── _BLAKE2s.cpython-37m-darwin.so │ │ │ ├── _MD2.cpython-37m-darwin.so │ │ │ ├── _MD4.cpython-37m-darwin.so │ │ │ ├── _MD5.cpython-37m-darwin.so │ │ │ ├── _RIPEMD160.cpython-37m-darwin.so │ │ │ ├── _SHA1.cpython-37m-darwin.so │ │ │ ├── _SHA224.cpython-37m-darwin.so │ │ │ ├── _SHA256.cpython-37m-darwin.so │ │ │ ├── _SHA384.cpython-37m-darwin.so │ │ │ ├── _SHA512.cpython-37m-darwin.so │ │ │ ├── __init__.py │ │ │ ├── __init__.pyi │ │ │ ├── _ghash_clmul.cpython-37m-darwin.so │ │ │ ├── _ghash_portable.cpython-37m-darwin.so │ │ │ ├── _keccak.cpython-37m-darwin.so │ │ │ ├── _poly1305.cpython-37m-darwin.so │ │ │ ├── keccak.py │ │ │ └── keccak.pyi │ │ ├── IO │ │ │ ├── PEM.py │ │ │ ├── PEM.pyi │ │ │ ├── PKCS8.py │ │ │ ├── PKCS8.pyi │ │ │ ├── _PBES.py │ │ │ ├── _PBES.pyi │ │ │ └── __init__.py │ │ ├── Math │ │ │ ├── Numbers.py │ │ │ ├── Numbers.pyi │ │ │ ├── Primality.py │ │ │ ├── Primality.pyi │ │ │ ├── _IntegerBase.py │ │ │ ├── _IntegerBase.pyi │ │ │ ├── _IntegerCustom.py │ │ │ ├── _IntegerCustom.pyi │ │ │ ├── _IntegerGMP.py │ │ │ ├── _IntegerGMP.pyi │ │ │ ├── _IntegerNative.py │ │ │ ├── _IntegerNative.pyi │ │ │ ├── __init__.py │ │ │ └── _modexp.cpython-37m-darwin.so │ │ ├── Protocol │ │ │ ├── KDF.py │ │ │ ├── KDF.pyi │ │ │ ├── SecretSharing.py │ │ │ ├── SecretSharing.pyi │ │ │ ├── __init__.py │ │ │ ├── __init__.pyi │ │ │ └── _scrypt.cpython-37m-darwin.so │ │ ├── PublicKey │ │ │ ├── DSA.py │ │ │ ├── DSA.pyi │ │ │ ├── ECC.py │ │ │ ├── ECC.pyi │ │ │ ├── ElGamal.py │ │ │ ├── ElGamal.pyi │ │ │ ├── RSA.py │ │ │ ├── RSA.pyi │ │ │ ├── __init__.py │ │ │ ├── __init__.pyi │ │ │ ├── _ec_ws.cpython-37m-darwin.so │ │ │ ├── _openssh.py │ │ │ └── _openssh.pyi │ │ ├── Random │ │ │ ├── __init__.py │ │ │ ├── __init__.pyi │ │ │ ├── random.py │ │ │ └── random.pyi │ │ ├── SelfTest │ │ │ ├── Cipher │ │ │ │ ├── __init__.py │ │ │ │ ├── common.py │ │ │ │ ├── test_AES.py │ │ │ │ ├── test_ARC2.py │ │ │ │ ├── test_ARC4.py │ │ │ │ ├── test_Blowfish.py │ │ │ │ ├── test_CAST.py │ │ │ │ ├── test_CBC.py │ │ │ │ ├── test_CCM.py │ │ │ │ ├── test_CFB.py │ │ │ │ ├── test_CTR.py │ │ │ │ ├── test_ChaCha20.py │ │ │ │ ├── test_ChaCha20_Poly1305.py │ │ │ │ ├── test_DES.py │ │ │ │ ├── test_DES3.py │ │ │ │ ├── test_EAX.py │ │ │ │ ├── test_GCM.py │ │ │ │ ├── test_OCB.py │ │ │ │ ├── test_OFB.py │ │ │ │ ├── test_OpenPGP.py │ │ │ │ ├── test_SIV.py │ │ │ │ ├── test_Salsa20.py │ │ │ │ ├── test_pkcs1_15.py │ │ │ │ ├── test_pkcs1_oaep.py │ │ │ │ └── test_vectors │ │ │ │ │ ├── AES │ │ │ │ │ ├── CBCGFSbox128.rsp │ │ │ │ │ ├── CBCGFSbox192.rsp │ │ │ │ │ ├── CBCGFSbox256.rsp │ │ │ │ │ ├── CBCKeySbox128.rsp │ │ │ │ │ ├── CBCKeySbox192.rsp │ │ │ │ │ ├── CBCKeySbox256.rsp │ │ │ │ │ ├── CBCMCT128.rsp │ │ │ │ │ ├── CBCMCT192.rsp │ │ │ │ │ ├── CBCMCT256.rsp │ │ │ │ │ ├── CBCMMT128.rsp │ │ │ │ │ ├── CBCMMT192.rsp │ │ │ │ │ ├── CBCMMT256.rsp │ │ │ │ │ ├── CBCVarKey128.rsp │ │ │ │ │ ├── CBCVarKey192.rsp │ │ │ │ │ ├── CBCVarKey256.rsp │ │ │ │ │ ├── CBCVarTxt128.rsp │ │ │ │ │ ├── CBCVarTxt192.rsp │ │ │ │ │ ├── CBCVarTxt256.rsp │ │ │ │ │ ├── CFB128GFSbox128.rsp │ │ │ │ │ ├── CFB128GFSbox192.rsp │ │ │ │ │ ├── CFB128GFSbox256.rsp │ │ │ │ │ ├── CFB128KeySbox128.rsp │ │ │ │ │ ├── CFB128KeySbox192.rsp │ │ │ │ │ ├── CFB128KeySbox256.rsp │ │ │ │ │ ├── CFB128MCT128.rsp │ │ │ │ │ ├── CFB128MCT192.rsp │ │ │ │ │ ├── CFB128MCT256.rsp │ │ │ │ │ ├── CFB128MMT128.rsp │ │ │ │ │ ├── CFB128MMT192.rsp │ │ │ │ │ ├── CFB128MMT256.rsp │ │ │ │ │ ├── CFB128VarKey128.rsp │ │ │ │ │ ├── CFB128VarKey192.rsp │ │ │ │ │ ├── CFB128VarKey256.rsp │ │ │ │ │ ├── CFB128VarTxt128.rsp │ │ │ │ │ ├── CFB128VarTxt192.rsp │ │ │ │ │ ├── CFB128VarTxt256.rsp │ │ │ │ │ ├── CFB8GFSbox128.rsp │ │ │ │ │ ├── CFB8GFSbox192.rsp │ │ │ │ │ ├── CFB8GFSbox256.rsp │ │ │ │ │ ├── CFB8KeySbox128.rsp │ │ │ │ │ ├── CFB8KeySbox192.rsp │ │ │ │ │ ├── CFB8KeySbox256.rsp │ │ │ │ │ ├── CFB8MCT128.rsp │ │ │ │ │ ├── CFB8MCT192.rsp │ │ │ │ │ ├── CFB8MCT256.rsp │ │ │ │ │ ├── CFB8MMT128.rsp │ │ │ │ │ ├── CFB8MMT192.rsp │ │ │ │ │ ├── CFB8MMT256.rsp │ │ │ │ │ ├── CFB8VarKey128.rsp │ │ │ │ │ ├── CFB8VarKey192.rsp │ │ │ │ │ ├── CFB8VarKey256.rsp │ │ │ │ │ ├── CFB8VarTxt128.rsp │ │ │ │ │ ├── CFB8VarTxt192.rsp │ │ │ │ │ ├── CFB8VarTxt256.rsp │ │ │ │ │ ├── OFBGFSbox128.rsp │ │ │ │ │ ├── OFBGFSbox192.rsp │ │ │ │ │ ├── OFBGFSbox256.rsp │ │ │ │ │ ├── OFBKeySbox128.rsp │ │ │ │ │ ├── OFBKeySbox192.rsp │ │ │ │ │ ├── OFBKeySbox256.rsp │ │ │ │ │ ├── OFBMCT128.rsp │ │ │ │ │ ├── OFBMCT192.rsp │ │ │ │ │ ├── OFBMCT256.rsp │ │ │ │ │ ├── OFBMMT128.rsp │ │ │ │ │ ├── OFBMMT192.rsp │ │ │ │ │ ├── OFBMMT256.rsp │ │ │ │ │ ├── OFBVarKey128.rsp │ │ │ │ │ ├── OFBVarKey192.rsp │ │ │ │ │ ├── OFBVarKey256.rsp │ │ │ │ │ ├── OFBVarTxt128.rsp │ │ │ │ │ ├── OFBVarTxt192.rsp │ │ │ │ │ ├── OFBVarTxt256.rsp │ │ │ │ │ ├── README.txt │ │ │ │ │ ├── gcmDecrypt128.rsp │ │ │ │ │ └── gcmEncryptExtIV128.rsp │ │ │ │ │ ├── TDES │ │ │ │ │ ├── README.txt │ │ │ │ │ ├── TCBCMMT2.rsp │ │ │ │ │ ├── TCBCMMT3.rsp │ │ │ │ │ ├── TCBCinvperm.rsp │ │ │ │ │ ├── TCBCpermop.rsp │ │ │ │ │ ├── TCBCsubtab.rsp │ │ │ │ │ ├── TCBCvarkey.rsp │ │ │ │ │ ├── TCBCvartext.rsp │ │ │ │ │ ├── TCFB64MMT2.rsp │ │ │ │ │ ├── TCFB64MMT3.rsp │ │ │ │ │ ├── TCFB64invperm.rsp │ │ │ │ │ ├── TCFB64permop.rsp │ │ │ │ │ ├── TCFB64subtab.rsp │ │ │ │ │ ├── TCFB64varkey.rsp │ │ │ │ │ ├── TCFB64vartext.rsp │ │ │ │ │ ├── TCFB8MMT2.rsp │ │ │ │ │ ├── TCFB8MMT3.rsp │ │ │ │ │ ├── TCFB8invperm.rsp │ │ │ │ │ ├── TCFB8permop.rsp │ │ │ │ │ ├── TCFB8subtab.rsp │ │ │ │ │ ├── TCFB8varkey.rsp │ │ │ │ │ ├── TCFB8vartext.rsp │ │ │ │ │ ├── TECBMMT2.rsp │ │ │ │ │ ├── TECBMMT3.rsp │ │ │ │ │ ├── TOFBMMT2.rsp │ │ │ │ │ ├── TOFBMMT3.rsp │ │ │ │ │ ├── TOFBinvperm.rsp │ │ │ │ │ ├── TOFBpermop.rsp │ │ │ │ │ ├── TOFBsubtab.rsp │ │ │ │ │ ├── TOFBvarkey.rsp │ │ │ │ │ └── TOFBvartext.rsp │ │ │ │ │ └── wycheproof │ │ │ │ │ ├── aes_eax_test.json │ │ │ │ │ ├── aes_gcm_test.json │ │ │ │ │ ├── aes_siv_cmac_test.json │ │ │ │ │ └── chacha20_poly1305_test.json │ │ │ ├── Hash │ │ │ │ ├── __init__.py │ │ │ │ ├── common.py │ │ │ │ ├── test_BLAKE2.py │ │ │ │ ├── test_CMAC.py │ │ │ │ ├── test_HMAC.py │ │ │ │ ├── test_MD2.py │ │ │ │ ├── test_MD4.py │ │ │ │ ├── test_MD5.py │ │ │ │ ├── test_Poly1305.py │ │ │ │ ├── test_RIPEMD160.py │ │ │ │ ├── test_SHA1.py │ │ │ │ ├── test_SHA224.py │ │ │ │ ├── test_SHA256.py │ │ │ │ ├── test_SHA384.py │ │ │ │ ├── test_SHA3_224.py │ │ │ │ ├── test_SHA3_256.py │ │ │ │ ├── test_SHA3_384.py │ │ │ │ ├── test_SHA3_512.py │ │ │ │ ├── test_SHA512.py │ │ │ │ ├── test_SHAKE.py │ │ │ │ ├── test_keccak.py │ │ │ │ └── test_vectors │ │ │ │ │ ├── BLAKE2b │ │ │ │ │ ├── blake2b-test.txt │ │ │ │ │ ├── tv1.txt │ │ │ │ │ └── tv2.txt │ │ │ │ │ ├── BLAKE2s │ │ │ │ │ ├── blake2s-test.txt │ │ │ │ │ ├── tv1.txt │ │ │ │ │ └── tv2.txt │ │ │ │ │ ├── SHA1 │ │ │ │ │ └── SHA1ShortMsg.rsp │ │ │ │ │ ├── SHA2 │ │ │ │ │ ├── SHA512ShortMsg.rsp │ │ │ │ │ ├── SHA512_224ShortMsg.rsp │ │ │ │ │ └── SHA512_256ShortMsg.rsp │ │ │ │ │ ├── SHA3 │ │ │ │ │ ├── ShortMsgKAT_SHA3-224.txt │ │ │ │ │ ├── ShortMsgKAT_SHA3-256.txt │ │ │ │ │ ├── ShortMsgKAT_SHA3-384.txt │ │ │ │ │ ├── ShortMsgKAT_SHA3-512.txt │ │ │ │ │ ├── ShortMsgKAT_SHAKE128.txt │ │ │ │ │ └── ShortMsgKAT_SHAKE256.txt │ │ │ │ │ ├── keccak │ │ │ │ │ ├── ExtremelyLongMsgKAT_224.txt │ │ │ │ │ ├── ExtremelyLongMsgKAT_256.txt │ │ │ │ │ ├── ExtremelyLongMsgKAT_384.txt │ │ │ │ │ ├── ExtremelyLongMsgKAT_512.txt │ │ │ │ │ ├── LongMsgKAT_224.txt │ │ │ │ │ ├── LongMsgKAT_256.txt │ │ │ │ │ ├── LongMsgKAT_384.txt │ │ │ │ │ ├── LongMsgKAT_512.txt │ │ │ │ │ ├── ShortMsgKAT_224.txt │ │ │ │ │ ├── ShortMsgKAT_256.txt │ │ │ │ │ ├── ShortMsgKAT_384.txt │ │ │ │ │ ├── ShortMsgKAT_512.txt │ │ │ │ │ └── readme.txt │ │ │ │ │ └── wycheproof │ │ │ │ │ └── aes_cmac_test.json │ │ │ ├── IO │ │ │ │ ├── __init__.py │ │ │ │ ├── test_PBES.py │ │ │ │ └── test_PKCS8.py │ │ │ ├── Math │ │ │ │ ├── __init__.py │ │ │ │ ├── test_Numbers.py │ │ │ │ ├── test_Primality.py │ │ │ │ └── test_modexp.py │ │ │ ├── Protocol │ │ │ │ ├── __init__.py │ │ │ │ ├── test_KDF.py │ │ │ │ ├── test_SecretSharing.py │ │ │ │ └── test_rfc1751.py │ │ │ ├── PublicKey │ │ │ │ ├── __init__.py │ │ │ │ ├── test_DSA.py │ │ │ │ ├── test_ECC.py │ │ │ │ ├── test_ElGamal.py │ │ │ │ ├── test_RSA.py │ │ │ │ ├── test_import_DSA.py │ │ │ │ ├── test_import_ECC.py │ │ │ │ ├── test_import_RSA.py │ │ │ │ └── test_vectors │ │ │ │ │ ├── ECC │ │ │ │ │ ├── ecc_p256.txt │ │ │ │ │ ├── ecc_p256_private.der │ │ │ │ │ ├── ecc_p256_private.pem │ │ │ │ │ ├── ecc_p256_private_ecparams.pem │ │ │ │ │ ├── ecc_p256_private_enc_aes128.pem │ │ │ │ │ ├── ecc_p256_private_enc_aes192.pem │ │ │ │ │ ├── ecc_p256_private_enc_aes256.pem │ │ │ │ │ ├── ecc_p256_private_enc_aes256_gcm.pem │ │ │ │ │ ├── ecc_p256_private_enc_des3.pem │ │ │ │ │ ├── ecc_p256_private_openssh.pem │ │ │ │ │ ├── ecc_p256_private_openssh_old.pem │ │ │ │ │ ├── ecc_p256_private_openssh_pwd.pem │ │ │ │ │ ├── ecc_p256_private_openssh_pwd_old.pem │ │ │ │ │ ├── ecc_p256_private_p8.der │ │ │ │ │ ├── ecc_p256_private_p8.pem │ │ │ │ │ ├── ecc_p256_private_p8_clear.der │ │ │ │ │ ├── ecc_p256_private_p8_clear.pem │ │ │ │ │ ├── ecc_p256_public.der │ │ │ │ │ ├── ecc_p256_public.pem │ │ │ │ │ ├── ecc_p256_public_compressed.der │ │ │ │ │ ├── ecc_p256_public_compressed.pem │ │ │ │ │ ├── ecc_p256_public_openssh.txt │ │ │ │ │ ├── ecc_p256_x509.der │ │ │ │ │ ├── ecc_p256_x509.pem │ │ │ │ │ ├── ecc_p384.txt │ │ │ │ │ ├── ecc_p384_private.der │ │ │ │ │ ├── ecc_p384_private.pem │ │ │ │ │ ├── ecc_p384_private_enc_aes128.pem │ │ │ │ │ ├── ecc_p384_private_enc_aes192.pem │ │ │ │ │ ├── ecc_p384_private_enc_aes256.pem │ │ │ │ │ ├── ecc_p384_private_enc_aes256_gcm.pem │ │ │ │ │ ├── ecc_p384_private_enc_des3.pem │ │ │ │ │ ├── ecc_p384_private_openssh.pem │ │ │ │ │ ├── ecc_p384_private_openssh_old.pem │ │ │ │ │ ├── ecc_p384_private_openssh_pwd.pem │ │ │ │ │ ├── ecc_p384_private_openssh_pwd_old.pem │ │ │ │ │ ├── ecc_p384_private_p8.der │ │ │ │ │ ├── ecc_p384_private_p8.pem │ │ │ │ │ ├── ecc_p384_private_p8_clear.der │ │ │ │ │ ├── ecc_p384_private_p8_clear.pem │ │ │ │ │ ├── ecc_p384_public.der │ │ │ │ │ ├── ecc_p384_public.pem │ │ │ │ │ ├── ecc_p384_public_compressed.der │ │ │ │ │ ├── ecc_p384_public_compressed.pem │ │ │ │ │ ├── ecc_p384_public_openssh.txt │ │ │ │ │ ├── ecc_p384_x509.der │ │ │ │ │ ├── ecc_p384_x509.pem │ │ │ │ │ ├── ecc_p521.txt │ │ │ │ │ ├── ecc_p521_private.der │ │ │ │ │ ├── ecc_p521_private.pem │ │ │ │ │ ├── ecc_p521_private_enc_aes128.pem │ │ │ │ │ ├── ecc_p521_private_enc_aes192.pem │ │ │ │ │ ├── ecc_p521_private_enc_aes256.pem │ │ │ │ │ ├── ecc_p521_private_enc_aes256_gcm.pem │ │ │ │ │ ├── ecc_p521_private_enc_des3.pem │ │ │ │ │ ├── ecc_p521_private_openssh.pem │ │ │ │ │ ├── ecc_p521_private_openssh_old.pem │ │ │ │ │ ├── ecc_p521_private_openssh_pwd.pem │ │ │ │ │ ├── ecc_p521_private_openssh_pwd_old.pem │ │ │ │ │ ├── ecc_p521_private_p8.der │ │ │ │ │ ├── ecc_p521_private_p8.pem │ │ │ │ │ ├── ecc_p521_private_p8_clear.der │ │ │ │ │ ├── ecc_p521_private_p8_clear.pem │ │ │ │ │ ├── ecc_p521_public.der │ │ │ │ │ ├── ecc_p521_public.pem │ │ │ │ │ ├── ecc_p521_public_compressed.der │ │ │ │ │ ├── ecc_p521_public_compressed.pem │ │ │ │ │ ├── ecc_p521_public_openssh.txt │ │ │ │ │ ├── ecc_p521_x509.der │ │ │ │ │ ├── ecc_p521_x509.pem │ │ │ │ │ ├── gen_ecc_p256.sh │ │ │ │ │ ├── gen_ecc_p384.sh │ │ │ │ │ ├── gen_ecc_p521.sh │ │ │ │ │ ├── openssl_version.txt │ │ │ │ │ ├── openssl_version_p384.txt │ │ │ │ │ ├── openssl_version_p521.txt │ │ │ │ │ ├── point-at-infinity.org-P256.txt │ │ │ │ │ ├── point-at-infinity.org-P384.txt │ │ │ │ │ └── point-at-infinity.org-P521.txt │ │ │ │ │ └── RSA │ │ │ │ │ ├── gen_rsa_2048.sh │ │ │ │ │ ├── openssl_version.txt │ │ │ │ │ ├── rsa2048_private.pem │ │ │ │ │ ├── rsa2048_private_openssh.pem │ │ │ │ │ ├── rsa2048_private_openssh_old.pem │ │ │ │ │ ├── rsa2048_private_openssh_pwd.pem │ │ │ │ │ ├── rsa2048_private_openssh_pwd_old.pem │ │ │ │ │ └── rsa2048_public_openssh.txt │ │ │ ├── Random │ │ │ │ ├── __init__.py │ │ │ │ └── test_random.py │ │ │ ├── Signature │ │ │ │ ├── __init__.py │ │ │ │ ├── test_dss.py │ │ │ │ ├── test_pkcs1_15.py │ │ │ │ ├── test_pss.py │ │ │ │ └── test_vectors │ │ │ │ │ ├── DSA │ │ │ │ │ ├── FIPS_186_3_SigGen.txt │ │ │ │ │ └── FIPS_186_3_SigVer.rsp │ │ │ │ │ ├── ECDSA │ │ │ │ │ ├── README.txt │ │ │ │ │ ├── SigGen.txt │ │ │ │ │ └── SigVer.rsp │ │ │ │ │ ├── PKCS1-PSS │ │ │ │ │ ├── SigGenPSS_186-2.txt │ │ │ │ │ ├── SigGenPSS_186-3.txt │ │ │ │ │ └── SigVerPSS_186-3.rsp │ │ │ │ │ ├── PKCS1-v1.5 │ │ │ │ │ ├── SigGen15_186-2.txt │ │ │ │ │ ├── SigGen15_186-3.txt │ │ │ │ │ └── SigVer15_186-3.rsp │ │ │ │ │ └── wycheproof │ │ │ │ │ ├── dsa_test.json │ │ │ │ │ ├── ecdsa_secp256r1_sha256_test.json │ │ │ │ │ ├── ecdsa_secp256r1_sha512_test.json │ │ │ │ │ ├── ecdsa_secp384r1_sha384_test.json │ │ │ │ │ ├── ecdsa_secp384r1_sha512_test.json │ │ │ │ │ ├── ecdsa_secp521r1_sha512_test.json │ │ │ │ │ ├── ecdsa_test.json │ │ │ │ │ ├── rsa_pss_2048_sha1_mgf1_20_test.json │ │ │ │ │ ├── rsa_pss_2048_sha256_mgf1_0_test.json │ │ │ │ │ ├── rsa_pss_2048_sha256_mgf1_32_test.json │ │ │ │ │ ├── rsa_pss_3072_sha256_mgf1_32_test.json │ │ │ │ │ ├── rsa_pss_4096_sha256_mgf1_32_test.json │ │ │ │ │ ├── rsa_pss_4096_sha512_mgf1_32_test.json │ │ │ │ │ ├── rsa_pss_misc_test.json │ │ │ │ │ ├── rsa_signature_2048_sha224_test.json │ │ │ │ │ ├── rsa_signature_2048_sha256_test.json │ │ │ │ │ ├── rsa_signature_2048_sha512_test.json │ │ │ │ │ ├── rsa_signature_3072_sha256_test.json │ │ │ │ │ ├── rsa_signature_3072_sha384_test.json │ │ │ │ │ ├── rsa_signature_3072_sha512_test.json │ │ │ │ │ ├── rsa_signature_4096_sha384_test.json │ │ │ │ │ ├── rsa_signature_4096_sha512_test.json │ │ │ │ │ └── rsa_signature_test.json │ │ │ ├── Util │ │ │ │ ├── __init__.py │ │ │ │ ├── test_Counter.py │ │ │ │ ├── test_Padding.py │ │ │ │ ├── test_asn1.py │ │ │ │ ├── test_number.py │ │ │ │ └── test_strxor.py │ │ │ ├── __init__.py │ │ │ ├── __main__.py │ │ │ ├── loader.py │ │ │ └── st_common.py │ │ ├── Signature │ │ │ ├── DSS.py │ │ │ ├── DSS.pyi │ │ │ ├── PKCS1_PSS.py │ │ │ ├── PKCS1_PSS.pyi │ │ │ ├── PKCS1_v1_5.py │ │ │ ├── PKCS1_v1_5.pyi │ │ │ ├── __init__.py │ │ │ ├── pkcs1_15.py │ │ │ ├── pkcs1_15.pyi │ │ │ ├── pss.py │ │ │ └── pss.pyi │ │ ├── Util │ │ │ ├── Counter.py │ │ │ ├── Counter.pyi │ │ │ ├── Padding.py │ │ │ ├── Padding.pyi │ │ │ ├── RFC1751.py │ │ │ ├── RFC1751.pyi │ │ │ ├── __init__.py │ │ │ ├── _cpu_features.py │ │ │ ├── _cpu_features.pyi │ │ │ ├── _cpuid_c.cpython-37m-darwin.so │ │ │ ├── _file_system.py │ │ │ ├── _file_system.pyi │ │ │ ├── _raw_api.py │ │ │ ├── _raw_api.pyi │ │ │ ├── _strxor.cpython-37m-darwin.so │ │ │ ├── asn1.py │ │ │ ├── asn1.pyi │ │ │ ├── number.py │ │ │ ├── number.pyi │ │ │ ├── py3compat.py │ │ │ ├── py3compat.pyi │ │ │ ├── strxor.py │ │ │ └── strxor.pyi │ │ ├── __init__.py │ │ ├── __init__.pyi │ │ └── py.typed │ │ ├── Flask-1.1.1.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE.rst │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ ├── entry_points.txt │ │ └── top_level.txt │ │ ├── Jinja2-2.10.3.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE.rst │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ ├── entry_points.txt │ │ └── top_level.txt │ │ ├── MarkupSafe-1.1.1.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE.rst │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── Werkzeug-0.16.0.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE.rst │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── _pytest │ │ ├── __init__.py │ │ ├── _argcomplete.py │ │ ├── _code │ │ │ ├── __init__.py │ │ │ ├── code.py │ │ │ └── source.py │ │ ├── _io │ │ │ ├── __init__.py │ │ │ └── saferepr.py │ │ ├── _version.py │ │ ├── assertion │ │ │ ├── __init__.py │ │ │ ├── rewrite.py │ │ │ ├── truncate.py │ │ │ └── util.py │ │ ├── cacheprovider.py │ │ ├── capture.py │ │ ├── compat.py │ │ ├── config │ │ │ ├── __init__.py │ │ │ ├── argparsing.py │ │ │ ├── exceptions.py │ │ │ └── findpaths.py │ │ ├── debugging.py │ │ ├── deprecated.py │ │ ├── doctest.py │ │ ├── faulthandler.py │ │ ├── fixtures.py │ │ ├── freeze_support.py │ │ ├── helpconfig.py │ │ ├── hookspec.py │ │ ├── junitxml.py │ │ ├── logging.py │ │ ├── main.py │ │ ├── mark │ │ │ ├── __init__.py │ │ │ ├── evaluate.py │ │ │ ├── legacy.py │ │ │ └── structures.py │ │ ├── monkeypatch.py │ │ ├── nodes.py │ │ ├── nose.py │ │ ├── outcomes.py │ │ ├── pastebin.py │ │ ├── pathlib.py │ │ ├── pytester.py │ │ ├── python.py │ │ ├── python_api.py │ │ ├── recwarn.py │ │ ├── reports.py │ │ ├── resultlog.py │ │ ├── runner.py │ │ ├── setuponly.py │ │ ├── setupplan.py │ │ ├── skipping.py │ │ ├── stepwise.py │ │ ├── terminal.py │ │ ├── tmpdir.py │ │ ├── unittest.py │ │ ├── warning_types.py │ │ └── warnings.py │ │ ├── atomicwrites-1.3.0.dist-info │ │ ├── INSTALLER │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── atomicwrites │ │ └── __init__.py │ │ ├── attr │ │ ├── __init__.py │ │ ├── __init__.pyi │ │ ├── _compat.py │ │ ├── _config.py │ │ ├── _funcs.py │ │ ├── _make.py │ │ ├── _version.py │ │ ├── _version.pyi │ │ ├── converters.py │ │ ├── converters.pyi │ │ ├── exceptions.py │ │ ├── exceptions.pyi │ │ ├── filters.py │ │ ├── filters.pyi │ │ ├── py.typed │ │ ├── validators.py │ │ └── validators.pyi │ │ ├── attrs-19.2.0.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── certifi-2019.9.11.dist-info │ │ ├── DESCRIPTION.rst │ │ ├── INSTALLER │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ ├── metadata.json │ │ └── top_level.txt │ │ ├── certifi │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── cacert.pem │ │ └── core.py │ │ ├── chardet-3.0.4.dist-info │ │ ├── DESCRIPTION.rst │ │ ├── INSTALLER │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ ├── entry_points.txt │ │ ├── metadata.json │ │ └── top_level.txt │ │ ├── chardet │ │ ├── __init__.py │ │ ├── big5freq.py │ │ ├── big5prober.py │ │ ├── chardistribution.py │ │ ├── charsetgroupprober.py │ │ ├── charsetprober.py │ │ ├── cli │ │ │ ├── __init__.py │ │ │ └── chardetect.py │ │ ├── codingstatemachine.py │ │ ├── compat.py │ │ ├── cp949prober.py │ │ ├── enums.py │ │ ├── escprober.py │ │ ├── escsm.py │ │ ├── eucjpprober.py │ │ ├── euckrfreq.py │ │ ├── euckrprober.py │ │ ├── euctwfreq.py │ │ ├── euctwprober.py │ │ ├── gb2312freq.py │ │ ├── gb2312prober.py │ │ ├── hebrewprober.py │ │ ├── jisfreq.py │ │ ├── jpcntx.py │ │ ├── langbulgarianmodel.py │ │ ├── langcyrillicmodel.py │ │ ├── langgreekmodel.py │ │ ├── langhebrewmodel.py │ │ ├── langhungarianmodel.py │ │ ├── langthaimodel.py │ │ ├── langturkishmodel.py │ │ ├── latin1prober.py │ │ ├── mbcharsetprober.py │ │ ├── mbcsgroupprober.py │ │ ├── mbcssm.py │ │ ├── sbcharsetprober.py │ │ ├── sbcsgroupprober.py │ │ ├── sjisprober.py │ │ ├── universaldetector.py │ │ ├── utf8prober.py │ │ └── version.py │ │ ├── click │ │ ├── __init__.py │ │ ├── _bashcomplete.py │ │ ├── _compat.py │ │ ├── _termui_impl.py │ │ ├── _textwrap.py │ │ ├── _unicodefun.py │ │ ├── _winconsole.py │ │ ├── core.py │ │ ├── decorators.py │ │ ├── exceptions.py │ │ ├── formatting.py │ │ ├── globals.py │ │ ├── parser.py │ │ ├── termui.py │ │ ├── testing.py │ │ ├── types.py │ │ └── utils.py │ │ ├── easy_install.py │ │ ├── flask │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── _compat.py │ │ ├── app.py │ │ ├── blueprints.py │ │ ├── cli.py │ │ ├── config.py │ │ ├── ctx.py │ │ ├── debughelpers.py │ │ ├── globals.py │ │ ├── helpers.py │ │ ├── json │ │ │ ├── __init__.py │ │ │ └── tag.py │ │ ├── logging.py │ │ ├── sessions.py │ │ ├── signals.py │ │ ├── templating.py │ │ ├── testing.py │ │ ├── views.py │ │ └── wrappers.py │ │ ├── idna-2.8.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE.rst │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── idna │ │ ├── __init__.py │ │ ├── codec.py │ │ ├── compat.py │ │ ├── core.py │ │ ├── idnadata.py │ │ ├── intranges.py │ │ ├── package_data.py │ │ └── uts46data.py │ │ ├── importlib_metadata-0.23.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── importlib_metadata │ │ ├── __init__.py │ │ ├── _compat.py │ │ ├── docs │ │ │ ├── __init__.py │ │ │ ├── changelog.rst │ │ │ ├── conf.py │ │ │ ├── index.rst │ │ │ └── using.rst │ │ └── tests │ │ │ ├── __init__.py │ │ │ ├── data │ │ │ ├── __init__.py │ │ │ ├── example-21.12-py3-none-any.whl │ │ │ └── example-21.12-py3.6.egg │ │ │ ├── fixtures.py │ │ │ ├── test_api.py │ │ │ ├── test_integration.py │ │ │ ├── test_main.py │ │ │ └── test_zip.py │ │ ├── itsdangerous-1.1.0.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE.rst │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── itsdangerous │ │ ├── __init__.py │ │ ├── _compat.py │ │ ├── _json.py │ │ ├── encoding.py │ │ ├── exc.py │ │ ├── jws.py │ │ ├── serializer.py │ │ ├── signer.py │ │ ├── timed.py │ │ └── url_safe.py │ │ ├── jinja2 │ │ ├── __init__.py │ │ ├── _compat.py │ │ ├── _identifier.py │ │ ├── asyncfilters.py │ │ ├── asyncsupport.py │ │ ├── bccache.py │ │ ├── compiler.py │ │ ├── constants.py │ │ ├── debug.py │ │ ├── defaults.py │ │ ├── environment.py │ │ ├── exceptions.py │ │ ├── ext.py │ │ ├── filters.py │ │ ├── idtracking.py │ │ ├── lexer.py │ │ ├── loaders.py │ │ ├── meta.py │ │ ├── nativetypes.py │ │ ├── nodes.py │ │ ├── optimizer.py │ │ ├── parser.py │ │ ├── runtime.py │ │ ├── sandbox.py │ │ ├── tests.py │ │ ├── utils.py │ │ └── visitor.py │ │ ├── markupsafe │ │ ├── __init__.py │ │ ├── _compat.py │ │ ├── _constants.py │ │ ├── _native.py │ │ ├── _speedups.c │ │ └── _speedups.cpython-37m-darwin.so │ │ ├── more_itertools-7.2.0.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── more_itertools │ │ ├── __init__.py │ │ ├── more.py │ │ ├── recipes.py │ │ └── tests │ │ │ ├── __init__.py │ │ │ ├── test_more.py │ │ │ └── test_recipes.py │ │ ├── packaging-19.2.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE │ │ ├── LICENSE.APACHE │ │ ├── LICENSE.BSD │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── packaging │ │ ├── __about__.py │ │ ├── __init__.py │ │ ├── _compat.py │ │ ├── _structures.py │ │ ├── markers.py │ │ ├── requirements.py │ │ ├── specifiers.py │ │ ├── tags.py │ │ ├── utils.py │ │ └── version.py │ │ ├── pip-19.0.3.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE.txt │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ ├── entry_points.txt │ │ └── top_level.txt │ │ ├── pip │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── _internal │ │ │ ├── __init__.py │ │ │ ├── build_env.py │ │ │ ├── cache.py │ │ │ ├── cli │ │ │ │ ├── __init__.py │ │ │ │ ├── autocompletion.py │ │ │ │ ├── base_command.py │ │ │ │ ├── cmdoptions.py │ │ │ │ ├── main_parser.py │ │ │ │ ├── parser.py │ │ │ │ └── status_codes.py │ │ │ ├── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── check.py │ │ │ │ ├── completion.py │ │ │ │ ├── configuration.py │ │ │ │ ├── download.py │ │ │ │ ├── freeze.py │ │ │ │ ├── hash.py │ │ │ │ ├── help.py │ │ │ │ ├── install.py │ │ │ │ ├── list.py │ │ │ │ ├── search.py │ │ │ │ ├── show.py │ │ │ │ ├── uninstall.py │ │ │ │ └── wheel.py │ │ │ ├── configuration.py │ │ │ ├── download.py │ │ │ ├── exceptions.py │ │ │ ├── index.py │ │ │ ├── locations.py │ │ │ ├── models │ │ │ │ ├── __init__.py │ │ │ │ ├── candidate.py │ │ │ │ ├── format_control.py │ │ │ │ ├── index.py │ │ │ │ └── link.py │ │ │ ├── operations │ │ │ │ ├── __init__.py │ │ │ │ ├── check.py │ │ │ │ ├── freeze.py │ │ │ │ └── prepare.py │ │ │ ├── pep425tags.py │ │ │ ├── pyproject.py │ │ │ ├── req │ │ │ │ ├── __init__.py │ │ │ │ ├── constructors.py │ │ │ │ ├── req_file.py │ │ │ │ ├── req_install.py │ │ │ │ ├── req_set.py │ │ │ │ ├── req_tracker.py │ │ │ │ └── req_uninstall.py │ │ │ ├── resolve.py │ │ │ ├── utils │ │ │ │ ├── __init__.py │ │ │ │ ├── appdirs.py │ │ │ │ ├── compat.py │ │ │ │ ├── deprecation.py │ │ │ │ ├── encoding.py │ │ │ │ ├── filesystem.py │ │ │ │ ├── glibc.py │ │ │ │ ├── hashes.py │ │ │ │ ├── logging.py │ │ │ │ ├── misc.py │ │ │ │ ├── models.py │ │ │ │ ├── outdated.py │ │ │ │ ├── packaging.py │ │ │ │ ├── setuptools_build.py │ │ │ │ ├── temp_dir.py │ │ │ │ ├── typing.py │ │ │ │ └── ui.py │ │ │ ├── vcs │ │ │ │ ├── __init__.py │ │ │ │ ├── bazaar.py │ │ │ │ ├── git.py │ │ │ │ ├── mercurial.py │ │ │ │ └── subversion.py │ │ │ └── wheel.py │ │ └── _vendor │ │ │ ├── __init__.py │ │ │ ├── appdirs.py │ │ │ ├── cachecontrol │ │ │ ├── __init__.py │ │ │ ├── _cmd.py │ │ │ ├── adapter.py │ │ │ ├── cache.py │ │ │ ├── caches │ │ │ │ ├── __init__.py │ │ │ │ ├── file_cache.py │ │ │ │ └── redis_cache.py │ │ │ ├── compat.py │ │ │ ├── controller.py │ │ │ ├── filewrapper.py │ │ │ ├── heuristics.py │ │ │ ├── serialize.py │ │ │ └── wrapper.py │ │ │ ├── certifi │ │ │ ├── __init__.py │ │ │ ├── __main__.py │ │ │ ├── cacert.pem │ │ │ └── core.py │ │ │ ├── chardet │ │ │ ├── __init__.py │ │ │ ├── big5freq.py │ │ │ ├── big5prober.py │ │ │ ├── chardistribution.py │ │ │ ├── charsetgroupprober.py │ │ │ ├── charsetprober.py │ │ │ ├── cli │ │ │ │ ├── __init__.py │ │ │ │ └── chardetect.py │ │ │ ├── codingstatemachine.py │ │ │ ├── compat.py │ │ │ ├── cp949prober.py │ │ │ ├── enums.py │ │ │ ├── escprober.py │ │ │ ├── escsm.py │ │ │ ├── eucjpprober.py │ │ │ ├── euckrfreq.py │ │ │ ├── euckrprober.py │ │ │ ├── euctwfreq.py │ │ │ ├── euctwprober.py │ │ │ ├── gb2312freq.py │ │ │ ├── gb2312prober.py │ │ │ ├── hebrewprober.py │ │ │ ├── jisfreq.py │ │ │ ├── jpcntx.py │ │ │ ├── langbulgarianmodel.py │ │ │ ├── langcyrillicmodel.py │ │ │ ├── langgreekmodel.py │ │ │ ├── langhebrewmodel.py │ │ │ ├── langhungarianmodel.py │ │ │ ├── langthaimodel.py │ │ │ ├── langturkishmodel.py │ │ │ ├── latin1prober.py │ │ │ ├── mbcharsetprober.py │ │ │ ├── mbcsgroupprober.py │ │ │ ├── mbcssm.py │ │ │ ├── sbcharsetprober.py │ │ │ ├── sbcsgroupprober.py │ │ │ ├── sjisprober.py │ │ │ ├── universaldetector.py │ │ │ ├── utf8prober.py │ │ │ └── version.py │ │ │ ├── colorama │ │ │ ├── __init__.py │ │ │ ├── ansi.py │ │ │ ├── ansitowin32.py │ │ │ ├── initialise.py │ │ │ ├── win32.py │ │ │ └── winterm.py │ │ │ ├── distlib │ │ │ ├── __init__.py │ │ │ ├── _backport │ │ │ │ ├── __init__.py │ │ │ │ ├── misc.py │ │ │ │ ├── shutil.py │ │ │ │ ├── sysconfig.cfg │ │ │ │ ├── sysconfig.py │ │ │ │ └── tarfile.py │ │ │ ├── compat.py │ │ │ ├── database.py │ │ │ ├── index.py │ │ │ ├── locators.py │ │ │ ├── manifest.py │ │ │ ├── markers.py │ │ │ ├── metadata.py │ │ │ ├── resources.py │ │ │ ├── scripts.py │ │ │ ├── t32.exe │ │ │ ├── t64.exe │ │ │ ├── util.py │ │ │ ├── version.py │ │ │ ├── w32.exe │ │ │ ├── w64.exe │ │ │ └── wheel.py │ │ │ ├── distro.py │ │ │ ├── html5lib │ │ │ ├── __init__.py │ │ │ ├── _ihatexml.py │ │ │ ├── _inputstream.py │ │ │ ├── _tokenizer.py │ │ │ ├── _trie │ │ │ │ ├── __init__.py │ │ │ │ ├── _base.py │ │ │ │ ├── datrie.py │ │ │ │ └── py.py │ │ │ ├── _utils.py │ │ │ ├── constants.py │ │ │ ├── filters │ │ │ │ ├── __init__.py │ │ │ │ ├── alphabeticalattributes.py │ │ │ │ ├── base.py │ │ │ │ ├── inject_meta_charset.py │ │ │ │ ├── lint.py │ │ │ │ ├── optionaltags.py │ │ │ │ ├── sanitizer.py │ │ │ │ └── whitespace.py │ │ │ ├── html5parser.py │ │ │ ├── serializer.py │ │ │ ├── treeadapters │ │ │ │ ├── __init__.py │ │ │ │ ├── genshi.py │ │ │ │ └── sax.py │ │ │ ├── treebuilders │ │ │ │ ├── __init__.py │ │ │ │ ├── base.py │ │ │ │ ├── dom.py │ │ │ │ ├── etree.py │ │ │ │ └── etree_lxml.py │ │ │ └── treewalkers │ │ │ │ ├── __init__.py │ │ │ │ ├── base.py │ │ │ │ ├── dom.py │ │ │ │ ├── etree.py │ │ │ │ ├── etree_lxml.py │ │ │ │ └── genshi.py │ │ │ ├── idna │ │ │ ├── __init__.py │ │ │ ├── codec.py │ │ │ ├── compat.py │ │ │ ├── core.py │ │ │ ├── idnadata.py │ │ │ ├── intranges.py │ │ │ ├── package_data.py │ │ │ └── uts46data.py │ │ │ ├── ipaddress.py │ │ │ ├── lockfile │ │ │ ├── __init__.py │ │ │ ├── linklockfile.py │ │ │ ├── mkdirlockfile.py │ │ │ ├── pidlockfile.py │ │ │ ├── sqlitelockfile.py │ │ │ └── symlinklockfile.py │ │ │ ├── msgpack │ │ │ ├── __init__.py │ │ │ ├── _version.py │ │ │ ├── exceptions.py │ │ │ └── fallback.py │ │ │ ├── packaging │ │ │ ├── __about__.py │ │ │ ├── __init__.py │ │ │ ├── _compat.py │ │ │ ├── _structures.py │ │ │ ├── markers.py │ │ │ ├── requirements.py │ │ │ ├── specifiers.py │ │ │ ├── utils.py │ │ │ └── version.py │ │ │ ├── pep517 │ │ │ ├── __init__.py │ │ │ ├── _in_process.py │ │ │ ├── build.py │ │ │ ├── check.py │ │ │ ├── colorlog.py │ │ │ ├── compat.py │ │ │ ├── envbuild.py │ │ │ └── wrappers.py │ │ │ ├── pkg_resources │ │ │ ├── __init__.py │ │ │ └── py31compat.py │ │ │ ├── progress │ │ │ ├── __init__.py │ │ │ ├── bar.py │ │ │ ├── counter.py │ │ │ ├── helpers.py │ │ │ └── spinner.py │ │ │ ├── pyparsing.py │ │ │ ├── pytoml │ │ │ ├── __init__.py │ │ │ ├── core.py │ │ │ ├── parser.py │ │ │ ├── test.py │ │ │ ├── utils.py │ │ │ └── writer.py │ │ │ ├── requests │ │ │ ├── __init__.py │ │ │ ├── __version__.py │ │ │ ├── _internal_utils.py │ │ │ ├── adapters.py │ │ │ ├── api.py │ │ │ ├── auth.py │ │ │ ├── certs.py │ │ │ ├── compat.py │ │ │ ├── cookies.py │ │ │ ├── exceptions.py │ │ │ ├── help.py │ │ │ ├── hooks.py │ │ │ ├── models.py │ │ │ ├── packages.py │ │ │ ├── sessions.py │ │ │ ├── status_codes.py │ │ │ ├── structures.py │ │ │ └── utils.py │ │ │ ├── retrying.py │ │ │ ├── six.py │ │ │ ├── urllib3 │ │ │ ├── __init__.py │ │ │ ├── _collections.py │ │ │ ├── connection.py │ │ │ ├── connectionpool.py │ │ │ ├── contrib │ │ │ │ ├── __init__.py │ │ │ │ ├── _appengine_environ.py │ │ │ │ ├── _securetransport │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── bindings.py │ │ │ │ │ └── low_level.py │ │ │ │ ├── appengine.py │ │ │ │ ├── ntlmpool.py │ │ │ │ ├── pyopenssl.py │ │ │ │ ├── securetransport.py │ │ │ │ └── socks.py │ │ │ ├── exceptions.py │ │ │ ├── fields.py │ │ │ ├── filepost.py │ │ │ ├── packages │ │ │ │ ├── __init__.py │ │ │ │ ├── backports │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── makefile.py │ │ │ │ ├── six.py │ │ │ │ └── ssl_match_hostname │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── _implementation.py │ │ │ ├── poolmanager.py │ │ │ ├── request.py │ │ │ ├── response.py │ │ │ └── util │ │ │ │ ├── __init__.py │ │ │ │ ├── connection.py │ │ │ │ ├── queue.py │ │ │ │ ├── request.py │ │ │ │ ├── response.py │ │ │ │ ├── retry.py │ │ │ │ ├── ssl_.py │ │ │ │ ├── timeout.py │ │ │ │ ├── url.py │ │ │ │ └── wait.py │ │ │ └── webencodings │ │ │ ├── __init__.py │ │ │ ├── labels.py │ │ │ ├── mklabels.py │ │ │ ├── tests.py │ │ │ └── x_user_defined.py │ │ ├── pkg_resources │ │ ├── __init__.py │ │ ├── _vendor │ │ │ ├── __init__.py │ │ │ ├── appdirs.py │ │ │ ├── packaging │ │ │ │ ├── __about__.py │ │ │ │ ├── __init__.py │ │ │ │ ├── _compat.py │ │ │ │ ├── _structures.py │ │ │ │ ├── markers.py │ │ │ │ ├── requirements.py │ │ │ │ ├── specifiers.py │ │ │ │ ├── utils.py │ │ │ │ └── version.py │ │ │ ├── pyparsing.py │ │ │ └── six.py │ │ ├── extern │ │ │ └── __init__.py │ │ └── py31compat.py │ │ ├── pluggy-0.13.0.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── pluggy │ │ ├── __init__.py │ │ ├── _tracing.py │ │ ├── _version.py │ │ ├── callers.py │ │ ├── hooks.py │ │ └── manager.py │ │ ├── pubnub-4.1.6-py3.7.egg-info │ │ ├── PKG-INFO │ │ ├── SOURCES.txt │ │ ├── dependency_links.txt │ │ ├── installed-files.txt │ │ ├── not-zip-safe │ │ ├── requires.txt │ │ └── top_level.txt │ │ ├── pubnub │ │ ├── __init__.py │ │ ├── builders.py │ │ ├── callbacks.py │ │ ├── crypto.py │ │ ├── crypto_core.py │ │ ├── crypto_legacy.py │ │ ├── dtos.py │ │ ├── endpoints │ │ │ ├── __init__.py │ │ │ ├── access │ │ │ │ ├── __init__.py │ │ │ │ ├── audit.py │ │ │ │ ├── grant.py │ │ │ │ └── revoke.py │ │ │ ├── channel_groups │ │ │ │ ├── __init__.py │ │ │ │ ├── add_channel_to_channel_group.py │ │ │ │ ├── list_channels_in_channel_group.py │ │ │ │ ├── remove_channel_from_channel_group.py │ │ │ │ └── remove_channel_group.py │ │ │ ├── endpoint.py │ │ │ ├── history.py │ │ │ ├── history_delete.py │ │ │ ├── membership │ │ │ │ ├── __init__.py │ │ │ │ ├── get_members.py │ │ │ │ ├── get_space_memberships.py │ │ │ │ ├── manage_members.py │ │ │ │ └── manage_memberships.py │ │ │ ├── message_count.py │ │ │ ├── presence │ │ │ │ ├── __init__.py │ │ │ │ ├── get_state.py │ │ │ │ ├── heartbeat.py │ │ │ │ ├── here_now.py │ │ │ │ ├── leave.py │ │ │ │ ├── set_state.py │ │ │ │ └── where_now.py │ │ │ ├── pubsub │ │ │ │ ├── __init__.py │ │ │ │ ├── fire.py │ │ │ │ ├── publish.py │ │ │ │ └── subscribe.py │ │ │ ├── push │ │ │ │ ├── __init__.py │ │ │ │ ├── add_channels_to_push.py │ │ │ │ ├── list_push_provisions.py │ │ │ │ ├── remove_channels_from_push.py │ │ │ │ └── remove_device.py │ │ │ ├── signal.py │ │ │ ├── space │ │ │ │ ├── __init__.py │ │ │ │ ├── create_space.py │ │ │ │ ├── delete_space.py │ │ │ │ ├── get_space.py │ │ │ │ ├── get_spaces.py │ │ │ │ └── update_space.py │ │ │ ├── time.py │ │ │ └── users │ │ │ │ ├── __init__.py │ │ │ │ ├── create_user.py │ │ │ │ ├── delete_user.py │ │ │ │ ├── get_user.py │ │ │ │ ├── get_users.py │ │ │ │ └── update_user.py │ │ ├── enums.py │ │ ├── errors.py │ │ ├── exceptions.py │ │ ├── managers.py │ │ ├── models │ │ │ ├── __init__.py │ │ │ ├── consumer │ │ │ │ ├── __init__.py │ │ │ │ ├── access_manager.py │ │ │ │ ├── channel_group.py │ │ │ │ ├── common.py │ │ │ │ ├── history.py │ │ │ │ ├── membership.py │ │ │ │ ├── message_count.py │ │ │ │ ├── pn_error_data.py │ │ │ │ ├── presence.py │ │ │ │ ├── pubsub.py │ │ │ │ ├── push.py │ │ │ │ ├── signal.py │ │ │ │ ├── space.py │ │ │ │ ├── time.py │ │ │ │ └── user.py │ │ │ ├── server │ │ │ │ ├── __init__.py │ │ │ │ └── subscribe.py │ │ │ └── subscription_item.py │ │ ├── pnconfiguration.py │ │ ├── pubnub.py │ │ ├── pubnub_asyncio.py │ │ ├── pubnub_core.py │ │ ├── pubnub_tornado.py │ │ ├── pubnub_twisted.py │ │ ├── request_handlers │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── requests_handler.py │ │ │ └── urllib2_handler.py │ │ ├── structures.py │ │ ├── utils.py │ │ └── workers.py │ │ ├── py-1.8.0.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── py │ │ ├── __init__.py │ │ ├── __metainfo.py │ │ ├── _builtin.py │ │ ├── _code │ │ │ ├── __init__.py │ │ │ ├── _assertionnew.py │ │ │ ├── _assertionold.py │ │ │ ├── _py2traceback.py │ │ │ ├── assertion.py │ │ │ ├── code.py │ │ │ └── source.py │ │ ├── _error.py │ │ ├── _io │ │ │ ├── __init__.py │ │ │ ├── capture.py │ │ │ ├── saferepr.py │ │ │ └── terminalwriter.py │ │ ├── _log │ │ │ ├── __init__.py │ │ │ ├── log.py │ │ │ └── warning.py │ │ ├── _path │ │ │ ├── __init__.py │ │ │ ├── cacheutil.py │ │ │ ├── common.py │ │ │ ├── local.py │ │ │ ├── svnurl.py │ │ │ └── svnwc.py │ │ ├── _process │ │ │ ├── __init__.py │ │ │ ├── cmdexec.py │ │ │ ├── forkedfunc.py │ │ │ └── killproc.py │ │ ├── _std.py │ │ ├── _vendored_packages │ │ │ ├── __init__.py │ │ │ ├── apipkg.py │ │ │ └── iniconfig.py │ │ ├── _version.py │ │ ├── _xmlgen.py │ │ └── test.py │ │ ├── pycryptodomex-3.9.0.dist-info │ │ ├── AUTHORS.rst │ │ ├── INSTALLER │ │ ├── LICENSE.rst │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── pyparsing-2.4.2.dist-info │ │ ├── DESCRIPTION.rst │ │ ├── INSTALLER │ │ ├── LICENSE.txt │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ ├── metadata.json │ │ └── top_level.txt │ │ ├── pyparsing.py │ │ ├── pytest-5.1.2.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ ├── entry_points.txt │ │ └── top_level.txt │ │ ├── pytest.py │ │ ├── requests-2.22.0.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── requests │ │ ├── __init__.py │ │ ├── __version__.py │ │ ├── _internal_utils.py │ │ ├── adapters.py │ │ ├── api.py │ │ ├── auth.py │ │ ├── certs.py │ │ ├── compat.py │ │ ├── cookies.py │ │ ├── exceptions.py │ │ ├── help.py │ │ ├── hooks.py │ │ ├── models.py │ │ ├── packages.py │ │ ├── sessions.py │ │ ├── status_codes.py │ │ ├── structures.py │ │ └── utils.py │ │ ├── setuptools-40.8.0.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ ├── dependency_links.txt │ │ ├── entry_points.txt │ │ ├── top_level.txt │ │ └── zip-safe │ │ ├── setuptools │ │ ├── __init__.py │ │ ├── _deprecation_warning.py │ │ ├── _vendor │ │ │ ├── __init__.py │ │ │ ├── packaging │ │ │ │ ├── __about__.py │ │ │ │ ├── __init__.py │ │ │ │ ├── _compat.py │ │ │ │ ├── _structures.py │ │ │ │ ├── markers.py │ │ │ │ ├── requirements.py │ │ │ │ ├── specifiers.py │ │ │ │ ├── utils.py │ │ │ │ └── version.py │ │ │ ├── pyparsing.py │ │ │ └── six.py │ │ ├── archive_util.py │ │ ├── build_meta.py │ │ ├── cli-32.exe │ │ ├── cli-64.exe │ │ ├── cli.exe │ │ ├── command │ │ │ ├── __init__.py │ │ │ ├── alias.py │ │ │ ├── bdist_egg.py │ │ │ ├── bdist_rpm.py │ │ │ ├── bdist_wininst.py │ │ │ ├── build_clib.py │ │ │ ├── build_ext.py │ │ │ ├── build_py.py │ │ │ ├── develop.py │ │ │ ├── dist_info.py │ │ │ ├── easy_install.py │ │ │ ├── egg_info.py │ │ │ ├── install.py │ │ │ ├── install_egg_info.py │ │ │ ├── install_lib.py │ │ │ ├── install_scripts.py │ │ │ ├── launcher manifest.xml │ │ │ ├── py36compat.py │ │ │ ├── register.py │ │ │ ├── rotate.py │ │ │ ├── saveopts.py │ │ │ ├── sdist.py │ │ │ ├── setopt.py │ │ │ ├── test.py │ │ │ ├── upload.py │ │ │ └── upload_docs.py │ │ ├── config.py │ │ ├── dep_util.py │ │ ├── depends.py │ │ ├── dist.py │ │ ├── extension.py │ │ ├── extern │ │ │ └── __init__.py │ │ ├── glibc.py │ │ ├── glob.py │ │ ├── gui-32.exe │ │ ├── gui-64.exe │ │ ├── gui.exe │ │ ├── launch.py │ │ ├── lib2to3_ex.py │ │ ├── monkey.py │ │ ├── msvc.py │ │ ├── namespaces.py │ │ ├── package_index.py │ │ ├── pep425tags.py │ │ ├── py27compat.py │ │ ├── py31compat.py │ │ ├── py33compat.py │ │ ├── sandbox.py │ │ ├── script (dev).tmpl │ │ ├── script.tmpl │ │ ├── site-patch.py │ │ ├── ssl_support.py │ │ ├── unicode_utils.py │ │ ├── version.py │ │ ├── wheel.py │ │ └── windows_support.py │ │ ├── six-1.12.0.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── six.py │ │ ├── urllib3-1.25.6.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE.txt │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ ├── urllib3 │ │ ├── __init__.py │ │ ├── _collections.py │ │ ├── connection.py │ │ ├── connectionpool.py │ │ ├── contrib │ │ │ ├── __init__.py │ │ │ ├── _appengine_environ.py │ │ │ ├── _securetransport │ │ │ │ ├── __init__.py │ │ │ │ ├── bindings.py │ │ │ │ └── low_level.py │ │ │ ├── appengine.py │ │ │ ├── ntlmpool.py │ │ │ ├── pyopenssl.py │ │ │ ├── securetransport.py │ │ │ └── socks.py │ │ ├── exceptions.py │ │ ├── fields.py │ │ ├── filepost.py │ │ ├── packages │ │ │ ├── __init__.py │ │ │ ├── backports │ │ │ │ ├── __init__.py │ │ │ │ └── makefile.py │ │ │ ├── six.py │ │ │ └── ssl_match_hostname │ │ │ │ ├── __init__.py │ │ │ │ └── _implementation.py │ │ ├── poolmanager.py │ │ ├── request.py │ │ ├── response.py │ │ └── util │ │ │ ├── __init__.py │ │ │ ├── connection.py │ │ │ ├── queue.py │ │ │ ├── request.py │ │ │ ├── response.py │ │ │ ├── retry.py │ │ │ ├── ssl_.py │ │ │ ├── timeout.py │ │ │ ├── url.py │ │ │ └── wait.py │ │ ├── wcwidth-0.1.7.dist-info │ │ ├── DESCRIPTION.rst │ │ ├── INSTALLER │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ ├── metadata.json │ │ ├── top_level.txt │ │ └── zip-safe │ │ ├── wcwidth │ │ ├── __init__.py │ │ ├── table_wide.py │ │ ├── table_zero.py │ │ ├── tests │ │ │ ├── __init__.py │ │ │ └── test_core.py │ │ └── wcwidth.py │ │ ├── werkzeug │ │ ├── __init__.py │ │ ├── _compat.py │ │ ├── _internal.py │ │ ├── _reloader.py │ │ ├── contrib │ │ │ ├── __init__.py │ │ │ ├── atom.py │ │ │ ├── cache.py │ │ │ ├── fixers.py │ │ │ ├── iterio.py │ │ │ ├── lint.py │ │ │ ├── profiler.py │ │ │ ├── securecookie.py │ │ │ ├── sessions.py │ │ │ └── wrappers.py │ │ ├── datastructures.py │ │ ├── debug │ │ │ ├── __init__.py │ │ │ ├── console.py │ │ │ ├── repr.py │ │ │ ├── shared │ │ │ │ ├── FONT_LICENSE │ │ │ │ ├── console.png │ │ │ │ ├── debugger.js │ │ │ │ ├── jquery.js │ │ │ │ ├── less.png │ │ │ │ ├── more.png │ │ │ │ ├── source.png │ │ │ │ ├── style.css │ │ │ │ └── ubuntu.ttf │ │ │ └── tbtools.py │ │ ├── exceptions.py │ │ ├── filesystem.py │ │ ├── formparser.py │ │ ├── http.py │ │ ├── local.py │ │ ├── middleware │ │ │ ├── __init__.py │ │ │ ├── dispatcher.py │ │ │ ├── http_proxy.py │ │ │ ├── lint.py │ │ │ ├── profiler.py │ │ │ ├── proxy_fix.py │ │ │ └── shared_data.py │ │ ├── posixemulation.py │ │ ├── routing.py │ │ ├── security.py │ │ ├── serving.py │ │ ├── test.py │ │ ├── testapp.py │ │ ├── urls.py │ │ ├── useragents.py │ │ ├── utils.py │ │ ├── wrappers │ │ │ ├── __init__.py │ │ │ ├── accept.py │ │ │ ├── auth.py │ │ │ ├── base_request.py │ │ │ ├── base_response.py │ │ │ ├── common_descriptors.py │ │ │ ├── etag.py │ │ │ ├── json.py │ │ │ ├── request.py │ │ │ ├── response.py │ │ │ └── user_agent.py │ │ └── wsgi.py │ │ ├── zipp-0.6.0.dist-info │ │ ├── INSTALLER │ │ ├── LICENSE │ │ ├── METADATA │ │ ├── RECORD │ │ ├── WHEEL │ │ └── top_level.txt │ │ └── zipp.py └── pyvenv.cfg ├── frontend ├── .gitignore ├── README.md ├── package-lock.json ├── package.json ├── public │ └── index.html └── src │ ├── assets │ └── logo.png │ ├── components │ ├── App.js │ ├── Block.js │ ├── Blockchain.js │ ├── ConductTransaction.js │ ├── Transaction.js │ └── TransactionPool.js │ ├── config.js │ ├── history.js │ ├── index.css │ └── index.js ├── python_blockchain_logo.png └── requirements.txt /.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *__pycache__* 3 | *node_modules* 4 | blockchain-env/lib/python3.7 5 | -------------------------------------------------------------------------------- /backend/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/backend/__init__.py -------------------------------------------------------------------------------- /backend/blockchain/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/backend/blockchain/__init__.py -------------------------------------------------------------------------------- /backend/config.py: -------------------------------------------------------------------------------- 1 | NANOSECONDS = 1 2 | MICROSECONDS = 1000 * NANOSECONDS 3 | MILLISECONDS = 1000 * MICROSECONDS 4 | SECONDS = 1000 * MILLISECONDS 5 | 6 | MINE_RATE = 4 * SECONDS 7 | 8 | STARTING_BALANCE = 1000 9 | 10 | MINING_REWARD = 50 11 | MINING_REWARD_INPUT = { 'address': '*--official-mining-reward--*' } -------------------------------------------------------------------------------- /backend/scripts/average_block_rate.py: -------------------------------------------------------------------------------- 1 | import time 2 | 3 | from backend.blockchain.blockchain import Blockchain 4 | from backend.config import SECONDS 5 | 6 | blockchain = Blockchain() 7 | 8 | times = [] 9 | 10 | for i in range(1000): 11 | start_time = time.time_ns() 12 | blockchain.add_block(i) 13 | end_time = time.time_ns() 14 | 15 | time_to_mine = (end_time - start_time) / SECONDS 16 | times.append(time_to_mine) 17 | 18 | average_time = sum(times) / len(times) 19 | 20 | print(f'New block difficulty: {blockchain.chain[-1].difficulty}') 21 | print(f'Time to mine new block: {time_to_mine}s') 22 | print(f'Average time to add blocks: {average_time}s\n') -------------------------------------------------------------------------------- /backend/tests/util/test_crypto_hash.py: -------------------------------------------------------------------------------- 1 | from backend.util.crypto_hash import crypto_hash 2 | 3 | def test_crypto_hash(): 4 | # It should create the same hash with arguments of different data types 5 | # in any order 6 | assert crypto_hash(1, [2], 'three') == crypto_hash('three', 1, [2]) 7 | assert crypto_hash('foo') == 'b2213295d564916f89a6a42455567c87c3f480fcd7a1c15e220f17d7169a790b' -------------------------------------------------------------------------------- /backend/tests/util/test_hex_to_binary.py: -------------------------------------------------------------------------------- 1 | from backend.util.hex_to_binary import hex_to_binary 2 | 3 | def test_hex_to_binary(): 4 | original_number = 789 5 | hex_number = hex(original_number)[2:] 6 | binary_number = hex_to_binary(hex_number) 7 | 8 | assert int(binary_number, 2) == original_number -------------------------------------------------------------------------------- /backend/util/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/backend/util/__init__.py -------------------------------------------------------------------------------- /backend/util/crypto_hash.py: -------------------------------------------------------------------------------- 1 | import hashlib 2 | import json 3 | 4 | def crypto_hash(*args): 5 | """ 6 | Return a sha-256 hash of the given arguments. 7 | """ 8 | stringified_args = sorted(map(lambda data: json.dumps(data), args)) 9 | joined_data = ''.join(stringified_args) 10 | 11 | return hashlib.sha256(joined_data.encode('utf-8')).hexdigest() 12 | 13 | def main(): 14 | print(f"crypto_hash('one', 2, [3]): {crypto_hash('one', 2, [3])}") 15 | print(f"crypto_hash(2, 'one', [3]): {crypto_hash(2, 'one', [3])}") 16 | 17 | if __name__ == '__main__': 18 | main() 19 | -------------------------------------------------------------------------------- /backend/wallet/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/backend/wallet/__init__.py -------------------------------------------------------------------------------- /blockchain-env/bin/chardetect: -------------------------------------------------------------------------------- 1 | #!/Users/david/Code/python-blockchain/blockchain-env/bin/python3 2 | # -*- coding: utf-8 -*- 3 | import re 4 | import sys 5 | 6 | from chardet.cli.chardetect import main 7 | 8 | if __name__ == '__main__': 9 | sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) 10 | sys.exit(main()) 11 | -------------------------------------------------------------------------------- /blockchain-env/bin/easy_install: -------------------------------------------------------------------------------- 1 | #!/Users/david/Code/python-blockchain/blockchain-env/bin/python3 2 | # -*- coding: utf-8 -*- 3 | import re 4 | import sys 5 | 6 | from setuptools.command.easy_install import main 7 | 8 | if __name__ == '__main__': 9 | sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) 10 | sys.exit(main()) 11 | -------------------------------------------------------------------------------- /blockchain-env/bin/easy_install-3.7: -------------------------------------------------------------------------------- 1 | #!/Users/david/Code/python-blockchain/blockchain-env/bin/python3 2 | # -*- coding: utf-8 -*- 3 | import re 4 | import sys 5 | 6 | from setuptools.command.easy_install import main 7 | 8 | if __name__ == '__main__': 9 | sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) 10 | sys.exit(main()) 11 | -------------------------------------------------------------------------------- /blockchain-env/bin/flask: -------------------------------------------------------------------------------- 1 | #!/Users/david/Code/python-blockchain/blockchain-env/bin/python3 2 | # -*- coding: utf-8 -*- 3 | import re 4 | import sys 5 | 6 | from flask.cli import main 7 | 8 | if __name__ == '__main__': 9 | sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) 10 | sys.exit(main()) 11 | -------------------------------------------------------------------------------- /blockchain-env/bin/pip: -------------------------------------------------------------------------------- 1 | #!/Users/david/Code/python-blockchain/blockchain-env/bin/python3 2 | # -*- coding: utf-8 -*- 3 | import re 4 | import sys 5 | 6 | from pip._internal import main 7 | 8 | if __name__ == '__main__': 9 | sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) 10 | sys.exit(main()) 11 | -------------------------------------------------------------------------------- /blockchain-env/bin/pip3: -------------------------------------------------------------------------------- 1 | #!/Users/david/Code/python-blockchain/blockchain-env/bin/python3 2 | # -*- coding: utf-8 -*- 3 | import re 4 | import sys 5 | 6 | from pip._internal import main 7 | 8 | if __name__ == '__main__': 9 | sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) 10 | sys.exit(main()) 11 | -------------------------------------------------------------------------------- /blockchain-env/bin/pip3.7: -------------------------------------------------------------------------------- 1 | #!/Users/david/Code/python-blockchain/blockchain-env/bin/python3 2 | # -*- coding: utf-8 -*- 3 | import re 4 | import sys 5 | 6 | from pip._internal import main 7 | 8 | if __name__ == '__main__': 9 | sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) 10 | sys.exit(main()) 11 | -------------------------------------------------------------------------------- /blockchain-env/bin/py.test: -------------------------------------------------------------------------------- 1 | #!/Users/david/Code/python-blockchain/blockchain-env/bin/python3 2 | # -*- coding: utf-8 -*- 3 | import re 4 | import sys 5 | 6 | from pytest import main 7 | 8 | if __name__ == '__main__': 9 | sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) 10 | sys.exit(main()) 11 | -------------------------------------------------------------------------------- /blockchain-env/bin/pytest: -------------------------------------------------------------------------------- 1 | #!/Users/david/Code/python-blockchain/blockchain-env/bin/python3 2 | # -*- coding: utf-8 -*- 3 | import re 4 | import sys 5 | 6 | from pytest import main 7 | 8 | if __name__ == '__main__': 9 | sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) 10 | sys.exit(main()) 11 | -------------------------------------------------------------------------------- /blockchain-env/bin/python: -------------------------------------------------------------------------------- 1 | python3 -------------------------------------------------------------------------------- /blockchain-env/bin/python3: -------------------------------------------------------------------------------- 1 | /usr/local/bin/python3 -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Click-7.0.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Click-7.0.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.31.1) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Click-7.0.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | click 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/ARC4.pyi: -------------------------------------------------------------------------------- 1 | from typing import Any, Union, Iterable 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class ARC4Cipher: 6 | block_size: int 7 | key_size: int 8 | 9 | def __init__(self, key: Buffer, *args: Any, **kwargs: Any) -> None: ... 10 | def encrypt(self, plaintext: Buffer) -> bytes: ... 11 | def decrypt(self, ciphertext: Buffer) -> bytes: ... 12 | 13 | def new(key: Buffer, drop : int = ...) -> ARC4Cipher: ... 14 | 15 | block_size: int 16 | key_size: Iterable[int] 17 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/PKCS1_v1_5.pyi: -------------------------------------------------------------------------------- 1 | from typing import Callable, Union, Any, Optional 2 | 3 | from Cryptodome.PublicKey.RSA import RsaKey 4 | 5 | Buffer = Union[bytes, bytearray, memoryview] 6 | 7 | class PKCS115_Cipher: 8 | def __init__(self, 9 | key: RsaKey, 10 | randfunc: Callable[[int], bytes]) -> None: ... 11 | def can_encrypt(self) -> bool: ... 12 | def can_decrypt(self) -> bool: ... 13 | def encrypt(self, message: Buffer) -> bytes: ... 14 | def decrypt(self, ciphertext: Buffer) -> bytes: ... 15 | 16 | def new(key: Buffer, 17 | randfunc: Optional[Callable[[int], bytes]] = ...) -> PKCS115_Cipher: ... 18 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_ARC4.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_ARC4.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_EKSBlowfish.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Iterable 2 | 3 | from Cryptodome.Cipher._mode_ecb import EcbMode 4 | 5 | MODE_ECB: int 6 | 7 | Buffer = Union[bytes, bytearray, memoryview] 8 | 9 | def new(key: Buffer, 10 | mode: int, 11 | salt: Buffer, 12 | cost: int) -> EcbMode: ... 13 | 14 | block_size: int 15 | key_size: Iterable[int] 16 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_Salsa20.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_Salsa20.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/__init__.pyi -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_chacha20.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_chacha20.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_mode_cbc.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, overload 2 | 3 | from Cryptodome.Util._raw_api import SmartPointer 4 | 5 | Buffer = Union[bytes, bytearray, memoryview] 6 | 7 | __all__ = ['CbcMode'] 8 | 9 | class CbcMode(object): 10 | block_size: int 11 | iv: Buffer 12 | IV: Buffer 13 | 14 | def __init__(self, 15 | block_cipher: SmartPointer, 16 | iv: Buffer) -> None: ... 17 | @overload 18 | def encrypt(self, plaintext: Buffer) -> bytes: ... 19 | @overload 20 | def encrypt(self, plaintext: Buffer, output: Union[bytearray, memoryview]) -> None: ... 21 | @overload 22 | def decrypt(self, plaintext: Buffer) -> bytes: ... 23 | @overload 24 | def decrypt(self, plaintext: Buffer, output: Union[bytearray, memoryview]) -> None: ... 25 | 26 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_mode_ecb.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, overload 2 | 3 | from Cryptodome.Util._raw_api import SmartPointer 4 | 5 | Buffer = Union[bytes, bytearray, memoryview] 6 | 7 | __all__ = [ 'EcbMode' ] 8 | 9 | class EcbMode(object): 10 | def __init__(self, block_cipher: SmartPointer) -> None: ... 11 | @overload 12 | def encrypt(self, plaintext: Buffer) -> bytes: ... 13 | @overload 14 | def encrypt(self, plaintext: Buffer, output: Union[bytearray, memoryview]) -> None: ... 15 | @overload 16 | def decrypt(self, plaintext: Buffer) -> bytes: ... 17 | @overload 18 | def decrypt(self, plaintext: Buffer, output: Union[bytearray, memoryview]) -> None: ... 19 | 20 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_mode_ofb.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, overload 2 | 3 | from Cryptodome.Util._raw_api import SmartPointer 4 | 5 | Buffer = Union[bytes, bytearray, memoryview] 6 | 7 | __all__ = ['OfbMode'] 8 | 9 | class OfbMode(object): 10 | block_size: int 11 | iv: Buffer 12 | IV: Buffer 13 | 14 | def __init__(self, 15 | block_cipher: SmartPointer, 16 | iv: Buffer) -> None: ... 17 | @overload 18 | def encrypt(self, plaintext: Buffer) -> bytes: ... 19 | @overload 20 | def encrypt(self, plaintext: Buffer, output: Union[bytearray, memoryview]) -> None: ... 21 | @overload 22 | def decrypt(self, plaintext: Buffer) -> bytes: ... 23 | @overload 24 | def decrypt(self, plaintext: Buffer, output: Union[bytearray, memoryview]) -> None: ... 25 | 26 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_mode_openpgp.pyi: -------------------------------------------------------------------------------- 1 | from types import ModuleType 2 | from typing import Union, Dict 3 | 4 | Buffer = Union[bytes, bytearray, memoryview] 5 | 6 | __all__ = ['OpenPgpMode'] 7 | 8 | class OpenPgpMode(object): 9 | block_size: int 10 | iv: Union[bytes, bytearray, memoryview] 11 | IV: Union[bytes, bytearray, memoryview] 12 | 13 | def __init__(self, 14 | factory: ModuleType, 15 | key: Buffer, 16 | iv: Buffer, 17 | cipher_params: Dict) -> None: ... 18 | def encrypt(self, plaintext: Buffer) -> bytes: ... 19 | def decrypt(self, plaintext: Buffer) -> bytes: ... 20 | 21 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_aes.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_aes.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_aesni.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_aesni.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_arc2.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_arc2.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_blowfish.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_blowfish.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_cast.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_cast.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_cbc.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_cbc.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_cfb.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_cfb.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_ctr.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_ctr.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_des.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_des.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_des3.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_des3.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_ecb.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_ecb.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_eksblowfish.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_eksblowfish.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_ocb.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_ocb.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_ofb.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Cipher/_raw_ofb.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/HMAC.pyi: -------------------------------------------------------------------------------- 1 | from types import ModuleType 2 | from typing import Union, Dict 3 | 4 | Buffer = Union[bytes, bytearray, memoryview] 5 | 6 | digest_size: int 7 | 8 | class HMAC(object): 9 | digest_size: int 10 | 11 | def __init__(self, 12 | key: Buffer, 13 | msg: Buffer, 14 | digestmod: ModuleType) -> None: ... 15 | def update(self, msg: Buffer) -> HMAC: ... 16 | def copy(self) -> HMAC: ... 17 | def digest(self) -> bytes: ... 18 | def hexdigest(self) -> str: ... 19 | def verify(self, mac_tag: Buffer) -> None: ... 20 | def hexverify(self, hex_mac_tag: str) -> None: ... 21 | 22 | 23 | def new(key: Buffer, 24 | msg: Buffer = ..., 25 | digestmod: ModuleType = ...) -> HMAC: ... 26 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/MD2.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class MD4Hash(object): 6 | digest_size: int 7 | block_size: int 8 | oid: str 9 | 10 | def __init__(self, data: Buffer = ...) -> None: ... 11 | def update(self, data: Buffer) -> None: ... 12 | def digest(self) -> bytes: ... 13 | def hexdigest(self) -> str: ... 14 | def copy(self) -> MD4Hash: ... 15 | def new(self, data: Buffer = ...) -> MD4Hash: ... 16 | 17 | def new(data: Buffer = ...) -> MD4Hash: ... 18 | digest_size: int 19 | block_size: int 20 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/MD4.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Optional 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class MD4Hash(object): 6 | digest_size: int 7 | block_size: int 8 | oid: str 9 | 10 | def __init__(self, data: Optional[Buffer] = ...) -> None: ... 11 | def update(self, data: Buffer) -> None: ... 12 | def digest(self) -> bytes: ... 13 | def hexdigest(self) -> str: ... 14 | def copy(self) -> MD4Hash: ... 15 | def new(self, data: Optional[Buffer] = ...) -> MD4Hash: ... 16 | 17 | def new(data: Optional[Buffer] = ...) -> MD4Hash: ... 18 | digest_size: int 19 | block_size: int 20 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/MD5.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class MD5Hash(object): 6 | digest_size: int 7 | block_size: int 8 | oid: str 9 | 10 | def __init__(self, data: Buffer = ...) -> None: ... 11 | def update(self, data: Buffer) -> None: ... 12 | def digest(self) -> bytes: ... 13 | def hexdigest(self) -> str: ... 14 | def copy(self) -> MD5Hash: ... 15 | def new(self, data: Buffer = ...) -> MD5Hash: ... 16 | 17 | def new(data: Buffer = ...) -> MD5Hash: ... 18 | digest_size: int 19 | block_size: int 20 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/Poly1305.pyi: -------------------------------------------------------------------------------- 1 | from types import ModuleType 2 | from typing import Union 3 | 4 | Buffer = Union[bytes, bytearray, memoryview] 5 | 6 | class Poly1305_MAC(object): 7 | block_size: int 8 | digest_size: int 9 | oid: str 10 | 11 | def __init__(self, 12 | r : int, 13 | s : int, 14 | data : Buffer) -> None: ... 15 | def update(self, data: Buffer) -> Poly1305_MAC: ... 16 | def digest(self) -> bytes: ... 17 | def hexdigest(self) -> str: ... 18 | def verify(self, mac_tag: Buffer) -> None: ... 19 | def hexverify(self, hex_mac_tag: str) -> None: ... 20 | 21 | def new(key: Buffer, 22 | cipher: ModuleType, 23 | nonce: Buffer = ..., 24 | data: Buffer = ...) -> Poly1305_MAC: ... 25 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/RIPEMD.pyi: -------------------------------------------------------------------------------- 1 | # This file exists for backward compatibility with old code that refers to 2 | # Cryptodome.Hash.SHA 3 | 4 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/RIPEMD160.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class RIPEMD160Hash(object): 6 | digest_size: int 7 | block_size: int 8 | oid: str 9 | 10 | def __init__(self, data: Buffer = ...) -> None: ... 11 | def update(self, data: Buffer) -> None: ... 12 | def digest(self) -> bytes: ... 13 | def hexdigest(self) -> str: ... 14 | def copy(self) -> RIPEMD160Hash: ... 15 | def new(self, data: Buffer = ...) -> RIPEMD160Hash: ... 16 | 17 | def new(data: Buffer = ...) -> RIPEMD160Hash: ... 18 | digest_size: int 19 | block_size: int 20 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/SHA.pyi: -------------------------------------------------------------------------------- 1 | # This file exists for backward compatibility with old code that refers to 2 | # Cryptodome.Hash.SHA 3 | 4 | from Cryptodome.Hash.SHA1 import __doc__, new, block_size, digest_size 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/SHA1.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Optional 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class SHA1Hash(object): 6 | digest_size: int 7 | block_size: int 8 | oid: str 9 | 10 | def __init__(self, data: Optional[Buffer] = ...) -> None: ... 11 | def update(self, data: Buffer) -> None: ... 12 | def digest(self) -> bytes: ... 13 | def hexdigest(self) -> str: ... 14 | def copy(self) -> SHA1Hash: ... 15 | def new(self, data: Optional[Buffer] = ...) -> SHA1Hash: ... 16 | 17 | def new(data: Optional[Buffer] = ...) -> SHA1Hash: ... 18 | digest_size: int 19 | block_size: int 20 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/SHA224.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Optional 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class SHA224Hash(object): 6 | digest_size: int 7 | block_size: int 8 | oid: str 9 | 10 | def __init__(self, data: Optional[Buffer] = ...) -> None: ... 11 | def update(self, data: Buffer) -> None: ... 12 | def digest(self) -> bytes: ... 13 | def hexdigest(self) -> str: ... 14 | def copy(self) -> SHA224Hash: ... 15 | def new(self, data: Optional[Buffer] = ...) -> SHA224Hash: ... 16 | 17 | def new(data: Optional[Buffer] = ...) -> SHA224Hash: ... 18 | digest_size: int 19 | block_size: int 20 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/SHA256.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Optional 2 | 3 | 4 | class SHA256Hash(object): 5 | digest_size: int 6 | block_size: int 7 | oid: str 8 | def __init__(self, data: Optional[Union[bytes, bytearray, memoryview]]=None) -> None: ... 9 | def update(self, data: Union[bytes, bytearray, memoryview]) -> None: ... 10 | def digest(self) -> bytes: ... 11 | def hexdigest(self) -> str: ... 12 | def copy(self) -> SHA256Hash: ... 13 | def new(self, data: Optional[Union[bytes, bytearray, memoryview]]=None) -> SHA256Hash: ... 14 | 15 | def new(data: Optional[Union[bytes, bytearray, memoryview]]=None) -> SHA256Hash: ... 16 | 17 | digest_size: int 18 | block_size: int 19 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/SHA384.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Optional 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class SHA384Hash(object): 6 | digest_size: int 7 | block_size: int 8 | oid: str 9 | 10 | def __init__(self, data: Optional[Buffer] = ...) -> None: ... 11 | def update(self, data: Buffer) -> None: ... 12 | def digest(self) -> bytes: ... 13 | def hexdigest(self) -> str: ... 14 | def copy(self) -> SHA384Hash: ... 15 | def new(self, data: Optional[Buffer] = ...) -> SHA384Hash: ... 16 | 17 | def new(data: Optional[Buffer] = ...) -> SHA384Hash: ... 18 | digest_size: int 19 | block_size: int 20 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/SHA3_224.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Optional 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class SHA3_224_Hash(object): 6 | digest_size: int 7 | oid: str 8 | def __init__(self, data: Optional[Buffer], update_after_digest: bool) -> None: ... 9 | def update(self, data: Buffer) -> SHA3_224_Hash: ... 10 | def digest(self) -> bytes: ... 11 | def hexdigest(self) -> str: ... 12 | def new(self) -> SHA3_224_Hash: ... 13 | 14 | def new(__data: Buffer = ..., update_after_digest: bool = ...) -> SHA3_224_Hash: ... 15 | 16 | digest_size: int 17 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/SHA3_256.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Optional 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class SHA3_256_Hash(object): 6 | digest_size: int 7 | oid: str 8 | def __init__(self, data: Optional[Buffer], update_after_digest: bool) -> None: ... 9 | def update(self, data: Buffer) -> SHA3_256_Hash: ... 10 | def digest(self) -> bytes: ... 11 | def hexdigest(self) -> str: ... 12 | def new(self) -> SHA3_256_Hash: ... 13 | 14 | def new(__data: Buffer = ..., update_after_digest: bool = ...) -> SHA3_256_Hash: ... 15 | 16 | digest_size: int 17 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/SHA3_384.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Optional 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class SHA3_384_Hash(object): 6 | digest_size: int 7 | oid: str 8 | def __init__(self, data: Optional[Buffer], update_after_digest: bool) -> None: ... 9 | def update(self, data: Buffer) -> SHA3_384_Hash: ... 10 | def digest(self) -> bytes: ... 11 | def hexdigest(self) -> str: ... 12 | def new(self) -> SHA3_384_Hash: ... 13 | 14 | def new(__data: Buffer = ..., update_after_digest: bool = ...) -> SHA3_384_Hash: ... 15 | 16 | digest_size: int 17 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/SHA3_512.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Optional 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class SHA3_512_Hash(object): 6 | digest_size: int 7 | oid: str 8 | def __init__(self, data: Optional[Buffer], update_after_digest: bool) -> None: ... 9 | def update(self, data: Buffer) -> SHA3_512_Hash: ... 10 | def digest(self) -> bytes: ... 11 | def hexdigest(self) -> str: ... 12 | def new(self) -> SHA3_512_Hash: ... 13 | 14 | def new(__data: Buffer = ..., update_after_digest: bool = ...) -> SHA3_512_Hash: ... 15 | 16 | digest_size: int 17 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/SHA512.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Optional 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class SHA512Hash(object): 6 | digest_size: int 7 | block_size: int 8 | oid: str 9 | 10 | def __init__(self, 11 | data: Optional[Buffer], 12 | truncate: Optional[str]) -> None: ... 13 | def update(self, data: Buffer) -> None: ... 14 | def digest(self) -> bytes: ... 15 | def hexdigest(self) -> str: ... 16 | def copy(self) -> SHA512Hash: ... 17 | def new(self, data: Optional[Buffer] = ...) -> SHA512Hash: ... 18 | 19 | def new(data: Optional[Buffer] = ..., 20 | truncate: Optional[str] = ...) -> SHA512Hash: ... 21 | digest_size: int 22 | block_size: int 23 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/SHAKE128.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Optional 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class SHAKE128_XOF(object): 6 | oid: str 7 | def __init__(self, 8 | data: Optional[Buffer] = ...) -> None: ... 9 | def update(self, data: Buffer) -> SHAKE128_XOF: ... 10 | def read(self, length: int) -> bytes: ... 11 | def new(self, data: Optional[Buffer] = ...) -> SHAKE128_XOF: ... 12 | 13 | def new(data: Optional[Buffer] = ...) -> SHAKE128_XOF: ... 14 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/SHAKE256.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Optional 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | class SHAKE256_XOF(object): 6 | oid: str 7 | def __init__(self, 8 | data: Optional[Buffer] = ...) -> None: ... 9 | def update(self, data: Buffer) -> SHAKE256_XOF: ... 10 | def read(self, length: int) -> bytes: ... 11 | def new(self, data: Optional[Buffer] = ...) -> SHAKE256_XOF: ... 12 | 13 | def new(data: Optional[Buffer] = ...) -> SHAKE256_XOF: ... 14 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_BLAKE2b.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_BLAKE2b.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_BLAKE2s.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_BLAKE2s.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_MD2.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_MD2.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_MD4.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_MD4.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_MD5.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_MD5.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_RIPEMD160.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_RIPEMD160.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_SHA1.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_SHA1.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_SHA224.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_SHA224.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_SHA256.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_SHA256.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_SHA384.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_SHA384.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_SHA512.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_SHA512.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/__init__.pyi -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_ghash_clmul.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_ghash_clmul.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_ghash_portable.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_ghash_portable.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_keccak.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_keccak.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_poly1305.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Hash/_poly1305.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/IO/PEM.pyi: -------------------------------------------------------------------------------- 1 | from typing import Tuple, Optional, Callable 2 | 3 | def encode(data: bytes, 4 | marke: str, 5 | passphrase: Optional[bytes] = ..., 6 | randfunc: Optional[Callable[[int],bytes]] = ...) -> str: ... 7 | 8 | 9 | def decode(pem_data: str, 10 | passphrase: Optional[bytes] = ...) -> Tuple[bytes, str, bool]: ... 11 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/IO/PKCS8.pyi: -------------------------------------------------------------------------------- 1 | from typing import Dict, Tuple, Optional, Union, Callable 2 | 3 | from Cryptodome.Util.asn1 import DerObject 4 | 5 | def wrap(private_key: bytes, 6 | key_oid: str, 7 | passphrase: Union[bytes, str] = ..., 8 | protection: str = ..., 9 | prot_params: Dict = ..., 10 | key_params: DerObject = ..., 11 | randfunc: Optional[Callable[[int],str]] = ...) -> bytes: ... 12 | 13 | 14 | def unwrap(p8_private_key: bytes, passphrase: Optional[Union[bytes, str]] = ...) -> Tuple[str, bytes, Optional[bytes]]: ... 15 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/IO/_PBES.pyi: -------------------------------------------------------------------------------- 1 | from typing import Dict, Optional, Callable 2 | 3 | class PbesError(ValueError): 4 | ... 5 | 6 | class PBES1(object): 7 | @staticmethod 8 | def decrypt(data: bytes, passphrase: bytes) -> bytes: ... 9 | 10 | class PBES2(object): 11 | @staticmethod 12 | def encrypt(data: bytes, 13 | passphrase: bytes, 14 | protection: str, 15 | prot_params: Optional[Dict] = ..., 16 | randfunc: Optional[Callable[[int],bytes]] = ...) -> bytes: ... 17 | 18 | @staticmethod 19 | def decrypt(data:bytes, passphrase: bytes) -> bytes: ... 20 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Math/Numbers.pyi: -------------------------------------------------------------------------------- 1 | from Cryptodome.Math._IntegerBase import IntegerBase 2 | 3 | class Integer(IntegerBase): 4 | pass 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Math/_IntegerCustom.pyi: -------------------------------------------------------------------------------- 1 | from typing import Any 2 | 3 | from ._IntegerNative import IntegerNative 4 | 5 | _raw_montgomery = Any 6 | 7 | class IntegerCustom(IntegerNative): 8 | pass 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Math/_IntegerGMP.pyi: -------------------------------------------------------------------------------- 1 | from ._IntegerBase import IntegerBase 2 | class IntegerGMP(IntegerBase): 3 | pass 4 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Math/_IntegerNative.pyi: -------------------------------------------------------------------------------- 1 | from ._IntegerBase import IntegerBase 2 | class IntegerNative(IntegerBase): 3 | pass 4 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Math/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Math/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Math/_modexp.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Math/_modexp.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Protocol/SecretSharing.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, List, Tuple 2 | 3 | def _mult_gf2(f1: int, f2: int) -> int : ... 4 | def _div_gf2(a: int, b: int) -> int : ... 5 | 6 | class _Element(object): 7 | irr_poly: int 8 | def __init__(self, encoded_value: Union[int, bytes]) -> None: ... 9 | def __int__(self) -> int: ... 10 | def encode(self) -> bytes: ... 11 | def __mul__(self, factor: int) -> _Element: ... 12 | def __add__(self, term: _Element) -> _Element: ... 13 | def inverse(self) -> _Element: ... 14 | 15 | class Shamir(object): 16 | @staticmethod 17 | def split(k: int, n: int, secret: bytes) -> List[Tuple[int, bytes]]: ... 18 | @staticmethod 19 | def combine(shares: List[Tuple[int, bytes]]) -> bytes: ... 20 | 21 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Protocol/__init__.pyi: -------------------------------------------------------------------------------- 1 | __all__ = ['KDF.pyi', 'SecretSharing.pyi'] 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Protocol/_scrypt.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Protocol/_scrypt.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/PublicKey/ElGamal.pyi: -------------------------------------------------------------------------------- 1 | from typing import Callable, Union, Tuple, Optional 2 | 3 | __all__ = ['generate', 'construct', 'ElGamalKey'] 4 | 5 | RNG = Callable[[int], bytes] 6 | 7 | def generate(bits: int, randfunc: RNG) -> ElGamalKey: ... 8 | def construct(tup: Union[Tuple[int, int, int], Tuple[int, int, int, int]]) -> ElGamalKey: ... 9 | 10 | class ElGamalKey(object): 11 | def __init__(self, randfunc: Optional[RNG]=None) -> None: ... 12 | def has_private(self) -> bool: ... 13 | def can_encrypt(self) -> bool: ... 14 | def can_sign(self) -> bool: ... 15 | def publickey(self) -> ElGamalKey: ... 16 | def __eq__(self, other: object) -> bool: ... 17 | def __ne__(self, other: object) -> bool: ... 18 | def __getstate__(self) -> None: ... 19 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/PublicKey/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/PublicKey/__init__.pyi -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/PublicKey/_ec_ws.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/PublicKey/_ec_ws.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/PublicKey/_openssh.pyi: -------------------------------------------------------------------------------- 1 | from typing import Tuple 2 | 3 | def read_int4(data: bytes) -> Tuple[int, bytes]: ... 4 | def read_bytes(data: bytes) -> Tuple[bytes, bytes]: ... 5 | def read_string(data: bytes) -> Tuple[str, bytes]: ... 6 | def check_padding(pad: bytes) -> None: ... 7 | def import_openssh_private_generic(data: bytes, password: bytes) -> Tuple[str, bytes]: ... 8 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Random/__init__.pyi: -------------------------------------------------------------------------------- 1 | from typing import Any 2 | 3 | __all__ = ['new', 'get_random_bytes'] 4 | 5 | from os import urandom 6 | 7 | class _UrandomRNG(object): 8 | 9 | def read(self, n: int) -> bytes:... 10 | def flush(self) -> None: ... 11 | def reinit(self) -> None: ... 12 | def close(self) -> None: ... 13 | 14 | def new(*args: Any, **kwargs: Any) -> _UrandomRNG: ... 15 | 16 | def atfork() -> None: ... 17 | 18 | get_random_bytes = urandom 19 | 20 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/Cipher/test_vectors/AES/README.txt: -------------------------------------------------------------------------------- 1 | Files downloaded from the NIST website on November 8, 2015 as: 2 | 3 | * http://csrc.nist.gov/groups/STM/cavp/documents/aes/KAT_AES.zip 4 | * http://csrc.nist.gov/groups/STM/cavp/documents/aes/aesmct.zip 5 | * http://csrc.nist.gov/groups/STM/cavp/documents/aes/aesmmt.zip 6 | 7 | And on December 16, 2015 as: 8 | 9 | * http://csrc.nist.gov/groups/STM/cavp/documents/mac/gcmtestvectors.zip 10 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/Cipher/test_vectors/TDES/README.txt: -------------------------------------------------------------------------------- 1 | Files downloaded from the NIST website on November 9, 2015 as: 2 | 3 | * http://csrc.nist.gov/groups/STM/cavp/documents/des/KAT_TDES.zip 4 | * http://csrc.nist.gov/groups/STM/cavp/documents/des/tdesmmt.zip 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/Hash/test_vectors/keccak/ExtremelyLongMsgKAT_224.txt: -------------------------------------------------------------------------------- 1 | # ExtremelyLongMsgKAT_224.txt 2 | # Algorithm Name: Keccak 3 | # Principal Submitter: The Keccak Team (Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche) 4 | 5 | Repeat = 16777216 6 | Text = abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmnhijklmno 7 | MD = C42E4AEE858E1A8AD2976896B9D23DD187F64436EE15969AFDBC68C5 8 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/Hash/test_vectors/keccak/ExtremelyLongMsgKAT_256.txt: -------------------------------------------------------------------------------- 1 | # ExtremelyLongMsgKAT_256.txt 2 | # Algorithm Name: Keccak 3 | # Principal Submitter: The Keccak Team (Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche) 4 | 5 | Repeat = 16777216 6 | Text = abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmnhijklmno 7 | MD = 5F313C39963DCF792B5470D4ADE9F3A356A3E4021748690A958372E2B06F82A4 8 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/Hash/test_vectors/keccak/ExtremelyLongMsgKAT_384.txt: -------------------------------------------------------------------------------- 1 | # ExtremelyLongMsgKAT_384.txt 2 | # Algorithm Name: Keccak 3 | # Principal Submitter: The Keccak Team (Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche) 4 | 5 | Repeat = 16777216 6 | Text = abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmnhijklmno 7 | MD = 9B7168B4494A80A86408E6B9DC4E5A1837C85DD8FF452ED410F2832959C08C8C0D040A892EB9A755776372D4A8732315 8 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/Hash/test_vectors/keccak/ExtremelyLongMsgKAT_512.txt: -------------------------------------------------------------------------------- 1 | # ExtremelyLongMsgKAT_512.txt 2 | # Algorithm Name: Keccak 3 | # Principal Submitter: The Keccak Team (Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche) 4 | 5 | Repeat = 16777216 6 | Text = abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmnhijklmno 7 | MD = 3E122EDAF37398231CFACA4C7C216C9D66D5B899EC1D7AC617C40C7261906A45FC01617A021E5DA3BD8D4182695B5CB785A28237CBB167590E34718E56D8AAB8 8 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/Hash/test_vectors/keccak/readme.txt: -------------------------------------------------------------------------------- 1 | Files downloaded on 22 October 2015 from http://keccak.noekeon.org/KeccakKAT-3.zip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256.txt: -------------------------------------------------------------------------------- 1 | Private-Key: (256 bit) 2 | priv: 3 | 5c:4e:43:20:ef:26:0f:91:ed:9f:c5:97:ae:e9:8c: 4 | 82:36:b6:0e:0c:ed:69:2c:c7:a0:57:d5:e4:57:98: 5 | a0:52 6 | pub: 7 | 04:a4:0a:d5:9a:20:50:eb:e9:24:79:bd:5f:b1:6b: 8 | b2:e4:5b:64:65:eb:3c:b2:b1:ef:fe:42:3f:ab:e6: 9 | cb:74:24:db:82:19:ef:0b:ab:80:ac:f2:6f:d7:05: 10 | 95:b6:1f:e4:76:0d:33:ee:d8:0d:d0:3d:2f:d0:df: 11 | b2:7b:8c:e7:5c 12 | ASN1 OID: prime256v1 13 | NIST CURVE: P-256 14 | -----BEGIN EC PRIVATE KEY----- 15 | MHcCAQEEIFxOQyDvJg+R7Z/Fl67pjII2tg4M7Wksx6BX1eRXmKBSoAoGCCqGSM49 16 | AwEHoUQDQgAEpArVmiBQ6+kkeb1fsWuy5FtkZes8srHv/kI/q+bLdCTbghnvC6uA 17 | rPJv1wWVth/kdg0z7tgN0D0v0N+ye4znXA== 18 | -----END EC PRIVATE KEY----- 19 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | MHcCAQEEIFxOQyDvJg+R7Z/Fl67pjII2tg4M7Wksx6BX1eRXmKBSoAoGCCqGSM49 3 | AwEHoUQDQgAEpArVmiBQ6+kkeb1fsWuy5FtkZes8srHv/kI/q+bLdCTbghnvC6uA 4 | rPJv1wWVth/kdg0z7tgN0D0v0N+ye4znXA== 5 | -----END EC PRIVATE KEY----- 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_ecparams.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PARAMETERS----- 2 | BggqhkjOPQMBBw== 3 | -----END EC PARAMETERS----- 4 | -----BEGIN EC PRIVATE KEY----- 5 | MHcCAQEEIImJN2luna1V8qD1YCKMLZsprYv4q9uIvo72eIB/pQl7oAoGCCqGSM49 6 | AwEHoUQDQgAE9XbKGnnS9bWeTW36mrqizyKTNkyck8GrcDBrcdckRbcdpj3Q33r0 7 | ihOmykzepxSzl887hbPBFxQVKhQZCwXQHg== 8 | -----END EC PRIVATE KEY----- 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_enc_aes128.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: AES-128-CBC,288614CF0887BAE11B8B660C3CA24139 4 | 5 | 7Jy/LNIYkloV8x1LVRjy59phEtKrli8ySiFDf6nIBtAmt/WLoZijmCMJ7VTXVXNq 6 | lyruBM2t4At/0EFI3CSQKxFvsnHDwHL9WYEDPC+gQ/Xy8j2JU0IAM+BuasjHAgXw 7 | tq0sJUnRh+xNiI2FotEBC8S194M+lp3RkBZwoBlk3w0= 8 | -----END EC PRIVATE KEY----- 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_enc_aes192.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: AES-192-CBC,82AE4C810C9CF67736F256DEDFD6908E 4 | 5 | gWOVzIDfiMQuIvOQ2m5BWQRWYL7DMb2Mbz4GO8ovBHMNOkMAdi0GhanI+dpQyjtw 6 | V9zYBjbqtpMGzACusVYFxvkE9VOb1tj+QphG09Nv4/oUNXBdx1RDxrvntaB/Uskj 7 | 0zIDV/7D9esLIPTiBtwy62ZAc5Pxk88IG/Z2nGvJZMg= 8 | -----END EC PRIVATE KEY----- 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_enc_aes256.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: AES-256-CBC,B0D721B56BD5DE864D945C4780FCDDB4 4 | 5 | yyHve06rLtD4n+61g7WSMNI5hbXfX4VUWXBc85vt9D0xnXDXf1DQ69rtnLccUUh8 6 | PWVKITtJ4U0/gmi0V5DoHMi5qfWSVLXx7N/llQR/mnxViAWJ9XEuRU/4sZVBp58j 7 | 88YG/ma8piE7k0wz6YkgrPoE/j5OxzcFE0n/4+KIa2E= 8 | -----END EC PRIVATE KEY----- 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_enc_aes256_gcm.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: id-aes256-GCM,4071BCFFB5B7CE18CEBFE901 4 | 5 | oh6vdMD9bkUvRwtaBkYz6MMWCtjE2GvIKx+diG8XxzakcFzVIqXlDXfEcVIs6Vis 6 | LFofIdBHElQxRUTnCCkb21pmly6v0ZLDugwMWNz6ichaie1gXqi+JwjPe2Ju5aro 7 | UNeOPqFlVkCeEvHxE3eR1vqlDBLar9VwtA== 8 | -----END EC PRIVATE KEY----- 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_enc_des3.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: DES-EDE3-CBC,7E383189A0521324 4 | 5 | GT+hvDACAQAq8mD20yQFuQo5Gfg3gPJbZSErmgtdMa5xRLzPEWFnP1yOfZFIgVhn 6 | HKLNhgrfbNRh3Ij/DcC6gQ+/35Ts9r+4KLMP6qXuEEfQGTCRu0JQbbMCheN7iNM1 7 | 8ji47sMaVPJPLrBbD6bPcUl8Tfv0+Xiikvxia5NjqAE= 8 | -----END EC PRIVATE KEY----- 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_openssh.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN OPENSSH PRIVATE KEY----- 2 | b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAaAAAABNlY2RzYS 3 | 1zaGEyLW5pc3RwMjU2AAAACG5pc3RwMjU2AAAAQQSd5h5QDg2LP9EJEUR3gm9aLt4hLBGd 4 | gmdXiSxIUsDIK3LX6xkW7oYVW6fdY/1gSXGghBATIPBGCWiWVMrV937EAAAAuCGaxQ8hms 5 | UPAAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJ3mHlAODYs/0QkR 6 | RHeCb1ou3iEsEZ2CZ1eJLEhSwMgrctfrGRbuhhVbp91j/WBJcaCEEBMg8EYJaJZUytX3fs 7 | QAAAAgTMI6rxJRnxWVWOlPoPb3bYEGpuriUE3u3qsjM0ERwy8AAAAcZXR0b3JlQGxvY2Fs 8 | aG9zdC5sb2NhbGRvbWFpbgECAwQ= 9 | -----END OPENSSH PRIVATE KEY----- 10 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_openssh_old.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgTMI6rxJRnxWVWOlP 3 | oPb3bYEGpuriUE3u3qsjM0ERwy+hRANCAASd5h5QDg2LP9EJEUR3gm9aLt4hLBGd 4 | gmdXiSxIUsDIK3LX6xkW7oYVW6fdY/1gSXGghBATIPBGCWiWVMrV937E 5 | -----END PRIVATE KEY----- 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_openssh_pwd.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN OPENSSH PRIVATE KEY----- 2 | b3BlbnNzaC1rZXktdjEAAAAACmFlczI1Ni1jdHIAAAAGYmNyeXB0AAAAGAAAABCqJNjEq5 3 | iRklNq19kdTqR3AAAAEAAAAAEAAABoAAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlz 4 | dHAyNTYAAABBBCJuQOnxY5Bv+TbkoAHKhfUTxsJDQh4vB73sk/mLXnqBvKxlKjWpkkvbhn 5 | nEwXh5oPbDgZllizRALUWbBj9aApgAAADAuq/Y19nodo76gIfEfPYeU7/wtaLbxEYkAfHn 6 | VgzJnxCMxNe2oYIUg/24DzaBJlZpi3e3UsV3W9b2obqFCJTMUEnPwwlFnF+fg+nHNvCyov 7 | mvateAqaOY73wTKCKyoG+afaSeRZ0ilLNjVCsbmvW/9OaxZLB1mbysIuSJKp/56GdJiLqU 8 | XSLrEMbF0/+NDt9fmhNg718F9BIomUCWI0S+1Yjryjlbj+Hz/Oe6cxYyZXcuqtufX3NWMY 9 | belkaLCdgA 10 | -----END OPENSSH PRIVATE KEY----- 11 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_openssh_pwd_old.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQggjlGKBn8qmDcWdQb 3 | HuQXsGkIgzFu+ltvtSTsmmh64pehRANCAAQibkDp8WOQb/k25KAByoX1E8bCQ0Ie 4 | Lwe97JP5i156gbysZSo1qZJL24Z5xMF4eaD2w4GZZYs0QC1FmwY/WgKY 5 | -----END PRIVATE KEY----- 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_p8.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_p8.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_p8.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN ENCRYPTED PRIVATE KEY----- 2 | MIGwMBsGCSqGSIb3DQEFAzAOBAjtAa3UT6r2WAICCAAEgZA1MjDX/jkmLeNTlbCK 3 | oDJPqo9OzHoZInlg4diuvId3uAPxyYnMuwTJvCSklOPXQLkgpYsYRF3YgNBuGAld 4 | VQvWcbfwX1eQSqOx6FBCWJgXpWLhlI9qViRDYNQfyam8Xszq7tOdsOdJhSuA+YCt 5 | 5mBj57E8tUNLLR6P3lAUIM8WJBlxOWyR0EqdM5vcxYIzzTM= 6 | -----END ENCRYPTED PRIVATE KEY----- 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_p8_clear.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_p8_clear.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_private_p8_clear.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgXE5DIO8mD5Htn8WX 3 | rumMgja2DgztaSzHoFfV5FeYoFKhRANCAASkCtWaIFDr6SR5vV+xa7LkW2Rl6zyy 4 | se/+Qj+r5st0JNuCGe8Lq4Cs8m/XBZW2H+R2DTPu2A3QPS/Q37J7jOdc 5 | -----END PRIVATE KEY----- 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_public.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_public.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_public.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PUBLIC KEY----- 2 | MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEpArVmiBQ6+kkeb1fsWuy5FtkZes8 3 | srHv/kI/q+bLdCTbghnvC6uArPJv1wWVth/kdg0z7tgN0D0v0N+ye4znXA== 4 | -----END PUBLIC KEY----- 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_public_compressed.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_public_compressed.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_public_compressed.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PUBLIC KEY----- 2 | MDkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDIgACpArVmiBQ6+kkeb1fsWuy5FtkZes8 3 | srHv/kI/q+bLdCQ= 4 | -----END PUBLIC KEY----- 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_public_openssh.txt: -------------------------------------------------------------------------------- 1 | ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKQK1ZogUOvpJHm9X7FrsuRbZGXrPLKx7/5CP6vmy3Qk24IZ7wurgKzyb9cFlbYf5HYNM+7YDdA9L9DfsnuM51w= 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_x509.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_x509.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p256_x509.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIBjTCCATOgAwIBAgIJAJtI7kH/tXlvMAoGCCqGSM49BAMCMCMxCzAJBgNVBAYT 3 | AkdCMRQwEgYDVQQDDAtleGFtcGxlLmNvbTAeFw0xNjAxMzAwNjMyNTBaFw0xNzAx 4 | MjkwNjMyNTBaMCMxCzAJBgNVBAYTAkdCMRQwEgYDVQQDDAtleGFtcGxlLmNvbTBZ 5 | MBMGByqGSM49AgEGCCqGSM49AwEHA0IABKQK1ZogUOvpJHm9X7FrsuRbZGXrPLKx 6 | 7/5CP6vmy3Qk24IZ7wurgKzyb9cFlbYf5HYNM+7YDdA9L9DfsnuM51yjUDBOMB0G 7 | A1UdDgQWBBSv2v+sOg8Z+VTAJk5ob4nDRS1+jjAfBgNVHSMEGDAWgBSv2v+sOg8Z 8 | +VTAJk5ob4nDRS1+jjAMBgNVHRMEBTADAQH/MAoGCCqGSM49BAMCA0gAMEUCID3r 9 | ARj3nfwBK4uE3BmlGKjaH5JR3e9iEac7BT93W6hOAiEAuNZxsvUpadoB4SqurLVg 10 | lrdvw9wpYr8JTq7q2KUIQes= 11 | -----END CERTIFICATE----- 12 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | MIGkAgEBBDAB/U5fLifbkLkUOOm4+L9BUbmIL7Ct/R7E5a0a+BvXMHGX/F/so2J+ 3 | ygQ+86ZcCNWgBwYFK4EEACKhZANiAATURHeYE+qftghJkeCogakrXjSVJlR7lShQ 4 | BHprXFh6yj/eyHk8MdgF/SJ3wl1DrLG0A+F1TXeNi59kJlp5iDdhGrmA6vT55BUW 5 | SjYMEBwS3bTFFtGHzLLgjPQS/7G9LAc= 6 | -----END EC PRIVATE KEY----- 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_enc_aes128.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: AES-128-CBC,5B45390A5352195C92B180EAC93D2639 4 | 5 | Y4NGCIc5AkVWqtFzImURm1JWtuWUAZ1bOU12Z5yYeMsibr10rDrfPZpKQU0V2LI2 6 | YLAP09egvnsbcQixFUQ1UJtsUqwJtrsNVOn57YS7SpqZjRI9wQ/GbWka98sZG2aC 7 | fO7hxX0B0ajrVUTgoAbs1A+jsE21MusIgRLxspyLMgiIbKeBcEQ+c5xE9aZ4sUf+ 8 | TncnWoKXnhUTNzmRP3c26FoCyqD5s7YqJFJQRvsyrwQ= 9 | -----END EC PRIVATE KEY----- 10 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_enc_aes192.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: AES-192-CBC,5B0C2D2179A66A82F902426C3D66B7CB 4 | 5 | vOKL3xUgTHefi+u/XA+pKi4wJsmmVcE1Gw2JHEDyV/7fjpn0Gk9VV+0pB0WYN3F3 6 | u8b5zzORpvLAIt70TjPJDFAY6BVE7oOTPG+5dTB0XFmBWrwitxxWiiwrjIvntJrn 7 | 6FCIWu0tHB+N6EAM3ZCU3NlGB1Gd8E2mvbhAHuTA7B1RPMCrNx1ZBUkddfOOeGom 8 | KkhjYkQtuBPQzCmnt44PVAqxk3kcNqxh/03AgI99HjE= 9 | -----END EC PRIVATE KEY----- 10 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_enc_aes256.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: AES-256-CBC,410608C70F0620276B09772965FE55B5 4 | 5 | MrdkcvwfCvE6wLsmEv2GAmKFOyfsGdG0Q4EWO9yLex0JDiX+fKMZ6ODHODLEqWv+ 6 | rkK0MQufS5tqDFi86bCaX5zcLBIEH3HRqqVNoCJVmImy4ISc4eG4W29hjr9GyE51 7 | ThQf+fyyRJB1fQ5SQ+IzZhbCtFTL7DGPbz+dvLqxj8R/NyuMEPUflE6i3J0ywp8s 8 | NRW8yF5ztliOLBcvqB01Q0/ZxH0Qzb8AkWPAeNGelWA= 9 | -----END EC PRIVATE KEY----- 10 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_enc_aes256_gcm.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: id-aes256-GCM,6122B1BFDE271D74353187FD 4 | 5 | tbFP498U5gBeXVet5wiCvUQlw8SqRB6Kb2EPkKDkLF0RJNpe0LbdhlsFbHmLvXbZ 6 | G8DTqf80AntCYStJ2Aw2A96GbJHjRE1/ARdygu4oDx6Cs/Ep0iZ4DD8K1MpY4rLJ 7 | 2+z5qC+4WTWVqjEpm3ahBq7PdDfHqNiXyJtCylsK66G+rIkPaB3HIc+2Hg+INT97 8 | hsIAjYLOBfpTgQdMBxAtIwCc+8HDznY= 9 | -----END EC PRIVATE KEY----- 10 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_enc_des3.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: DES-EDE3-CBC,81942F2DD9AFDDE2 4 | 5 | 8jVO/m9BOGS66s+k35eGA/EG4+hefLpKmsYYfYSpi9arIMZYXWpvNh3mWcfLqa/u 6 | 9M5+T+5BtFodQE61g9TvHX46ElIP/daB6qUgwYi85WVY8uFwubN5MAYRxYfW1NxZ 7 | xz0RSANLe51Yfd/CVSEGmpNitkVqV9ymC8R/d1zMoZ2YmZe22q9FoA6GnO+tQe7P 8 | oF5ssFxfXhgIhAyqExnHnU6hz7eytrRj 9 | -----END EC PRIVATE KEY----- 10 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_openssh.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN OPENSSH PRIVATE KEY----- 2 | b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAiAAAABNlY2RzYS 3 | 1zaGEyLW5pc3RwMzg0AAAACG5pc3RwMzg0AAAAYQRJiVR6GCNrbbpgnDAH7eaScVjR3fKD 4 | I1h6nr+FAdkB6CVBliVcAfbNyKB6TSwmwI5s+KqYcJ8IP7gYv06FLAAbzJLBSNRMpbbHiy 5 | Uxns+Xhq5Q7tILMybAdP6IL9FUQvwAAADooG1NMKBtTTAAAAATZWNkc2Etc2hhMi1uaXN0 6 | cDM4NAAAAAhuaXN0cDM4NAAAAGEESYlUehgja226YJwwB+3mknFY0d3ygyNYep6/hQHZAe 7 | glQZYlXAH2zcigek0sJsCObPiqmHCfCD+4GL9OhSwAG8ySwUjUTKW2x4slMZ7Pl4auUO7S 8 | CzMmwHT+iC/RVEL8AAAAMQD4YlMueH2lEaST2Hp2IWwnxl5jlRi0w29Sjdgz5w+nQMdDlv 9 | 7pp8Cql1aRDldWekAAAAAcZXR0b3JlQGxvY2FsaG9zdC5sb2NhbGRvbWFpbgECAw== 10 | -----END OPENSSH PRIVATE KEY----- 11 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_openssh_old.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDD4YlMueH2lEaST2Hp2 3 | IWwnxl5jlRi0w29Sjdgz5w+nQMdDlv7pp8Cql1aRDldWekChZANiAARJiVR6GCNr 4 | bbpgnDAH7eaScVjR3fKDI1h6nr+FAdkB6CVBliVcAfbNyKB6TSwmwI5s+KqYcJ8I 5 | P7gYv06FLAAbzJLBSNRMpbbHiyUxns+Xhq5Q7tILMybAdP6IL9FUQvw= 6 | -----END PRIVATE KEY----- 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_openssh_pwd.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN OPENSSH PRIVATE KEY----- 2 | b3BlbnNzaC1rZXktdjEAAAAACmFlczI1Ni1jdHIAAAAGYmNyeXB0AAAAGAAAABAEs/qDQr 3 | Dg6ypxmNpmLd2iAAAAEAAAAAEAAACIAAAAE2VjZHNhLXNoYTItbmlzdHAzODQAAAAIbmlz 4 | dHAzODQAAABhBB7jCOjjQALwRZOcnOfqnOMsq8SazZWFDJTHceXORuA5Np3ossljIG1AhT 5 | ZoAJ39LbISENybjvIfegCI+1ru7Op06umnvsoSgU5UVskulggU4CLh6K75nEpbpiA7xpzQ 6 | ggAAAPAjFzgLUSytuW2OsMlDkuUcSxw/LOjc5rSdT+jHbxR/5zsN8bofBADOMmNIYnbmX+ 7 | 92+w6pdq/ANBymAkJbsMoXLoGZbNTi8BZdUy1kqsTWidMKO76hQNemr5pQThcllBpyEpd0 8 | yum5xv9t1ycUFoOWHzf/s2RoJAkQbxRFJxaTZgy1aRu3uw1NRf4hq1Z5k1uoxWeAKZqAHH 9 | 8jwWHWeXmFyd207iZVaNORB8EV+W2l67W+J9ph2jNcrRor7Mr+1LtHJeCy9rCqfESBgcsj 10 | vJ37C4oUa0O/KryVIAgeBCQ+URGIrfcgvjArVeRTetRz1Og= 11 | -----END OPENSSH PRIVATE KEY----- 12 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_openssh_pwd_old.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDDvLgUph820FxsVmhVt 3 | LKoDYWrCZ+PbHkv23Rc9LhIEwOP+/CDQTzAP+vbm+85oZoWhZANiAAQe4wjo40AC 4 | 8EWTnJzn6pzjLKvEms2VhQyUx3HlzkbgOTad6LLJYyBtQIU2aACd/S2yEhDcm47y 5 | H3oAiPta7uzqdOrpp77KEoFOVFbJLpYIFOAi4eiu+ZxKW6YgO8ac0II= 6 | -----END PRIVATE KEY----- 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_p8.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_p8.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_p8.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN ENCRYPTED PRIVATE KEY----- 2 | MIIBHDBXBgkqhkiG9w0BBQ0wSjApBgkqhkiG9w0BBQwwHAQIN+KlE8gdc+0CAggA 3 | MAwGCCqGSIb3DQIJBQAwHQYJYIZIAWUDBAEqBBAATq+tj2Hy2uIzGvteqcz/BIHA 4 | Uca6yAXm0z4x3IGWfcwOd+LKoxHDyDi2D7/CgtQRqwbeN3rXXNDgMOZIEBaHID5I 5 | rWvjovjA8BgdVSKZkqWhETe5QalDn8EwnNDE3bcsPhEQVgzAf2++1Hj7ad6KyPHu 6 | 5QtxTTdnPKRWq0J1bCdSND2U7ZuXGz9kd8iHeL+HnT4Qs9PKfimLzE0djZLLQcDQ 7 | ORp7sZUJRqV0bg7177HI6x+3qD3vb71lEGD+4clgVl5nNQl6vG9pxJF4+sdCwgdM 8 | -----END ENCRYPTED PRIVATE KEY----- 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_p8_clear.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_p8_clear.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_private_p8_clear.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDAB/U5fLifbkLkUOOm4 3 | +L9BUbmIL7Ct/R7E5a0a+BvXMHGX/F/so2J+ygQ+86ZcCNWhZANiAATURHeYE+qf 4 | tghJkeCogakrXjSVJlR7lShQBHprXFh6yj/eyHk8MdgF/SJ3wl1DrLG0A+F1TXeN 5 | i59kJlp5iDdhGrmA6vT55BUWSjYMEBwS3bTFFtGHzLLgjPQS/7G9LAc= 6 | -----END PRIVATE KEY----- 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_public.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_public.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_public.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PUBLIC KEY----- 2 | MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE1ER3mBPqn7YISZHgqIGpK140lSZUe5Uo 3 | UAR6a1xYeso/3sh5PDHYBf0id8JdQ6yxtAPhdU13jYufZCZaeYg3YRq5gOr0+eQV 4 | Fko2DBAcEt20xRbRh8yy4Iz0Ev+xvSwH 5 | -----END PUBLIC KEY----- 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_public_compressed.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_public_compressed.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_public_compressed.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PUBLIC KEY----- 2 | MEYwEAYHKoZIzj0CAQYFK4EEACIDMgAD1ER3mBPqn7YISZHgqIGpK140lSZUe5Uo 3 | UAR6a1xYeso/3sh5PDHYBf0id8JdQ6yx 4 | -----END PUBLIC KEY----- 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_public_openssh.txt: -------------------------------------------------------------------------------- 1 | ecdsa-sha2-nistp384 AAAAE2VjZHNhLXNoYTItbmlzdHAzODQAAAAIbmlzdHAzODQAAABhBNREd5gT6p+2CEmR4KiBqSteNJUmVHuVKFAEemtcWHrKP97IeTwx2AX9InfCXUOssbQD4XVNd42Ln2QmWnmIN2EauYDq9PnkFRZKNgwQHBLdtMUW0YfMsuCM9BL/sb0sBw== 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_x509.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_x509.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p384_x509.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIBzTCCAVOgAwIBAgIJAKRbJQOlQscMMAoGCCqGSM49BAMCMCMxCzAJBgNVBAYT 3 | AkdCMRQwEgYDVQQDDAtleGFtcGxlLmNvbTAeFw0xOTAzMDQyMjEyMzhaFw0yMDAz 4 | MDMyMjEyMzhaMCMxCzAJBgNVBAYTAkdCMRQwEgYDVQQDDAtleGFtcGxlLmNvbTB2 5 | MBAGByqGSM49AgEGBSuBBAAiA2IABNREd5gT6p+2CEmR4KiBqSteNJUmVHuVKFAE 6 | emtcWHrKP97IeTwx2AX9InfCXUOssbQD4XVNd42Ln2QmWnmIN2EauYDq9PnkFRZK 7 | NgwQHBLdtMUW0YfMsuCM9BL/sb0sB6NTMFEwHQYDVR0OBBYEFP65qb9pHEObJv9+ 8 | Dmi0lYAE3OPhMB8GA1UdIwQYMBaAFP65qb9pHEObJv9+Dmi0lYAE3OPhMA8GA1Ud 9 | EwEB/wQFMAMBAf8wCgYIKoZIzj0EAwIDaAAwZQIxAKO7hcpfOLtTAePRxPpsa+Hj 10 | qVC6qbSUEmtOfhm3oFQpORFP3DdcLUhbuPKNaNs/ngIwcKxF9aG2S/DV5ABJY20Z 11 | 2Zf7uUUkS0Hi1LJMQTcqtPcHbdBFusxLCo37CRCSoytM 12 | -----END CERTIFICATE----- 13 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | MIHcAgEBBEIBjb18rG5GXymJC4t6zq1IKH1uUXrlseqXCGJ4MTeyxWNNRYBsyoCX 3 | HwI6Xpl/Oybq4oXcpZx1akL1D17CRz9qygGgBwYFK4EEACOhgYkDgYYABACDX+CQ 4 | zLXL6jmhhc9ut0t/um2bUWl5CfuBYKndbZIE5yzMJKDAefP7xgorbKa0hWK0jivS 5 | puZxqSa2v2FlQocguQHFqYEnXVXADtv+MaGY2gz2Omspyvjw2vEqsbwJgDoCQbhP 6 | bZ/HaPlDpRKunxHeRcqaEeP+C/Z6szBk2IsGeBM6yg== 7 | -----END EC PRIVATE KEY----- 8 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private_enc_aes128.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: AES-128-CBC,272F27EFE80BF5DD3AF9B2C4BB0F8C21 4 | 5 | tGpTTWW87dmRBmp+K9aAs5EcLPXweAgzwtvQk1k1zddmMtRzUpuRAcmVnxVDpVO6 6 | FT0I8M5ra8zqz543oA2+Lcm7Bog2DO5P9xj4xqCImfyryr7nqDaLKRpj95vXwg10 7 | AtQ1SO5suWDZoWJyzmcc4usdxLzSG6LOTIo9HRALSAZ4/UrIVvK3Thz+tejmsjb5 8 | q3027vuBgO746Ws1vDzjSg31mVw8tLKECmQNaOGmE/XD0FvYVb8Sa95gh38MrbVe 9 | 81LJu76Lb2aRlTeq4p/LHAeSlgcRoAbP2F1hVY1CWr4= 10 | -----END EC PRIVATE KEY----- 11 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private_enc_aes192.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: AES-192-CBC,8F704C0DCF6C7C6220D7F43F5E725159 4 | 5 | vUMP3ewuZeshejKmp9+yxsS5nOPotDtaUR85tT6S7eif9ZNkftrWUjjhFR/V7GKx 6 | GInwYSrJLwdrhsk5hiA/wq20yTR7Au02SGm1pFaRwa9M7x6CvKzNIKPcW/XTgBcG 7 | h0OJ0hgMVZv3iy93OQjFz54veZTqaoEQtaBFiKUJJwClUkrcHBpSvC+8uc6and6j 8 | lY8hnjQ87oSThukhoh9PxJOp1WljRsP7qfNDYHJdlu0daUe4LsQpQ3Ux6R1q6juO 9 | JBAWuo3cZNAU91M7mO+3AwIfXRqdl9jhCHY3j3TlscY= 10 | -----END EC PRIVATE KEY----- 11 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private_enc_aes256.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: AES-256-CBC,11F0151D49CF8ED94E4B137BF29DEB28 4 | 5 | YIUnc7FmEJPNILNbRQaDxH4G8+LF5on5CZoazBT9RHV8LycUh2W9P15+a5ADzzbi 6 | 58tYCykK6MQsZsVgKNAOJKExpasF6ON++FwGmG9sIxXA8M6bbVi4HypSwRykBOo2 7 | jMSiSdt/h96m6cDK2G3ukFL5LhvtcaIzD4lH4vhfDxglGhauMCqwPN3sG5X6J2D0 8 | KQmg+WiFlNvHqxH71qiGvYaiTGqzs6JusDvn4fbF92AwwGbqVjCwSvSOU2Qsj42L 9 | ETHNpp/ZwQrkx1++iv5jSoncw6VNmYBBEr1exG0S4c0= 10 | -----END EC PRIVATE KEY----- 11 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private_enc_aes256_gcm.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: id-aes256-GCM,A13349490CA39577E7B8F81A 4 | 5 | fuybqnRk1biUHLVcPlbj8eym0928WS3ZEta/vPhyd2JR3qsR7jT3T/6Q006x3pyK 6 | 7Kpdvg7H6AXudSkG1DNu8HeYBzBoB8J32KBDNFyXm/Y4TPLzUOefjyTr5JsranlU 7 | 4lWTfhQFQrZQIhAwvqKURPOVUz00VBtG2veXPyh0TSSKkpXstN8jIiHucNrSYd/2 8 | MLiU1hXyQPXhfPUaL6N1msaSQv1mXN5a1tiGWc60sfTxVL7rk1SL1nwP5CFTLO5f 9 | zaltg5vjNb8qypt0vlMpvo+E09eCKW1jJuCGO0Mmhw== 10 | -----END EC PRIVATE KEY----- 11 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private_enc_des3.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN EC PRIVATE KEY----- 2 | Proc-Type: 4,ENCRYPTED 3 | DEK-Info: DES-EDE3-CBC,083B758B06D2CF09 4 | 5 | Ku9Ku8bISj5basST7fBfH1IgpxzxNfgER5wMEa2JWvp41ZFVGwoaxsZWTYCDU53x 6 | KafdXfQuHr3Vms5escmUzcr1/wT780IQBHgMuBlBkGv0A4PI+2Pap5P7CnM+mx7w 7 | tTQEZdcG1H/ZPxX5comUG1c6VLQak+88BRanopX5h7DBZe6/6KvtILF1KBStWvyV 8 | OLuBvl3as0fykBkGDx52bW8JMdHD4sm7CIEibxujYkJMOBTgaGDRRGsnI75EHc0c 9 | ZYf2aYv12vlchL/XQ02MfBAmZf8O7+vb3MLXD9x5rj8= 10 | -----END EC PRIVATE KEY----- 11 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private_openssh_old.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIA49u+l3sjG+iHmzf7 3 | G9nv/DZWrzENhnrK4EJDwg9x+fbq17FENqfGI1ySe3UNI3SGWNeOSQYe8ZkHhS1w 4 | L9DBLwyhgYkDgYYABAHW+HwGZpPopiGupclPUOSpxnvb520P5PyRo1YUzVKkHCg9 5 | DUoKDlmwW1nncoG43CyDN0HXa1jl2kxog3s/5oUy+AAn8WDB4c4XWRZcRKX7n+dD 6 | QG4GQbSqkJp7X8nwZRx3seKsw820s/X1654tQu62lSHpb7BDUMaZGv6ZbVojrEZo 7 | EA== 8 | -----END PRIVATE KEY----- 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private_openssh_pwd_old.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBN+795CX3m5LhS58O 3 | EAh5r+xmWC8e+w9n4u2mZ9HLuXTi3pYai9KFBFv5BUm/pkjeOgQL5/kususONhGf 4 | Z9BGWiChgYkDgYYABAEN2bg8KqaDSqQCvZW6IDIYcEL31O/rCRFgFpPkFRPHBCjB 5 | 6TGbww5+fqHyemb4AOb+z4hUvRKExdd5f/QNWJTz0gB+tQpWnwxp6vAUnDjNk2W5 6 | Gle6VItcEm3odtI2siZP8oKN+QoDikZj2gOdh9ufyITl+JFhq8VWCqAIMN5kk+g0 7 | AA== 8 | -----END PRIVATE KEY----- 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private_p8.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private_p8.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private_p8.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN ENCRYPTED PRIVATE KEY----- 2 | MIIBXTBXBgkqhkiG9w0BBQ0wSjApBgkqhkiG9w0BBQwwHAQIS8+Mgb+OnjYCAggA 3 | MAwGCCqGSIb3DQIJBQAwHQYJYIZIAWUDBAEqBBA+zYhYHirzE96EQiC8ntJgBIIB 4 | ANmvWjAiVuyL+J5mwjWyRWhVZIt619XalbXAoFRrHMwyQP7r1wlIfe57kREdmwVq 5 | BBa1pfVqctB4yJVInl0tpfZP/jxIBkyC8+NKeHLwFtmqqt66NK2whMw2LYqksQ6b 6 | llOS3a1PhPlkD7h+LTca3euOX4nVmuzcQNcNvB9hiA75DpmxTfKdAMUCnZ02dTOU 7 | b0tv4/XbXvQpA2e99BPIFZeqydFzFqgrBkCnfOMY/bL264/MmAimeus08IRkBDYo 8 | V4iI/FIsg4S+ZQ8fYkQ7H6Rq+e+DuhAN1egJaOc2WoNF8tjpHGW54rDC9NObn+VW 9 | 5dQTMWc/YdoN/yoGfEM63VY= 10 | -----END ENCRYPTED PRIVATE KEY----- 11 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private_p8_clear.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private_p8_clear.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_private_p8_clear.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBjb18rG5GXymJC4t6 3 | zq1IKH1uUXrlseqXCGJ4MTeyxWNNRYBsyoCXHwI6Xpl/Oybq4oXcpZx1akL1D17C 4 | Rz9qygGhgYkDgYYABACDX+CQzLXL6jmhhc9ut0t/um2bUWl5CfuBYKndbZIE5yzM 5 | JKDAefP7xgorbKa0hWK0jivSpuZxqSa2v2FlQocguQHFqYEnXVXADtv+MaGY2gz2 6 | Omspyvjw2vEqsbwJgDoCQbhPbZ/HaPlDpRKunxHeRcqaEeP+C/Z6szBk2IsGeBM6 7 | yg== 8 | -----END PRIVATE KEY----- 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_public.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_public.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_public.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PUBLIC KEY----- 2 | MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAg1/gkMy1y+o5oYXPbrdLf7ptm1Fp 3 | eQn7gWCp3W2SBOcszCSgwHnz+8YKK2ymtIVitI4r0qbmcakmtr9hZUKHILkBxamB 4 | J11VwA7b/jGhmNoM9jprKcr48NrxKrG8CYA6AkG4T22fx2j5Q6USrp8R3kXKmhHj 5 | /gv2erMwZNiLBngTOso= 6 | -----END PUBLIC KEY----- 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_public_compressed.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_public_compressed.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_public_compressed.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PUBLIC KEY----- 2 | MFgwEAYHKoZIzj0CAQYFK4EEACMDRAACAINf4JDMtcvqOaGFz263S3+6bZtRaXkJ 3 | +4Fgqd1tkgTnLMwkoMB58/vGCitsprSFYrSOK9Km5nGpJra/YWVChyC5 4 | -----END PUBLIC KEY----- 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_public_openssh.txt: -------------------------------------------------------------------------------- 1 | ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA1MjEAAAAIbmlzdHA1MjEAAACFBACDX+CQzLXL6jmhhc9ut0t/um2bUWl5CfuBYKndbZIE5yzMJKDAefP7xgorbKa0hWK0jivSpuZxqSa2v2FlQocguQHFqYEnXVXADtv+MaGY2gz2Omspyvjw2vEqsbwJgDoCQbhPbZ/HaPlDpRKunxHeRcqaEeP+C/Z6szBk2IsGeBM6yg== 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_x509.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/ecc_p521_x509.der -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/openssl_version.txt: -------------------------------------------------------------------------------- 1 | OpenSSL 1.0.2e-fips 3 Dec 2015 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/openssl_version_p384.txt: -------------------------------------------------------------------------------- 1 | OpenSSL 1.1.0g 2 Nov 2017 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC/openssl_version_p521.txt: -------------------------------------------------------------------------------- 1 | OpenSSL 1.1.0g 2 Nov 2017 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/RSA/gen_rsa_2048.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set -e 4 | set -x 5 | 6 | openssl version | tee openssl_version.txt 7 | 8 | # Private key 9 | openssl genrsa -out rsa2048_private.pem 2048 10 | 11 | # OpenSSH 12 | chmod 600 rsa2048_private.pem 13 | ssh-keygen -f rsa2048_private.pem -y > rsa2048_public_openssh.txt 14 | 15 | ssh-keygen -t rsa -b 2048 -f rsa2048_private_openssh.pem -P "" 16 | cp -fa rsa2048_private_openssh.pem rsa2048_private_openssh_old.pem 17 | ssh-keygen -p -f rsa2048_private_openssh_old.pem -m PEM -N "" 18 | 19 | ssh-keygen -t rsa -b 2048 -f rsa2048_private_openssh_pwd.pem -P "password" 20 | cp -fa rsa2048_private_openssh_pwd.pem rsa2048_private_openssh_pwd_old.pem 21 | ssh-keygen -p -f rsa2048_private_openssh_pwd_old.pem -m PEM -N "" -P "password" 22 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/RSA/openssl_version.txt: -------------------------------------------------------------------------------- 1 | OpenSSL 1.1.1c FIPS 28 May 2019 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/RSA/rsa2048_public_openssh.txt: -------------------------------------------------------------------------------- 1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDN/oDpeMziyQEJ3pIG3qDwaQ7pmDqx8L7uO+uYTIRFZ2baJU9IPJY43MqmshPy1FoMdu2SGwmd9/kXQ+r+A7qUw8pyAAOf8NQBbQLwLrLyezu2Qph8ZtJ0lCj8kgDsgR5wRXklv/WnkYfBRBAjFrlAuoE1cE2ydfbu+VU1PZFnxyizzZicqX1iG+MnN0L8b15iXB74Oti1XLDnKHp+Mm9TV/HkQVthssBpJn2VjtvKojFUUIYeapqzHYxW1N07BVKUDebFeIyk3aVY9IgJtXGKigbFCJ8G4SdBdgl9ZB0YjGNa6oongvg+fgLXqq4RWOvA7umwT4MFNlLubxFYN18v 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/SelfTest/Signature/test_vectors/ECDSA/README.txt: -------------------------------------------------------------------------------- 1 | These files were downloaded from http://csrc.nist.gov/groups/STM/cavp/documents/dss/186-3ecdsatestvectors.zip 2 | on January 9, 2016 and modified to include only test data for P-256 curves (but not in combination with SHA-1 3 | or SHA-224). 4 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Signature/PKCS1_PSS.pyi: -------------------------------------------------------------------------------- 1 | from typing import Optional, Callable 2 | 3 | from Cryptodome.PublicKey.RSA import RsaKey 4 | from Cryptodome.Signature.pss import PSS_SigScheme 5 | 6 | 7 | def new(rsa_key: RsaKey, mgfunc: Optional[Callable]=None, saltLen: Optional[int]=None, randfunc: Optional[Callable]=None) -> PSS_SigScheme: ... 8 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Signature/PKCS1_v1_5.pyi: -------------------------------------------------------------------------------- 1 | from Cryptodome.PublicKey.RSA import RsaKey 2 | 3 | from Cryptodome.Signature.pkcs1_15 import PKCS115_SigScheme 4 | 5 | 6 | def new(rsa_key: RsaKey) -> PKCS115_SigScheme: ... -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Signature/pkcs1_15.pyi: -------------------------------------------------------------------------------- 1 | from types import ModuleType 2 | from typing import Optional 3 | 4 | from Cryptodome.PublicKey.RSA import RsaKey 5 | 6 | 7 | class PKCS115_SigScheme: 8 | def __init__(self, rsa_key: RsaKey) -> None: ... 9 | def can_sign(self) -> bool: ... 10 | def sign(self, msg_hash: ModuleType) -> bytes: ... 11 | def verify(self, msg_hash: ModuleType, signature: bytes) -> None: ... 12 | 13 | def _EMSA_PKCS1_V1_5_ENCODE(msg_hash: ModuleType, emLen: int, with_hash_parameters: Optional[bool]=True) -> bytes: ... 14 | 15 | def new(rsa_key: RsaKey) -> PKCS115_SigScheme: ... -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Signature/pss.pyi: -------------------------------------------------------------------------------- 1 | from types import ModuleType 2 | from typing import Union, Callable 3 | 4 | from Cryptodome.PublicKey.RSA import RsaKey 5 | 6 | 7 | class PSS_SigScheme: 8 | def __init__(self, key: RsaKey, mgfunc: Callable, saltLen: int, randfunc: Callable) -> None: ... 9 | def can_sign(self) -> bool: ... 10 | def sign(self, msg_hash: ModuleType) -> bytes: ... 11 | def verify(self, msg_hash: ModuleType, signature: bytes) -> None: ... 12 | 13 | def MGF1(mgfSeed: bytes, maskLen: int, hash_gen: ModuleType) -> bytes: ... 14 | def _EMSA_PSS_ENCODE(mhash: ModuleType, emBits: int, randFunc: Callable, mgf: Callable, sLen: int) -> str: ... 15 | def _EMSA_PSS_VERIFY(mhash: ModuleType, em: str, emBits: int, mgf: Callable, sLen: int) -> None: ... 16 | def new(rsa_key: RsaKey, **kwargs: Union[Callable, int]) -> PSS_SigScheme: ... -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Util/Counter.pyi: -------------------------------------------------------------------------------- 1 | from typing import Optional, Union, Dict 2 | 3 | def new(nbits: int, prefix: Optional[bytes]=..., suffix: Optional[bytes]=..., initial_value: Optional[int]=1, 4 | little_endian: Optional[bool]=False, allow_wraparound: Optional[bool]=False) -> \ 5 | Dict[str, Union[int, bytes, bool]]: ... 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Util/Padding.pyi: -------------------------------------------------------------------------------- 1 | from typing import Optional 2 | 3 | __all__ = [ 'pad', 'unpad' ] 4 | 5 | def pad(data_to_pad: bytes, block_size: int, style: Optional[str]='pkcs7') -> bytes: ... 6 | def unpad(padded_data: bytes, block_size: int, style: Optional[str]='pkcs7') -> bytes: ... -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Util/RFC1751.pyi: -------------------------------------------------------------------------------- 1 | from typing import Dict, List 2 | 3 | binary: Dict[int, str] 4 | wordlist: List[str] 5 | 6 | def key_to_english(key: bytes) -> str: ... 7 | def english_to_key(s: str) -> bytes: ... 8 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Util/_cpu_features.pyi: -------------------------------------------------------------------------------- 1 | def have_aes_ni() -> int: ... 2 | def have_clmul() -> int: ... 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Util/_cpuid_c.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Util/_cpuid_c.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Util/_file_system.pyi: -------------------------------------------------------------------------------- 1 | from typing import List 2 | 3 | 4 | def pycryptodome_filename(dir_comps: List[str], filename: str) -> str: ... -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Util/_strxor.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/Util/_strxor.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/Util/strxor.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Optional 2 | 3 | Buffer = Union[bytes, bytearray, memoryview] 4 | 5 | def strxor(term1: bytes, term2: bytes, output: Optional[Buffer]=...) -> bytes: ... 6 | def strxor_c(term: bytes, c: int, output: Optional[Buffer]=...) -> bytes: ... 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/__init__.py: -------------------------------------------------------------------------------- 1 | __all__ = ['Cipher', 'Hash', 'Protocol', 'PublicKey', 'Util', 'Signature', 2 | 'IO', 'Math'] 3 | 4 | version_info = (3, 9, '0') 5 | 6 | __version__ = ".".join([str(x) for x in version_info]) 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/__init__.pyi: -------------------------------------------------------------------------------- 1 | from typing import Tuple, Union 2 | 3 | version_info : Tuple[int, int, Union[int, str]] 4 | __version__ : str 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Cryptodome/py.typed: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/Cryptodome/py.typed -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Flask-1.1.1.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Flask-1.1.1.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.4) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Flask-1.1.1.dist-info/entry_points.txt: -------------------------------------------------------------------------------- 1 | [console_scripts] 2 | flask = flask.cli:main 3 | 4 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Flask-1.1.1.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | flask 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Jinja2-2.10.3.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Jinja2-2.10.3.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.6) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Jinja2-2.10.3.dist-info/entry_points.txt: -------------------------------------------------------------------------------- 1 | [babel.extractors] 2 | jinja2 = jinja2.ext:babel_extract [i18n] 3 | 4 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Jinja2-2.10.3.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | jinja2 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/MarkupSafe-1.1.1.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/MarkupSafe-1.1.1.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.1) 3 | Root-Is-Purelib: false 4 | Tag: cp37-cp37m-macosx_10_6_intel 5 | 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/MarkupSafe-1.1.1.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | markupsafe 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Werkzeug-0.16.0.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Werkzeug-0.16.0.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.6) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/Werkzeug-0.16.0.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | werkzeug 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/_pytest/__init__.py: -------------------------------------------------------------------------------- 1 | __all__ = ["__version__"] 2 | 3 | try: 4 | from ._version import version as __version__ 5 | except ImportError: 6 | # broken installation, we don't even try 7 | # unknown only works because we do poor mans version compare 8 | __version__ = "unknown" 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/_pytest/_code/__init__.py: -------------------------------------------------------------------------------- 1 | """ python inspection/code generation API """ 2 | from .code import Code # noqa 3 | from .code import ExceptionInfo # noqa 4 | from .code import filter_traceback # noqa 5 | from .code import Frame # noqa 6 | from .code import getrawcode # noqa 7 | from .code import Traceback # noqa 8 | from .source import compile_ as compile # noqa 9 | from .source import getfslineno # noqa 10 | from .source import Source # noqa 11 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/_pytest/_io/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/_pytest/_io/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/_pytest/_version.py: -------------------------------------------------------------------------------- 1 | # coding: utf-8 2 | # file generated by setuptools_scm 3 | # don't change, don't track in version control 4 | version = '5.1.2' 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/_pytest/config/exceptions.py: -------------------------------------------------------------------------------- 1 | class UsageError(Exception): 2 | """ error in pytest usage or invocation""" 3 | 4 | 5 | class PrintHelp(Exception): 6 | """Raised when pytest should print it's help to skip the rest of the 7 | argument parsing and validation.""" 8 | 9 | pass 10 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/atomicwrites-1.3.0.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/atomicwrites-1.3.0.dist-info/RECORD: -------------------------------------------------------------------------------- 1 | atomicwrites-1.3.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 2 | atomicwrites-1.3.0.dist-info/METADATA,sha256=T9BgDww1IuYBG4de40vAgvpSbNBrRtNjTBNcukt1HZU,5535 3 | atomicwrites-1.3.0.dist-info/RECORD,, 4 | atomicwrites-1.3.0.dist-info/WHEEL,sha256=gduuPyBvFJQSQ0zdyxF7k0zynDXbIbvg5ZBHoXum5uk,110 5 | atomicwrites-1.3.0.dist-info/top_level.txt,sha256=ks64zKVUkrl2ZrrP046CsytXlSGf8gLG-IcoXpNyeoc,13 6 | atomicwrites/__init__.py,sha256=00DapdQb04-k79KZjzzfwnI1Q8nfsiF5TPeVcqbGVw0,6562 7 | atomicwrites/__pycache__/__init__.cpython-37.pyc,, 8 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/atomicwrites-1.3.0.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.31.1) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/atomicwrites-1.3.0.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | atomicwrites 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/attr/_config.py: -------------------------------------------------------------------------------- 1 | from __future__ import absolute_import, division, print_function 2 | 3 | 4 | __all__ = ["set_run_validators", "get_run_validators"] 5 | 6 | _run_validators = True 7 | 8 | 9 | def set_run_validators(run): 10 | """ 11 | Set whether or not validators are run. By default, they are run. 12 | """ 13 | if not isinstance(run, bool): 14 | raise TypeError("'run' must be bool.") 15 | global _run_validators 16 | _run_validators = run 17 | 18 | 19 | def get_run_validators(): 20 | """ 21 | Return whether or not validators are run. 22 | """ 23 | return _run_validators 24 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/attr/_version.pyi: -------------------------------------------------------------------------------- 1 | class VersionInfo: 2 | @property 3 | def year(self) -> int: ... 4 | @property 5 | def minor(self) -> int: ... 6 | @property 7 | def micro(self) -> int: ... 8 | @property 9 | def releaselevel(self) -> str: ... 10 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/attr/converters.pyi: -------------------------------------------------------------------------------- 1 | from typing import TypeVar, Optional, Callable, overload 2 | from . import _ConverterType 3 | 4 | _T = TypeVar("_T") 5 | 6 | def optional( 7 | converter: _ConverterType[_T] 8 | ) -> _ConverterType[Optional[_T]]: ... 9 | @overload 10 | def default_if_none(default: _T) -> _ConverterType[_T]: ... 11 | @overload 12 | def default_if_none(*, factory: Callable[[], _T]) -> _ConverterType[_T]: ... 13 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/attr/exceptions.pyi: -------------------------------------------------------------------------------- 1 | from typing import Any 2 | 3 | class FrozenInstanceError(AttributeError): 4 | msg: str = ... 5 | 6 | class AttrsAttributeNotFoundError(ValueError): ... 7 | class NotAnAttrsClassError(ValueError): ... 8 | class DefaultAlreadySetError(RuntimeError): ... 9 | class UnannotatedAttributeError(RuntimeError): ... 10 | class PythonTooOldError(RuntimeError): ... 11 | 12 | class NotCallableError(TypeError): 13 | msg: str = ... 14 | value: Any = ... 15 | def __init__(self, msg: str, value: Any) -> None: ... 16 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/attr/filters.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union, Any 2 | from . import Attribute, _FilterType 3 | 4 | def include(*what: Union[type, Attribute[Any]]) -> _FilterType[Any]: ... 5 | def exclude(*what: Union[type, Attribute[Any]]) -> _FilterType[Any]: ... 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/attr/py.typed: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/attr/py.typed -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/attrs-19.2.0.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/attrs-19.2.0.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.6) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/attrs-19.2.0.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | attr 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/certifi-2019.9.11.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/certifi-2019.9.11.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.30.0.a0) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/certifi-2019.9.11.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | certifi 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/certifi/__init__.py: -------------------------------------------------------------------------------- 1 | from .core import where 2 | 3 | __version__ = "2019.09.11" 4 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/certifi/__main__.py: -------------------------------------------------------------------------------- 1 | from certifi import where 2 | print(where()) 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/certifi/core.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | 3 | """ 4 | certifi.py 5 | ~~~~~~~~~~ 6 | 7 | This module returns the installation location of cacert.pem. 8 | """ 9 | import os 10 | 11 | 12 | def where(): 13 | f = os.path.dirname(__file__) 14 | 15 | return os.path.join(f, 'cacert.pem') 16 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/chardet-3.0.4.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/chardet-3.0.4.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.29.0) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/chardet-3.0.4.dist-info/entry_points.txt: -------------------------------------------------------------------------------- 1 | [console_scripts] 2 | chardetect = chardet.cli.chardetect:main 3 | 4 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/chardet-3.0.4.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | chardet 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/chardet/cli/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/chardet/version.py: -------------------------------------------------------------------------------- 1 | """ 2 | This module exists only to simplify retrieving the version number of chardet 3 | from within setup.py and from chardet subpackages. 4 | 5 | :author: Dan Blanchard (dan.blanchard@gmail.com) 6 | """ 7 | 8 | __version__ = "3.0.4" 9 | VERSION = __version__.split('.') 10 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/easy_install.py: -------------------------------------------------------------------------------- 1 | """Run the EasyInstall command""" 2 | 3 | if __name__ == '__main__': 4 | from setuptools.command.easy_install import main 5 | main() 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/flask/__main__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | """ 3 | flask.__main__ 4 | ~~~~~~~~~~~~~~ 5 | 6 | Alias for flask.run for the command line. 7 | 8 | :copyright: 2010 Pallets 9 | :license: BSD-3-Clause 10 | """ 11 | 12 | if __name__ == "__main__": 13 | from .cli import main 14 | 15 | main(as_module=True) 16 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/idna-2.8.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/idna-2.8.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.32.2) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/idna-2.8.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | idna 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/idna/__init__.py: -------------------------------------------------------------------------------- 1 | from .package_data import __version__ 2 | from .core import * 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/idna/compat.py: -------------------------------------------------------------------------------- 1 | from .core import * 2 | from .codec import * 3 | 4 | def ToASCII(label): 5 | return encode(label) 6 | 7 | def ToUnicode(label): 8 | return decode(label) 9 | 10 | def nameprep(s): 11 | raise NotImplementedError("IDNA 2008 does not utilise nameprep protocol") 12 | 13 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/idna/package_data.py: -------------------------------------------------------------------------------- 1 | __version__ = '2.8' 2 | 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/importlib_metadata-0.23.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/importlib_metadata-0.23.dist-info/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2017-2019 Jason R. Coombs, Barry Warsaw 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/importlib_metadata-0.23.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.6) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/importlib_metadata-0.23.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | importlib_metadata 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/importlib_metadata/docs/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/importlib_metadata/docs/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/importlib_metadata/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/importlib_metadata/tests/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/importlib_metadata/tests/data/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/importlib_metadata/tests/data/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/importlib_metadata/tests/data/example-21.12-py3-none-any.whl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/importlib_metadata/tests/data/example-21.12-py3-none-any.whl -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/importlib_metadata/tests/data/example-21.12-py3.6.egg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/importlib_metadata/tests/data/example-21.12-py3.6.egg -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/importlib_metadata/tests/test_integration.py: -------------------------------------------------------------------------------- 1 | import unittest 2 | import packaging.requirements 3 | import packaging.version 4 | 5 | from . import fixtures 6 | from .. import version 7 | 8 | 9 | class IntegrationTests(fixtures.DistInfoPkg, unittest.TestCase): 10 | 11 | def test_package_spec_installed(self): 12 | """ 13 | Illustrate the recommended procedure to determine if 14 | a specified version of a package is installed. 15 | """ 16 | def is_installed(package_spec): 17 | req = packaging.requirements.Requirement(package_spec) 18 | return version(req.name) in req.specifier 19 | 20 | assert is_installed('distinfo-pkg==1.0') 21 | assert is_installed('distinfo-pkg>=1.0,<2.0') 22 | assert not is_installed('distinfo-pkg<1.0') 23 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/itsdangerous-1.1.0.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/itsdangerous-1.1.0.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.32.2) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/itsdangerous-1.1.0.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | itsdangerous 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/itsdangerous/__init__.py: -------------------------------------------------------------------------------- 1 | from ._json import json 2 | from .encoding import base64_decode 3 | from .encoding import base64_encode 4 | from .encoding import want_bytes 5 | from .exc import BadData 6 | from .exc import BadHeader 7 | from .exc import BadPayload 8 | from .exc import BadSignature 9 | from .exc import BadTimeSignature 10 | from .exc import SignatureExpired 11 | from .jws import JSONWebSignatureSerializer 12 | from .jws import TimedJSONWebSignatureSerializer 13 | from .serializer import Serializer 14 | from .signer import HMACAlgorithm 15 | from .signer import NoneAlgorithm 16 | from .signer import Signer 17 | from .timed import TimedSerializer 18 | from .timed import TimestampSigner 19 | from .url_safe import URLSafeSerializer 20 | from .url_safe import URLSafeTimedSerializer 21 | 22 | __version__ = "1.1.0" 23 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/itsdangerous/_json.py: -------------------------------------------------------------------------------- 1 | try: 2 | import simplejson as json 3 | except ImportError: 4 | import json 5 | 6 | 7 | class _CompactJSON(object): 8 | """Wrapper around json module that strips whitespace.""" 9 | 10 | @staticmethod 11 | def loads(payload): 12 | return json.loads(payload) 13 | 14 | @staticmethod 15 | def dumps(obj, **kwargs): 16 | kwargs.setdefault("ensure_ascii", False) 17 | kwargs.setdefault("separators", (",", ":")) 18 | return json.dumps(obj, **kwargs) 19 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/jinja2/_identifier.py: -------------------------------------------------------------------------------- 1 | # generated by scripts/generate_identifier_pattern.py 2 | pattern = '·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-ٰٟۖ-ۜ۟-۪ۤۧۨ-ܑۭܰ-݊ަ-ް߫-߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛ࣔ-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣঁ-ঃ়া-ৄেৈো-্ৗৢৣਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑੰੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣଁ-ଃ଼ା-ୄେୈୋ-୍ୖୗୢୣஂா-ூெ-ைொ-்ௗఀ-ఃా-ౄె-ైొ-్ౕౖౢౣಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣഁ-ഃാ-ൄെ-ൈൊ-്ൗൢൣංඃ්ා-ුූෘ-ෟෲෳัิ-ฺ็-๎ັິ-ູົຼ່-ໍ༹༘༙༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏႚ-ႝ፝-፟ᜒ-᜔ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝᠋-᠍ᢅᢆᢩᤠ-ᤫᤰ-᤻ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼᪰-᪽ᬀ-ᬄ᬴-᭄᭫-᭳ᮀ-ᮂᮡ-ᮭ᯦-᯳ᰤ-᰷᳐-᳔᳒-᳨᳭ᳲ-᳴᳸᳹᷀-᷵᷻-᷿‿⁀⁔⃐-⃥⃜⃡-⃰℘℮⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧꢀꢁꢴ-ꣅ꣠-꣱ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀ꧥꨩ-ꨶꩃꩌꩍꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭ﬞ︀-️︠-︯︳︴﹍-﹏_𐇽𐋠𐍶-𐍺𐨁-𐨃𐨅𐨆𐨌-𐨏𐨸-𐨿𐨺𐫦𐫥𑀀-𑀂𑀸-𑁆𑁿-𑂂𑂰-𑂺𑄀-𑄂𑄧-𑅳𑄴𑆀-𑆂𑆳-𑇊𑇀-𑇌𑈬-𑈷𑈾𑋟-𑋪𑌀-𑌃𑌼𑌾-𑍄𑍇𑍈𑍋-𑍍𑍗𑍢𑍣𑍦-𑍬𑍰-𑍴𑐵-𑑆𑒰-𑓃𑖯-𑖵𑖸-𑗀𑗜𑗝𑘰-𑙀𑚫-𑚷𑜝-𑜫𑰯-𑰶𑰸-𑰿𑲒-𑲧𑲩-𑲶𖫰-𖫴𖬰-𖬶𖽑-𖽾𖾏-𖾒𛲝𛲞𝅥-𝅩𝅭-𝅲𝅻-𝆂𝆅-𝆋𝆪-𝆭𝉂-𝉄𝨀-𝨶𝨻-𝩬𝩵𝪄𝪛-𝪟𝪡-𝪯𞀀-𞀆𞀈-𞀘𞀛-𞀡𞀣𞀤𞀦-𞣐𞀪-𞣖𞥄-𞥊󠄀-󠇯' 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/markupsafe/_compat.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | """ 3 | markupsafe._compat 4 | ~~~~~~~~~~~~~~~~~~ 5 | 6 | :copyright: 2010 Pallets 7 | :license: BSD-3-Clause 8 | """ 9 | import sys 10 | 11 | PY2 = sys.version_info[0] == 2 12 | 13 | if not PY2: 14 | text_type = str 15 | string_types = (str,) 16 | unichr = chr 17 | int_types = (int,) 18 | 19 | def iteritems(x): 20 | return iter(x.items()) 21 | 22 | from collections.abc import Mapping 23 | 24 | else: 25 | text_type = unicode 26 | string_types = (str, unicode) 27 | unichr = unichr 28 | int_types = (int, long) 29 | 30 | def iteritems(x): 31 | return x.iteritems() 32 | 33 | from collections import Mapping 34 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/markupsafe/_speedups.cpython-37m-darwin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/markupsafe/_speedups.cpython-37m-darwin.so -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/more_itertools-7.2.0.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/more_itertools-7.2.0.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.4) 3 | Root-Is-Purelib: true 4 | Tag: py3-none-any 5 | 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/more_itertools-7.2.0.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | more_itertools 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/more_itertools/__init__.py: -------------------------------------------------------------------------------- 1 | from more_itertools.more import * # noqa 2 | from more_itertools.recipes import * # noqa 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/more_itertools/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/more_itertools/tests/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/packaging-19.2.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/packaging-19.2.dist-info/LICENSE: -------------------------------------------------------------------------------- 1 | This software is made available under the terms of *either* of the licenses 2 | found in LICENSE.APACHE or LICENSE.BSD. Contributions to this software is made 3 | under the terms of *both* these licenses. 4 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/packaging-19.2.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.6) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/packaging-19.2.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | packaging 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/packaging/__init__.py: -------------------------------------------------------------------------------- 1 | # This file is dual licensed under the terms of the Apache License, Version 2 | # 2.0, and the BSD License. See the LICENSE file in the root of this repository 3 | # for complete details. 4 | from __future__ import absolute_import, division, print_function 5 | 6 | from .__about__ import ( 7 | __author__, 8 | __copyright__, 9 | __email__, 10 | __license__, 11 | __summary__, 12 | __title__, 13 | __uri__, 14 | __version__, 15 | ) 16 | 17 | __all__ = [ 18 | "__title__", 19 | "__summary__", 20 | "__uri__", 21 | "__version__", 22 | "__author__", 23 | "__email__", 24 | "__license__", 25 | "__copyright__", 26 | ] 27 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip-19.0.3.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip-19.0.3.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.1) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip-19.0.3.dist-info/entry_points.txt: -------------------------------------------------------------------------------- 1 | [console_scripts] 2 | pip = pip._internal:main 3 | pip3 = pip._internal:main 4 | pip3.7 = pip._internal:main 5 | 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip-19.0.3.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/__init__.py: -------------------------------------------------------------------------------- 1 | __version__ = "19.0.3" 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/__main__.py: -------------------------------------------------------------------------------- 1 | from __future__ import absolute_import 2 | 3 | import os 4 | import sys 5 | 6 | # If we are running from a wheel, add the wheel to sys.path 7 | # This allows the usage python pip-*.whl/pip install pip-*.whl 8 | if __package__ == '': 9 | # __file__ is pip-*.whl/pip/__main__.py 10 | # first dirname call strips of '/__main__.py', second strips off '/pip' 11 | # Resulting path is the name of the wheel itself 12 | # Add that to sys.path so we can import pip 13 | path = os.path.dirname(os.path.dirname(__file__)) 14 | sys.path.insert(0, path) 15 | 16 | from pip._internal import main as _main # isort:skip # noqa 17 | 18 | if __name__ == '__main__': 19 | sys.exit(_main()) 20 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_internal/cli/__init__.py: -------------------------------------------------------------------------------- 1 | """Subpackage containing all of pip's command line interface related code 2 | """ 3 | 4 | # This file intentionally does not import submodules 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_internal/cli/status_codes.py: -------------------------------------------------------------------------------- 1 | from __future__ import absolute_import 2 | 3 | SUCCESS = 0 4 | ERROR = 1 5 | UNKNOWN_ERROR = 2 6 | VIRTUALENV_NOT_FOUND = 3 7 | PREVIOUS_BUILD_DIR_ERROR = 4 8 | NO_MATCHES_FOUND = 23 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_internal/models/__init__.py: -------------------------------------------------------------------------------- 1 | """A package that contains models that represent entities. 2 | """ 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_internal/operations/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pip/_internal/operations/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_internal/utils/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pip/_internal/utils/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_internal/utils/setuptools_build.py: -------------------------------------------------------------------------------- 1 | # Shim to wrap setup.py invocation with setuptools 2 | SETUPTOOLS_SHIM = ( 3 | "import setuptools, tokenize;__file__=%r;" 4 | "f=getattr(tokenize, 'open', open)(__file__);" 5 | "code=f.read().replace('\\r\\n', '\\n');" 6 | "f.close();" 7 | "exec(compile(code, __file__, 'exec'))" 8 | ) 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/cachecontrol/__init__.py: -------------------------------------------------------------------------------- 1 | """CacheControl import Interface. 2 | 3 | Make it easy to import from cachecontrol without long namespaces. 4 | """ 5 | __author__ = "Eric Larson" 6 | __email__ = "eric@ionrock.org" 7 | __version__ = "0.12.5" 8 | 9 | from .wrapper import CacheControl 10 | from .adapter import CacheControlAdapter 11 | from .controller import CacheController 12 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/cachecontrol/caches/__init__.py: -------------------------------------------------------------------------------- 1 | from .file_cache import FileCache # noqa 2 | from .redis_cache import RedisCache # noqa 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/cachecontrol/compat.py: -------------------------------------------------------------------------------- 1 | try: 2 | from urllib.parse import urljoin 3 | except ImportError: 4 | from urlparse import urljoin 5 | 6 | 7 | try: 8 | import cPickle as pickle 9 | except ImportError: 10 | import pickle 11 | 12 | 13 | # Handle the case where the requests module has been patched to not have 14 | # urllib3 bundled as part of its source. 15 | try: 16 | from pip._vendor.requests.packages.urllib3.response import HTTPResponse 17 | except ImportError: 18 | from pip._vendor.urllib3.response import HTTPResponse 19 | 20 | try: 21 | from pip._vendor.requests.packages.urllib3.util import is_fp_closed 22 | except ImportError: 23 | from pip._vendor.urllib3.util import is_fp_closed 24 | 25 | # Replicate some six behaviour 26 | try: 27 | text_type = unicode 28 | except NameError: 29 | text_type = str 30 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/cachecontrol/wrapper.py: -------------------------------------------------------------------------------- 1 | from .adapter import CacheControlAdapter 2 | from .cache import DictCache 3 | 4 | 5 | def CacheControl( 6 | sess, 7 | cache=None, 8 | cache_etags=True, 9 | serializer=None, 10 | heuristic=None, 11 | controller_class=None, 12 | adapter_class=None, 13 | cacheable_methods=None, 14 | ): 15 | 16 | cache = cache or DictCache() 17 | adapter_class = adapter_class or CacheControlAdapter 18 | adapter = adapter_class( 19 | cache, 20 | cache_etags=cache_etags, 21 | serializer=serializer, 22 | heuristic=heuristic, 23 | controller_class=controller_class, 24 | cacheable_methods=cacheable_methods, 25 | ) 26 | sess.mount("http://", adapter) 27 | sess.mount("https://", adapter) 28 | 29 | return sess 30 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/certifi/__init__.py: -------------------------------------------------------------------------------- 1 | from .core import where 2 | 3 | __version__ = "2018.11.29" 4 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/certifi/__main__.py: -------------------------------------------------------------------------------- 1 | from pip._vendor.certifi import where 2 | print(where()) 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/certifi/core.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # -*- coding: utf-8 -*- 3 | 4 | """ 5 | certifi.py 6 | ~~~~~~~~~~ 7 | 8 | This module returns the installation location of cacert.pem. 9 | """ 10 | import os 11 | 12 | 13 | def where(): 14 | f = os.path.dirname(__file__) 15 | 16 | return os.path.join(f, 'cacert.pem') 17 | 18 | 19 | if __name__ == '__main__': 20 | print(where()) 21 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/chardet/cli/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/chardet/version.py: -------------------------------------------------------------------------------- 1 | """ 2 | This module exists only to simplify retrieving the version number of chardet 3 | from within setup.py and from chardet subpackages. 4 | 5 | :author: Dan Blanchard (dan.blanchard@gmail.com) 6 | """ 7 | 8 | __version__ = "3.0.4" 9 | VERSION = __version__.split('.') 10 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/colorama/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright Jonathan Hartley 2013. BSD 3-Clause license, see LICENSE file. 2 | from .initialise import init, deinit, reinit, colorama_text 3 | from .ansi import Fore, Back, Style, Cursor 4 | from .ansitowin32 import AnsiToWin32 5 | 6 | __version__ = '0.4.1' 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/distlib/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # 3 | # Copyright (C) 2012-2017 Vinay Sajip. 4 | # Licensed to the Python Software Foundation under a contributor agreement. 5 | # See LICENSE.txt and CONTRIBUTORS.txt. 6 | # 7 | import logging 8 | 9 | __version__ = '0.2.8' 10 | 11 | class DistlibException(Exception): 12 | pass 13 | 14 | try: 15 | from logging import NullHandler 16 | except ImportError: # pragma: no cover 17 | class NullHandler(logging.Handler): 18 | def handle(self, record): pass 19 | def emit(self, record): pass 20 | def createLock(self): self.lock = None 21 | 22 | logger = logging.getLogger(__name__) 23 | logger.addHandler(NullHandler()) 24 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/distlib/_backport/__init__.py: -------------------------------------------------------------------------------- 1 | """Modules copied from Python 3 standard libraries, for internal use only. 2 | 3 | Individual classes and functions are found in d2._backport.misc. Intended 4 | usage is to always import things missing from 3.1 from that module: the 5 | built-in/stdlib objects will be used if found. 6 | """ 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/distlib/t32.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pip/_vendor/distlib/t32.exe -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/distlib/t64.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pip/_vendor/distlib/t64.exe -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/distlib/w32.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pip/_vendor/distlib/w32.exe -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/distlib/w64.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pip/_vendor/distlib/w64.exe -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/html5lib/_trie/__init__.py: -------------------------------------------------------------------------------- 1 | from __future__ import absolute_import, division, unicode_literals 2 | 3 | from .py import Trie as PyTrie 4 | 5 | Trie = PyTrie 6 | 7 | # pylint:disable=wrong-import-position 8 | try: 9 | from .datrie import Trie as DATrie 10 | except ImportError: 11 | pass 12 | else: 13 | Trie = DATrie 14 | # pylint:enable=wrong-import-position 15 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/html5lib/filters/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pip/_vendor/html5lib/filters/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/html5lib/filters/base.py: -------------------------------------------------------------------------------- 1 | from __future__ import absolute_import, division, unicode_literals 2 | 3 | 4 | class Filter(object): 5 | def __init__(self, source): 6 | self.source = source 7 | 8 | def __iter__(self): 9 | return iter(self.source) 10 | 11 | def __getattr__(self, name): 12 | return getattr(self.source, name) 13 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/html5lib/treeadapters/__init__.py: -------------------------------------------------------------------------------- 1 | """Tree adapters let you convert from one tree structure to another 2 | 3 | Example: 4 | 5 | .. code-block:: python 6 | 7 | from pip._vendor import html5lib 8 | from pip._vendor.html5lib.treeadapters import genshi 9 | 10 | doc = 'Hi!' 11 | treebuilder = html5lib.getTreeBuilder('etree') 12 | parser = html5lib.HTMLParser(tree=treebuilder) 13 | tree = parser.parse(doc) 14 | TreeWalker = html5lib.getTreeWalker('etree') 15 | 16 | genshi_tree = genshi.to_genshi(TreeWalker(tree)) 17 | 18 | """ 19 | from __future__ import absolute_import, division, unicode_literals 20 | 21 | from . import sax 22 | 23 | __all__ = ["sax"] 24 | 25 | try: 26 | from . import genshi # noqa 27 | except ImportError: 28 | pass 29 | else: 30 | __all__.append("genshi") 31 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/idna/__init__.py: -------------------------------------------------------------------------------- 1 | from .package_data import __version__ 2 | from .core import * 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/idna/compat.py: -------------------------------------------------------------------------------- 1 | from .core import * 2 | from .codec import * 3 | 4 | def ToASCII(label): 5 | return encode(label) 6 | 7 | def ToUnicode(label): 8 | return decode(label) 9 | 10 | def nameprep(s): 11 | raise NotImplementedError("IDNA 2008 does not utilise nameprep protocol") 12 | 13 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/idna/package_data.py: -------------------------------------------------------------------------------- 1 | __version__ = '2.8' 2 | 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/msgpack/_version.py: -------------------------------------------------------------------------------- 1 | version = (0, 5, 6) 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/packaging/__init__.py: -------------------------------------------------------------------------------- 1 | # This file is dual licensed under the terms of the Apache License, Version 2 | # 2.0, and the BSD License. See the LICENSE file in the root of this repository 3 | # for complete details. 4 | from __future__ import absolute_import, division, print_function 5 | 6 | from .__about__ import ( 7 | __author__, 8 | __copyright__, 9 | __email__, 10 | __license__, 11 | __summary__, 12 | __title__, 13 | __uri__, 14 | __version__, 15 | ) 16 | 17 | __all__ = [ 18 | "__title__", 19 | "__summary__", 20 | "__uri__", 21 | "__version__", 22 | "__author__", 23 | "__email__", 24 | "__license__", 25 | "__copyright__", 26 | ] 27 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/pep517/__init__.py: -------------------------------------------------------------------------------- 1 | """Wrappers to build Python packages using PEP 517 hooks 2 | """ 3 | 4 | __version__ = '0.5.0' 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/pep517/compat.py: -------------------------------------------------------------------------------- 1 | """Handle reading and writing JSON in UTF-8, on Python 3 and 2.""" 2 | import json 3 | import sys 4 | 5 | if sys.version_info[0] >= 3: 6 | # Python 3 7 | def write_json(obj, path, **kwargs): 8 | with open(path, 'w', encoding='utf-8') as f: 9 | json.dump(obj, f, **kwargs) 10 | 11 | def read_json(path): 12 | with open(path, 'r', encoding='utf-8') as f: 13 | return json.load(f) 14 | 15 | else: 16 | # Python 2 17 | def write_json(obj, path, **kwargs): 18 | with open(path, 'wb') as f: 19 | json.dump(obj, f, encoding='utf-8', **kwargs) 20 | 21 | def read_json(path): 22 | with open(path, 'rb') as f: 23 | return json.load(f) 24 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/pkg_resources/py31compat.py: -------------------------------------------------------------------------------- 1 | import os 2 | import errno 3 | import sys 4 | 5 | from pip._vendor import six 6 | 7 | 8 | def _makedirs_31(path, exist_ok=False): 9 | try: 10 | os.makedirs(path) 11 | except OSError as exc: 12 | if not exist_ok or exc.errno != errno.EEXIST: 13 | raise 14 | 15 | 16 | # rely on compatibility behavior until mode considerations 17 | # and exists_ok considerations are disentangled. 18 | # See https://github.com/pypa/setuptools/pull/1083#issuecomment-315168663 19 | needs_makedirs = ( 20 | six.PY2 or 21 | (3, 4) <= sys.version_info < (3, 4, 1) 22 | ) 23 | makedirs = _makedirs_31 if needs_makedirs else os.makedirs 24 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/pytoml/__init__.py: -------------------------------------------------------------------------------- 1 | from .core import TomlError 2 | from .parser import load, loads 3 | from .test import translate_to_test 4 | from .writer import dump, dumps -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/pytoml/core.py: -------------------------------------------------------------------------------- 1 | class TomlError(RuntimeError): 2 | def __init__(self, message, line, col, filename): 3 | RuntimeError.__init__(self, message, line, col, filename) 4 | self.message = message 5 | self.line = line 6 | self.col = col 7 | self.filename = filename 8 | 9 | def __str__(self): 10 | return '{}({}, {}): {}'.format(self.filename, self.line, self.col, self.message) 11 | 12 | def __repr__(self): 13 | return 'TomlError({!r}, {!r}, {!r}, {!r})'.format(self.message, self.line, self.col, self.filename) 14 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/requests/__version__.py: -------------------------------------------------------------------------------- 1 | # .-. .-. .-. . . .-. .-. .-. .-. 2 | # |( |- |.| | | |- `-. | `-. 3 | # ' ' `-' `-`.`-' `-' `-' ' `-' 4 | 5 | __title__ = 'requests' 6 | __description__ = 'Python HTTP for Humans.' 7 | __url__ = 'http://python-requests.org' 8 | __version__ = '2.21.0' 9 | __build__ = 0x022100 10 | __author__ = 'Kenneth Reitz' 11 | __author_email__ = 'me@kennethreitz.org' 12 | __license__ = 'Apache 2.0' 13 | __copyright__ = 'Copyright 2018 Kenneth Reitz' 14 | __cake__ = u'\u2728 \U0001f370 \u2728' 15 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/requests/certs.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # -*- coding: utf-8 -*- 3 | 4 | """ 5 | requests.certs 6 | ~~~~~~~~~~~~~~ 7 | 8 | This module returns the preferred default CA certificate bundle. There is 9 | only one — the one from the certifi package. 10 | 11 | If you are packaging Requests, e.g., for a Linux distribution or a managed 12 | environment, you can change the definition of where() to return a separately 13 | packaged CA bundle. 14 | """ 15 | from pip._vendor.certifi import where 16 | 17 | if __name__ == '__main__': 18 | print(where()) 19 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/requests/packages.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | # This code exists for backwards compatibility reasons. 4 | # I don't like it either. Just look the other way. :) 5 | 6 | for package in ('urllib3', 'idna', 'chardet'): 7 | vendored_package = "pip._vendor." + package 8 | locals()[package] = __import__(vendored_package) 9 | # This traversal is apparently necessary such that the identities are 10 | # preserved (requests.packages.urllib3.* is urllib3.*) 11 | for mod in list(sys.modules): 12 | if mod == vendored_package or mod.startswith(vendored_package + '.'): 13 | unprefixed_mod = mod[len("pip._vendor."):] 14 | sys.modules['pip._vendor.requests.packages.' + unprefixed_mod] = sys.modules[mod] 15 | 16 | # Kinda cool, though, right? 17 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/urllib3/contrib/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pip/_vendor/urllib3/contrib/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/urllib3/packages/__init__.py: -------------------------------------------------------------------------------- 1 | from __future__ import absolute_import 2 | 3 | from . import ssl_match_hostname 4 | 5 | __all__ = ('ssl_match_hostname', ) 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/urllib3/packages/ssl_match_hostname/__init__.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | try: 4 | # Our match_hostname function is the same as 3.5's, so we only want to 5 | # import the match_hostname function if it's at least that good. 6 | if sys.version_info < (3, 5): 7 | raise ImportError("Fallback to vendored code") 8 | 9 | from ssl import CertificateError, match_hostname 10 | except ImportError: 11 | try: 12 | # Backport of the function from a pypi module 13 | from backports.ssl_match_hostname import CertificateError, match_hostname 14 | except ImportError: 15 | # Our vendored copy 16 | from ._implementation import CertificateError, match_hostname 17 | 18 | # Not needed, but documenting what we provide. 19 | __all__ = ('CertificateError', 'match_hostname') 20 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pip/_vendor/urllib3/util/queue.py: -------------------------------------------------------------------------------- 1 | import collections 2 | from ..packages import six 3 | from ..packages.six.moves import queue 4 | 5 | if six.PY2: 6 | # Queue is imported for side effects on MS Windows. See issue #229. 7 | import Queue as _unused_module_Queue # noqa: F401 8 | 9 | 10 | class LifoQueue(queue.Queue): 11 | def _init(self, _): 12 | self.queue = collections.deque() 13 | 14 | def _qsize(self, len=len): 15 | return len(self.queue) 16 | 17 | def _put(self, item): 18 | self.queue.append(item) 19 | 20 | def _get(self): 21 | return self.queue.pop() 22 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pkg_resources/_vendor/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pkg_resources/_vendor/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pkg_resources/_vendor/packaging/__about__.py: -------------------------------------------------------------------------------- 1 | # This file is dual licensed under the terms of the Apache License, Version 2 | # 2.0, and the BSD License. See the LICENSE file in the root of this repository 3 | # for complete details. 4 | from __future__ import absolute_import, division, print_function 5 | 6 | __all__ = [ 7 | "__title__", "__summary__", "__uri__", "__version__", "__author__", 8 | "__email__", "__license__", "__copyright__", 9 | ] 10 | 11 | __title__ = "packaging" 12 | __summary__ = "Core utilities for Python packages" 13 | __uri__ = "https://github.com/pypa/packaging" 14 | 15 | __version__ = "16.8" 16 | 17 | __author__ = "Donald Stufft and individual contributors" 18 | __email__ = "donald@stufft.io" 19 | 20 | __license__ = "BSD or Apache License, Version 2.0" 21 | __copyright__ = "Copyright 2014-2016 %s" % __author__ 22 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pkg_resources/_vendor/packaging/__init__.py: -------------------------------------------------------------------------------- 1 | # This file is dual licensed under the terms of the Apache License, Version 2 | # 2.0, and the BSD License. See the LICENSE file in the root of this repository 3 | # for complete details. 4 | from __future__ import absolute_import, division, print_function 5 | 6 | from .__about__ import ( 7 | __author__, __copyright__, __email__, __license__, __summary__, __title__, 8 | __uri__, __version__ 9 | ) 10 | 11 | __all__ = [ 12 | "__title__", "__summary__", "__uri__", "__version__", "__author__", 13 | "__email__", "__license__", "__copyright__", 14 | ] 15 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pkg_resources/_vendor/packaging/utils.py: -------------------------------------------------------------------------------- 1 | # This file is dual licensed under the terms of the Apache License, Version 2 | # 2.0, and the BSD License. See the LICENSE file in the root of this repository 3 | # for complete details. 4 | from __future__ import absolute_import, division, print_function 5 | 6 | import re 7 | 8 | 9 | _canonicalize_regex = re.compile(r"[-_.]+") 10 | 11 | 12 | def canonicalize_name(name): 13 | # This is taken from PEP 503. 14 | return _canonicalize_regex.sub("-", name).lower() 15 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pkg_resources/py31compat.py: -------------------------------------------------------------------------------- 1 | import os 2 | import errno 3 | import sys 4 | 5 | from .extern import six 6 | 7 | 8 | def _makedirs_31(path, exist_ok=False): 9 | try: 10 | os.makedirs(path) 11 | except OSError as exc: 12 | if not exist_ok or exc.errno != errno.EEXIST: 13 | raise 14 | 15 | 16 | # rely on compatibility behavior until mode considerations 17 | # and exists_ok considerations are disentangled. 18 | # See https://github.com/pypa/setuptools/pull/1083#issuecomment-315168663 19 | needs_makedirs = ( 20 | six.PY2 or 21 | (3, 4) <= sys.version_info < (3, 4, 1) 22 | ) 23 | makedirs = _makedirs_31 if needs_makedirs else os.makedirs 24 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pluggy-0.13.0.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pluggy-0.13.0.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.6) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pluggy-0.13.0.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | pluggy 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pluggy/__init__.py: -------------------------------------------------------------------------------- 1 | try: 2 | from ._version import version as __version__ 3 | except ImportError: 4 | # broken installation, we don't even try 5 | # unknown only works because we do poor mans version compare 6 | __version__ = "unknown" 7 | 8 | __all__ = [ 9 | "PluginManager", 10 | "PluginValidationError", 11 | "HookCallError", 12 | "HookspecMarker", 13 | "HookimplMarker", 14 | ] 15 | 16 | from .manager import PluginManager, PluginValidationError 17 | from .callers import HookCallError 18 | from .hooks import HookspecMarker, HookimplMarker 19 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pluggy/_version.py: -------------------------------------------------------------------------------- 1 | # coding: utf-8 2 | # file generated by setuptools_scm 3 | # don't change, don't track in version control 4 | version = '0.13.0' 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub-4.1.6-py3.7.egg-info/dependency_links.txt: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub-4.1.6-py3.7.egg-info/not-zip-safe: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub-4.1.6-py3.7.egg-info/requires.txt: -------------------------------------------------------------------------------- 1 | pycryptodomex>=3.3 2 | requests>=2.4 3 | six>=1.10 4 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub-4.1.6-py3.7.egg-info/top_level.txt: -------------------------------------------------------------------------------- 1 | pubnub 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/__init__.py: -------------------------------------------------------------------------------- 1 | import logging 2 | import os 3 | 4 | PUBNUB_ROOT = os.path.dirname(os.path.abspath(__file__)) 5 | 6 | 7 | def set_stream_logger(name='pubnub', level=logging.ERROR, format_string=None, stream=None): 8 | if format_string is None: 9 | format_string = "%(asctime)s %(name)s [%(levelname)s] %(message)s" 10 | 11 | logger = logging.getLogger(name) 12 | logger.setLevel(level) 13 | handler = logging.StreamHandler(stream) 14 | handler.setLevel(level) 15 | formatter = logging.Formatter(format_string) 16 | handler.setFormatter(formatter) 17 | logger.addHandler(handler) 18 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/crypto_core.py: -------------------------------------------------------------------------------- 1 | from abc import abstractmethod 2 | 3 | 4 | class PubNubCrypto: 5 | @abstractmethod 6 | def encrypt(self, key, msg): 7 | pass 8 | 9 | @abstractmethod 10 | def decrypt(self, key, msg): 11 | pass 12 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/access/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/access/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/access/revoke.py: -------------------------------------------------------------------------------- 1 | from pubnub.endpoints.access.grant import Grant 2 | from pubnub.enums import PNOperationType 3 | 4 | 5 | class Revoke(Grant): 6 | def __init__(self, pubnub): 7 | Grant.__init__(self, pubnub) 8 | self._read = False 9 | self._write = False 10 | self._manage = False 11 | 12 | self._sort_params = True 13 | 14 | def read(self, flag): 15 | raise NotImplementedError 16 | 17 | def write(self, flag): 18 | raise NotImplementedError 19 | 20 | def manage(self, flag): 21 | raise NotImplementedError 22 | 23 | def operation_type(self): 24 | return PNOperationType.PNAccessManagerRevoke 25 | 26 | def name(self): 27 | return "Revoke" 28 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/channel_groups/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/channel_groups/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/membership/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/membership/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/presence/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/presence/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/pubsub/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/pubsub/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/push/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/push/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/space/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/space/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/users/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pubnub/endpoints/users/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/exceptions.py: -------------------------------------------------------------------------------- 1 | class PubNubException(Exception): 2 | def __init__(self, errormsg="", status_code=0, pn_error=None, status=None): 3 | self._errormsg = errormsg 4 | self._status_code = status_code 5 | self._pn_error = pn_error 6 | self.status = status 7 | 8 | if len(str(errormsg)) > 0 and int(status_code) > 0: 9 | msg = str(pn_error) + " (" + str(status_code) + "): " + str(errormsg) 10 | elif len(str(errormsg)) > 0: 11 | msg = str(pn_error) + ": " + str(errormsg) 12 | else: 13 | msg = str(pn_error) 14 | 15 | super(PubNubException, self).__init__(msg) 16 | 17 | @property 18 | def _status(self): 19 | raise DeprecationWarning 20 | return self.status 21 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/models/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pubnub/models/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/models/consumer/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pubnub/models/consumer/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/models/consumer/channel_group.py: -------------------------------------------------------------------------------- 1 | class PNChannelGroupsAddChannelResult(object): 2 | def __str__(self): 3 | return "Channel successfully added" 4 | 5 | 6 | class PNChannelGroupsRemoveChannelResult(object): 7 | def __str__(self): 8 | return "Channel successfully removed" 9 | 10 | 11 | class PNChannelGroupsRemoveGroupResult(object): 12 | def __str__(self): 13 | return "Group successfully removed" 14 | 15 | 16 | class PNChannelGroupsListResult(object): 17 | def __init__(self, channels): 18 | self.channels = channels 19 | 20 | def __str__(self): 21 | return "Group contains following channels: %s" % ", ".join(self.channels) 22 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/models/consumer/common.py: -------------------------------------------------------------------------------- 1 | class PNStatus: 2 | def __init__(self): 3 | self.category = None 4 | self.error_data = None 5 | self.error = None 6 | 7 | self.status_code = None 8 | self.operation = None 9 | 10 | self.tls_enabled = None 11 | 12 | self.uuid = None 13 | self.auth_key = None 14 | self.origin = None 15 | self.client_request = None 16 | self.client_response = None 17 | self.original_response = None 18 | 19 | self.affected_channels = None 20 | self.affected_groups = None 21 | 22 | def is_error(self): 23 | return self.error is not None 24 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/models/consumer/message_count.py: -------------------------------------------------------------------------------- 1 | class PNMessageCountResult(object): 2 | def __init__(self, result): 3 | """ 4 | Representation of message count server response 5 | 6 | :param result: result of message count operation 7 | """ 8 | self._result = result 9 | self.channels = result['channels'] 10 | 11 | def __str__(self): 12 | return "Message count for channels: {}".format(self.channels) 13 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/models/consumer/pn_error_data.py: -------------------------------------------------------------------------------- 1 | class PNErrorData(): 2 | def __init__(self, information, exception): 3 | assert isinstance(information, str) 4 | assert isinstance(exception, Exception) 5 | 6 | self.information = information 7 | self.exception = exception 8 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/models/consumer/push.py: -------------------------------------------------------------------------------- 1 | 2 | class PNPushAddChannelResult(object): 3 | def __str__(self): 4 | return "Channel successfully added" 5 | 6 | 7 | class PNPushRemoveChannelResult(object): 8 | def __str__(self): 9 | return "Channel successfully removed" 10 | 11 | 12 | class PNPushRemoveAllChannelsResult(object): 13 | def __str__(self): 14 | return "All channels successfully removed" 15 | 16 | 17 | class PNPushListProvisionsResult(object): 18 | def __init__(self, channels): 19 | self.channels = channels 20 | 21 | def __str__(self): 22 | return "Push notification enabled on following channels: %s" % \ 23 | ", ".join(self.channels) 24 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/models/consumer/signal.py: -------------------------------------------------------------------------------- 1 | class PNSignalResult(object): 2 | def __init__(self, result): 3 | """ 4 | Representation of signal server response 5 | 6 | :param result: result of signal operation 7 | """ 8 | self.timetoken = result[2] 9 | self._result = result 10 | 11 | def __str__(self): 12 | return "Signal success with timetoken %s" % self.timetoken 13 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/models/consumer/time.py: -------------------------------------------------------------------------------- 1 | from datetime import date 2 | 3 | 4 | class PNTimeResponse(object): 5 | MULTIPLIER = 10000000 6 | 7 | def __init__(self, server_response): 8 | assert isinstance(server_response, list) 9 | self.server_response = server_response 10 | self.value_as_string = str(server_response[0]) 11 | self.value_as_int = server_response[0] 12 | 13 | def __int__(self): 14 | return self.value_as_int 15 | 16 | def __str__(self): 17 | return self.value_as_string 18 | 19 | def date_time(self): 20 | return date.fromtimestamp(self.value_as_int / PNTimeResponse.MULTIPLIER) 21 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/models/server/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pubnub/models/server/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/models/subscription_item.py: -------------------------------------------------------------------------------- 1 | class SubscriptionItem(object): 2 | def __init__(self, name=None, state=None): 3 | self.name = name 4 | self.state = state 5 | 6 | def __str__(self): 7 | return self.name 8 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/request_handlers/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/pubnub/request_handlers/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pubnub/request_handlers/base.py: -------------------------------------------------------------------------------- 1 | from abc import abstractmethod, ABCMeta 2 | 3 | 4 | class BaseRequestHandler(object): 5 | __metaclass__ = ABCMeta 6 | 7 | @abstractmethod 8 | def sync_request(self, platform_options, endpoint_call_options): 9 | pass 10 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/py-1.8.0.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/py-1.8.0.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.1) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/py-1.8.0.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | py 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/py/__metainfo.py: -------------------------------------------------------------------------------- 1 | import py 2 | pydir = py.path.local(py.__file__).dirpath() 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/py/_code/__init__.py: -------------------------------------------------------------------------------- 1 | """ python inspection/code generation API """ 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/py/_io/__init__.py: -------------------------------------------------------------------------------- 1 | """ input/output helping """ 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/py/_log/__init__.py: -------------------------------------------------------------------------------- 1 | """ logging API ('producers' and 'consumers' connected via keywords) """ 2 | 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/py/_path/__init__.py: -------------------------------------------------------------------------------- 1 | """ unified file system api """ 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/py/_process/__init__.py: -------------------------------------------------------------------------------- 1 | """ high-level sub-process handling """ 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/py/_process/killproc.py: -------------------------------------------------------------------------------- 1 | import py 2 | import os, sys 3 | 4 | if sys.platform == "win32" or getattr(os, '_name', '') == 'nt': 5 | try: 6 | import ctypes 7 | except ImportError: 8 | def dokill(pid): 9 | py.process.cmdexec("taskkill /F /PID %d" %(pid,)) 10 | else: 11 | def dokill(pid): 12 | PROCESS_TERMINATE = 1 13 | handle = ctypes.windll.kernel32.OpenProcess( 14 | PROCESS_TERMINATE, False, pid) 15 | ctypes.windll.kernel32.TerminateProcess(handle, -1) 16 | ctypes.windll.kernel32.CloseHandle(handle) 17 | else: 18 | def dokill(pid): 19 | os.kill(pid, 15) 20 | 21 | def kill(pid): 22 | """ kill process by id. """ 23 | dokill(pid) 24 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/py/_std.py: -------------------------------------------------------------------------------- 1 | import sys 2 | import warnings 3 | 4 | 5 | class PyStdIsDeprecatedWarning(DeprecationWarning): 6 | pass 7 | 8 | 9 | class Std(object): 10 | """ makes top-level python modules available as an attribute, 11 | importing them on first access. 12 | """ 13 | 14 | def __init__(self): 15 | self.__dict__ = sys.modules 16 | 17 | def __getattr__(self, name): 18 | warnings.warn("py.std is deprecated, plase import %s directly" % name, 19 | category=PyStdIsDeprecatedWarning) 20 | try: 21 | m = __import__(name) 22 | except ImportError: 23 | raise AttributeError("py.std: could not import %s" % name) 24 | return m 25 | 26 | std = Std() 27 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/py/_vendored_packages/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/py/_vendored_packages/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/py/_version.py: -------------------------------------------------------------------------------- 1 | # coding: utf-8 2 | # file generated by setuptools_scm 3 | # don't change, don't track in version control 4 | version = '1.8.0' 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/py/test.py: -------------------------------------------------------------------------------- 1 | import sys 2 | if __name__ == '__main__': 3 | import pytest 4 | sys.exit(pytest.main()) 5 | else: 6 | import sys, pytest 7 | sys.modules['py.test'] = pytest 8 | 9 | # for more API entry points see the 'tests' definition 10 | # in __init__.py 11 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pycryptodomex-3.9.0.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pycryptodomex-3.9.0.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.6) 3 | Root-Is-Purelib: false 4 | Tag: cp37-cp37m-macosx_10_6_intel 5 | 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pycryptodomex-3.9.0.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | Cryptodome 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pyparsing-2.4.2.dist-info/DESCRIPTION.rst: -------------------------------------------------------------------------------- 1 | UNKNOWN 2 | 3 | 4 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pyparsing-2.4.2.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pyparsing-2.4.2.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.29.0) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pyparsing-2.4.2.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | pyparsing 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pytest-5.1.2.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pytest-5.1.2.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.6) 3 | Root-Is-Purelib: true 4 | Tag: py3-none-any 5 | 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pytest-5.1.2.dist-info/entry_points.txt: -------------------------------------------------------------------------------- 1 | [console_scripts] 2 | py.test = pytest:main 3 | pytest = pytest:main 4 | 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/pytest-5.1.2.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | _pytest 2 | pytest 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/requests-2.22.0.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/requests-2.22.0.dist-info/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2018 Kenneth Reitz 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | https://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/requests-2.22.0.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.4) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/requests-2.22.0.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | requests 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/requests/__version__.py: -------------------------------------------------------------------------------- 1 | # .-. .-. .-. . . .-. .-. .-. .-. 2 | # |( |- |.| | | |- `-. | `-. 3 | # ' ' `-' `-`.`-' `-' `-' ' `-' 4 | 5 | __title__ = 'requests' 6 | __description__ = 'Python HTTP for Humans.' 7 | __url__ = 'http://python-requests.org' 8 | __version__ = '2.22.0' 9 | __build__ = 0x022200 10 | __author__ = 'Kenneth Reitz' 11 | __author_email__ = 'me@kennethreitz.org' 12 | __license__ = 'Apache 2.0' 13 | __copyright__ = 'Copyright 2019 Kenneth Reitz' 14 | __cake__ = u'\u2728 \U0001f370 \u2728' 15 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/requests/certs.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # -*- coding: utf-8 -*- 3 | 4 | """ 5 | requests.certs 6 | ~~~~~~~~~~~~~~ 7 | 8 | This module returns the preferred default CA certificate bundle. There is 9 | only one — the one from the certifi package. 10 | 11 | If you are packaging Requests, e.g., for a Linux distribution or a managed 12 | environment, you can change the definition of where() to return a separately 13 | packaged CA bundle. 14 | """ 15 | from certifi import where 16 | 17 | if __name__ == '__main__': 18 | print(where()) 19 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/requests/packages.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | # This code exists for backwards compatibility reasons. 4 | # I don't like it either. Just look the other way. :) 5 | 6 | for package in ('urllib3', 'idna', 'chardet'): 7 | locals()[package] = __import__(package) 8 | # This traversal is apparently necessary such that the identities are 9 | # preserved (requests.packages.urllib3.* is urllib3.*) 10 | for mod in list(sys.modules): 11 | if mod == package or mod.startswith(package + '.'): 12 | sys.modules['requests.packages.' + mod] = sys.modules[mod] 13 | 14 | # Kinda cool, though, right? 15 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools-40.8.0.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools-40.8.0.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.32.3) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools-40.8.0.dist-info/dependency_links.txt: -------------------------------------------------------------------------------- 1 | https://files.pythonhosted.org/packages/source/c/certifi/certifi-2016.9.26.tar.gz#md5=baa81e951a29958563689d868ef1064d 2 | https://files.pythonhosted.org/packages/source/w/wincertstore/wincertstore-0.2.zip#md5=ae728f2f007185648d0c7a8679b361e2 3 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools-40.8.0.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | easy_install 2 | pkg_resources 3 | setuptools 4 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools-40.8.0.dist-info/zip-safe: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/_deprecation_warning.py: -------------------------------------------------------------------------------- 1 | class SetuptoolsDeprecationWarning(Warning): 2 | """ 3 | Base class for warning deprecations in ``setuptools`` 4 | 5 | This class is not derived from ``DeprecationWarning``, and as such is 6 | visible by default. 7 | """ 8 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/_vendor/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/setuptools/_vendor/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/_vendor/packaging/__about__.py: -------------------------------------------------------------------------------- 1 | # This file is dual licensed under the terms of the Apache License, Version 2 | # 2.0, and the BSD License. See the LICENSE file in the root of this repository 3 | # for complete details. 4 | from __future__ import absolute_import, division, print_function 5 | 6 | __all__ = [ 7 | "__title__", "__summary__", "__uri__", "__version__", "__author__", 8 | "__email__", "__license__", "__copyright__", 9 | ] 10 | 11 | __title__ = "packaging" 12 | __summary__ = "Core utilities for Python packages" 13 | __uri__ = "https://github.com/pypa/packaging" 14 | 15 | __version__ = "16.8" 16 | 17 | __author__ = "Donald Stufft and individual contributors" 18 | __email__ = "donald@stufft.io" 19 | 20 | __license__ = "BSD or Apache License, Version 2.0" 21 | __copyright__ = "Copyright 2014-2016 %s" % __author__ 22 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/_vendor/packaging/__init__.py: -------------------------------------------------------------------------------- 1 | # This file is dual licensed under the terms of the Apache License, Version 2 | # 2.0, and the BSD License. See the LICENSE file in the root of this repository 3 | # for complete details. 4 | from __future__ import absolute_import, division, print_function 5 | 6 | from .__about__ import ( 7 | __author__, __copyright__, __email__, __license__, __summary__, __title__, 8 | __uri__, __version__ 9 | ) 10 | 11 | __all__ = [ 12 | "__title__", "__summary__", "__uri__", "__version__", "__author__", 13 | "__email__", "__license__", "__copyright__", 14 | ] 15 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/_vendor/packaging/utils.py: -------------------------------------------------------------------------------- 1 | # This file is dual licensed under the terms of the Apache License, Version 2 | # 2.0, and the BSD License. See the LICENSE file in the root of this repository 3 | # for complete details. 4 | from __future__ import absolute_import, division, print_function 5 | 6 | import re 7 | 8 | 9 | _canonicalize_regex = re.compile(r"[-_.]+") 10 | 11 | 12 | def canonicalize_name(name): 13 | # This is taken from PEP 503. 14 | return _canonicalize_regex.sub("-", name).lower() 15 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/cli-32.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/setuptools/cli-32.exe -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/cli-64.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/setuptools/cli-64.exe -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/cli.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/setuptools/cli.exe -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/command/__init__.py: -------------------------------------------------------------------------------- 1 | __all__ = [ 2 | 'alias', 'bdist_egg', 'bdist_rpm', 'build_ext', 'build_py', 'develop', 3 | 'easy_install', 'egg_info', 'install', 'install_lib', 'rotate', 'saveopts', 4 | 'sdist', 'setopt', 'test', 'install_egg_info', 'install_scripts', 5 | 'register', 'bdist_wininst', 'upload_docs', 'upload', 'build_clib', 6 | 'dist_info', 7 | ] 8 | 9 | from distutils.command.bdist import bdist 10 | import sys 11 | 12 | from setuptools.command import install_scripts 13 | 14 | if 'egg' not in bdist.format_commands: 15 | bdist.format_command['egg'] = ('bdist_egg', "Python .egg file") 16 | bdist.format_commands.append('egg') 17 | 18 | del bdist, sys 19 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/command/bdist_wininst.py: -------------------------------------------------------------------------------- 1 | import distutils.command.bdist_wininst as orig 2 | 3 | 4 | class bdist_wininst(orig.bdist_wininst): 5 | def reinitialize_command(self, command, reinit_subcommands=0): 6 | """ 7 | Supplement reinitialize_command to work around 8 | http://bugs.python.org/issue20819 9 | """ 10 | cmd = self.distribution.reinitialize_command( 11 | command, reinit_subcommands) 12 | if command in ('install', 'install_lib'): 13 | cmd.install_lib = None 14 | return cmd 15 | 16 | def run(self): 17 | self._is_running = True 18 | try: 19 | orig.bdist_wininst.run(self) 20 | finally: 21 | self._is_running = False 22 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/command/launcher manifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/command/register.py: -------------------------------------------------------------------------------- 1 | from distutils import log 2 | import distutils.command.register as orig 3 | 4 | 5 | class register(orig.register): 6 | __doc__ = orig.register.__doc__ 7 | 8 | def run(self): 9 | try: 10 | # Make sure that we are using valid current name/version info 11 | self.run_command('egg_info') 12 | orig.register.run(self) 13 | finally: 14 | self.announce( 15 | "WARNING: Registering is deprecated, use twine to " 16 | "upload instead (https://pypi.org/p/twine/)", 17 | log.WARN 18 | ) 19 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/command/saveopts.py: -------------------------------------------------------------------------------- 1 | from setuptools.command.setopt import edit_config, option_base 2 | 3 | 4 | class saveopts(option_base): 5 | """Save command-line options to a file""" 6 | 7 | description = "save supplied options to setup.cfg or other config file" 8 | 9 | def run(self): 10 | dist = self.distribution 11 | settings = {} 12 | 13 | for cmd in dist.command_options: 14 | 15 | if cmd == 'saveopts': 16 | continue # don't save our own options! 17 | 18 | for opt, (src, val) in dist.get_option_dict(cmd).items(): 19 | if src == "command line": 20 | settings.setdefault(cmd, {})[opt] = val 21 | 22 | edit_config(self.filename, settings, self.dry_run) 23 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/gui-32.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/setuptools/gui-32.exe -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/gui-64.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/setuptools/gui-64.exe -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/gui.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/setuptools/gui.exe -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/py27compat.py: -------------------------------------------------------------------------------- 1 | """ 2 | Compatibility Support for Python 2.7 and earlier 3 | """ 4 | 5 | import platform 6 | 7 | from setuptools.extern import six 8 | 9 | 10 | def get_all_headers(message, key): 11 | """ 12 | Given an HTTPMessage, return all headers matching a given key. 13 | """ 14 | return message.get_all(key) 15 | 16 | 17 | if six.PY2: 18 | def get_all_headers(message, key): 19 | return message.getheaders(key) 20 | 21 | 22 | linux_py2_ascii = ( 23 | platform.system() == 'Linux' and 24 | six.PY2 25 | ) 26 | 27 | rmtree_safe = str if linux_py2_ascii else lambda x: x 28 | """Workaround for http://bugs.python.org/issue24672""" 29 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/script (dev).tmpl: -------------------------------------------------------------------------------- 1 | # EASY-INSTALL-DEV-SCRIPT: %(spec)r,%(script_name)r 2 | __requires__ = %(spec)r 3 | __import__('pkg_resources').require(%(spec)r) 4 | __file__ = %(dev_path)r 5 | with open(__file__) as f: 6 | exec(compile(f.read(), __file__, 'exec')) 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/script.tmpl: -------------------------------------------------------------------------------- 1 | # EASY-INSTALL-SCRIPT: %(spec)r,%(script_name)r 2 | __requires__ = %(spec)r 3 | __import__('pkg_resources').run_script(%(spec)r, %(script_name)r) 4 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/setuptools/version.py: -------------------------------------------------------------------------------- 1 | import pkg_resources 2 | 3 | try: 4 | __version__ = pkg_resources.get_distribution('setuptools').version 5 | except Exception: 6 | __version__ = 'unknown' 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/six-1.12.0.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/six-1.12.0.dist-info/RECORD: -------------------------------------------------------------------------------- 1 | __pycache__/six.cpython-37.pyc,, 2 | six-1.12.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 3 | six-1.12.0.dist-info/LICENSE,sha256=5zL1TaWPPpzwxI6LUSlIk2_Pc2G9WK-mOpo8OSv3lK0,1066 4 | six-1.12.0.dist-info/METADATA,sha256=CRdYkKPKCFJr7-qA8PDpBklGXfXJ3xu4mu5tkLBDL04,1940 5 | six-1.12.0.dist-info/RECORD,, 6 | six-1.12.0.dist-info/WHEEL,sha256=_wJFdOYk7i3xxT8ElOkUJvOdOvfNGbR9g-bf6UQT6sU,110 7 | six-1.12.0.dist-info/top_level.txt,sha256=_iVH_iYEtEXnD8nYGQYpYFUvkUW9sEO1GYbkeKSAais,4 8 | six.py,sha256=h9jch2pS86y4R36pKRS3LOYUCVFNIJMRwjZ4fJDtJ44,32452 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/six-1.12.0.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.32.3) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/six-1.12.0.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | six 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/urllib3-1.25.6.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/urllib3-1.25.6.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.1) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/urllib3-1.25.6.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | urllib3 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/urllib3/contrib/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/urllib3/contrib/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/urllib3/contrib/_securetransport/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/urllib3/contrib/_securetransport/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/urllib3/packages/__init__.py: -------------------------------------------------------------------------------- 1 | from __future__ import absolute_import 2 | 3 | from . import ssl_match_hostname 4 | 5 | __all__ = ("ssl_match_hostname",) 6 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/urllib3/packages/backports/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/urllib3/packages/backports/__init__.py -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/urllib3/packages/ssl_match_hostname/__init__.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | try: 4 | # Our match_hostname function is the same as 3.5's, so we only want to 5 | # import the match_hostname function if it's at least that good. 6 | if sys.version_info < (3, 5): 7 | raise ImportError("Fallback to vendored code") 8 | 9 | from ssl import CertificateError, match_hostname 10 | except ImportError: 11 | try: 12 | # Backport of the function from a pypi module 13 | from backports.ssl_match_hostname import CertificateError, match_hostname 14 | except ImportError: 15 | # Our vendored copy 16 | from ._implementation import CertificateError, match_hostname 17 | 18 | # Not needed, but documenting what we provide. 19 | __all__ = ("CertificateError", "match_hostname") 20 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/urllib3/util/queue.py: -------------------------------------------------------------------------------- 1 | import collections 2 | from ..packages import six 3 | from ..packages.six.moves import queue 4 | 5 | if six.PY2: 6 | # Queue is imported for side effects on MS Windows. See issue #229. 7 | import Queue as _unused_module_Queue # noqa: F401 8 | 9 | 10 | class LifoQueue(queue.Queue): 11 | def _init(self, _): 12 | self.queue = collections.deque() 13 | 14 | def _qsize(self, len=len): 15 | return len(self.queue) 16 | 17 | def _put(self, item): 18 | self.queue.append(item) 19 | 20 | def _get(self): 21 | return self.queue.pop() 22 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/wcwidth-0.1.7.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/wcwidth-0.1.7.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.29.0) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/wcwidth-0.1.7.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | wcwidth 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/wcwidth-0.1.7.dist-info/zip-safe: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/wcwidth/__init__.py: -------------------------------------------------------------------------------- 1 | """wcwidth module, https://github.com/jquast/wcwidth.""" 2 | from .wcwidth import wcwidth, wcswidth # noqa 3 | 4 | __all__ = ('wcwidth', 'wcswidth',) 5 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/wcwidth/tests/__init__.py: -------------------------------------------------------------------------------- 1 | """This file intentionally left blank.""" 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/werkzeug/contrib/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | """ 3 | werkzeug.contrib 4 | ~~~~~~~~~~~~~~~~ 5 | 6 | Contains user-submitted code that other users may find useful, but which 7 | is not part of the Werkzeug core. Anyone can write code for inclusion in 8 | the `contrib` package. All modules in this package are distributed as an 9 | add-on library and thus are not part of Werkzeug itself. 10 | 11 | This file itself is mostly for informational purposes and to tell the 12 | Python interpreter that `contrib` is a package. 13 | 14 | :copyright: 2007 Pallets 15 | :license: BSD-3-Clause 16 | """ 17 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/werkzeug/contrib/lint.py: -------------------------------------------------------------------------------- 1 | import warnings 2 | 3 | from ..middleware.lint import * # noqa: F401, F403 4 | 5 | warnings.warn( 6 | "'werkzeug.contrib.lint' has moved to 'werkzeug.middleware.lint'." 7 | " This import is deprecated as of version 0.15 and will be removed" 8 | " in version 1.0.", 9 | DeprecationWarning, 10 | stacklevel=2, 11 | ) 12 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/werkzeug/debug/shared/console.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/werkzeug/debug/shared/console.png -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/werkzeug/debug/shared/less.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/werkzeug/debug/shared/less.png -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/werkzeug/debug/shared/more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/werkzeug/debug/shared/more.png -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/werkzeug/debug/shared/source.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/werkzeug/debug/shared/source.png -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/werkzeug/debug/shared/ubuntu.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/blockchain-env/lib/python3.7/site-packages/werkzeug/debug/shared/ubuntu.ttf -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/werkzeug/middleware/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | Middleware 3 | ========== 4 | 5 | A WSGI middleware is a WSGI application that wraps another application 6 | in order to observe or change its behavior. Werkzeug provides some 7 | middleware for common use cases. 8 | 9 | .. toctree:: 10 | :maxdepth: 1 11 | 12 | proxy_fix 13 | shared_data 14 | dispatcher 15 | http_proxy 16 | lint 17 | profiler 18 | 19 | The :doc:`interactive debugger ` is also a middleware that can 20 | be applied manually, although it is typically used automatically with 21 | the :doc:`development server `. 22 | 23 | :copyright: 2007 Pallets 24 | :license: BSD-3-Clause 25 | """ 26 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/werkzeug/wrappers/user_agent.py: -------------------------------------------------------------------------------- 1 | from ..useragents import UserAgent 2 | from ..utils import cached_property 3 | 4 | 5 | class UserAgentMixin(object): 6 | """Adds a `user_agent` attribute to the request object which 7 | contains the parsed user agent of the browser that triggered the 8 | request as a :class:`~werkzeug.useragents.UserAgent` object. 9 | """ 10 | 11 | @cached_property 12 | def user_agent(self): 13 | """The current user agent.""" 14 | return UserAgent(self.environ) 15 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/zipp-0.6.0.dist-info/INSTALLER: -------------------------------------------------------------------------------- 1 | pip 2 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/zipp-0.6.0.dist-info/RECORD: -------------------------------------------------------------------------------- 1 | __pycache__/zipp.cpython-37.pyc,, 2 | zipp-0.6.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 3 | zipp-0.6.0.dist-info/LICENSE,sha256=pV4v_ptEmY5iHVHYwJS-0JrMS1I27nPX3zlaM7o8GP0,1050 4 | zipp-0.6.0.dist-info/METADATA,sha256=z4Wa1EeykxURovnVCtRRg52BMGQXlXb7Hb7IxNu6Muk,1719 5 | zipp-0.6.0.dist-info/RECORD,, 6 | zipp-0.6.0.dist-info/WHEEL,sha256=8zNYZbwQSXoB9IfXOjPfeNwvAsALAjffgk27FqvCWbo,110 7 | zipp-0.6.0.dist-info/top_level.txt,sha256=iAbdoSHfaGqBfVb2XuR9JqSQHCoOsOtG6y9C_LSpqFw,5 8 | zipp.py,sha256=at2n-fuj-jXv7XytlGT0wNMpVEyILk-O15wXSarOQww,5011 9 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/zipp-0.6.0.dist-info/WHEEL: -------------------------------------------------------------------------------- 1 | Wheel-Version: 1.0 2 | Generator: bdist_wheel (0.33.6) 3 | Root-Is-Purelib: true 4 | Tag: py2-none-any 5 | Tag: py3-none-any 6 | 7 | -------------------------------------------------------------------------------- /blockchain-env/lib/python3.7/site-packages/zipp-0.6.0.dist-info/top_level.txt: -------------------------------------------------------------------------------- 1 | zipp 2 | -------------------------------------------------------------------------------- /blockchain-env/pyvenv.cfg: -------------------------------------------------------------------------------- 1 | home = /usr/local/bin 2 | include-system-site-packages = false 3 | version = 3.7.3 4 | -------------------------------------------------------------------------------- /frontend/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /frontend/public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Pychain 7 | 8 | 9 |
10 | 11 | 12 | -------------------------------------------------------------------------------- /frontend/src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/frontend/src/assets/logo.png -------------------------------------------------------------------------------- /frontend/src/components/Transaction.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | function Transaction({ transaction }) { 4 | const { input, output } = transaction; 5 | const recipients = Object.keys(output); 6 | 7 | return ( 8 |
9 |
From: {input.address}
10 | { 11 | recipients.map(recipient => ( 12 |
13 | To: {recipient} | Sent: {output[recipient]} 14 |
15 | )) 16 | } 17 |
18 | ) 19 | } 20 | 21 | export default Transaction; 22 | -------------------------------------------------------------------------------- /frontend/src/config.js: -------------------------------------------------------------------------------- 1 | const API_BASE_URL = 'http://localhost:5000'; 2 | const NANOSECONDS_PY = 1; 3 | const MICROSECONDS_PY = 1000 * NANOSECONDS_PY; 4 | const MILLISECONDS_PY = 1000 * MICROSECONDS_PY; 5 | 6 | const MILLISECONDS_JS = 1; 7 | const SECONDS_JS = MILLISECONDS_JS * 1000; 8 | 9 | export { API_BASE_URL, MILLISECONDS_PY, SECONDS_JS }; 10 | -------------------------------------------------------------------------------- /frontend/src/history.js: -------------------------------------------------------------------------------- 1 | import { createBrowserHistory } from 'history'; 2 | 3 | export default createBrowserHistory(); 4 | -------------------------------------------------------------------------------- /frontend/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | background-color: #444; 3 | color: #fff; 4 | text-align: center; 5 | font-size: 18px; 6 | font-family: 'Quicksand'; 7 | padding-top: 5%; 8 | word-wrap: break-word; 9 | } 10 | 11 | .logo { 12 | width: 250px; 13 | height: 250px; 14 | } 15 | 16 | .App { 17 | display: flex; 18 | flex-direction: column; 19 | align-items: center; 20 | } 21 | 22 | .WalletInfo { 23 | width: 500px; 24 | } 25 | 26 | .Block { 27 | border: 1px solid #fff; 28 | padding: 10%; 29 | margin: 2%; 30 | } 31 | 32 | .Transaction { 33 | padding: 5%; 34 | } 35 | 36 | .Blockchain, .ConductTransaction, .TransactionPool { 37 | margin: 10%; 38 | margin-top: 5%; 39 | } 40 | 41 | a, a:hover { 42 | color: #e66; 43 | text-decoration: underline; 44 | } 45 | 46 | input, button { 47 | color: black; 48 | } -------------------------------------------------------------------------------- /frontend/src/index.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom'; 3 | import { Router, Switch, Route } from 'react-router-dom'; 4 | import './index.css'; 5 | import history from './history'; 6 | import App from './components/App'; 7 | import Blockchain from './components/Blockchain'; 8 | import ConductTransaction from './components/ConductTransaction'; 9 | import TransactionPool from './components/TransactionPool'; 10 | 11 | ReactDOM.render( 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | , 20 | document.getElementById('root') 21 | ); 22 | -------------------------------------------------------------------------------- /python_blockchain_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/15Dkatz/python-blockchain-tutorial/ba22165ebc41c436251ac378cef72dbdcd2e9c6d/python_blockchain_logo.png -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | pytest==5.1.2 2 | Flask==1.1.1 3 | pubnub==4.1.6 4 | requests==2.22.0 5 | cryptography==2.7 6 | Flask-Cors==3.0.8 7 | --------------------------------------------------------------------------------