Skip to main content

CRYPTOWALL: THE SIMPLEST CRYPTOCURRENCY WALLET LIBRARY

SUPPORTED COINS: BTC, ETH, BCH, LTC, DOGE, DASH, XRP, SOL, TON

Installation

pip install cryptowall

Usage

import cryptowall as cw
cw.create_wallet("BCH", "VeryStrongPassword", "./tmp")

Functions

  • generate_hex_private_key()
    Generate a cryptographically secure random 32-byte private key.
    Returns a 64-character hex string valid for all supported coins.
  • hex_to_wif(hex_priv: str, coin: str, compressed: bool)
    Convert hex private key to Wallet Import Format (WIF) for BTC, BCH, LTC, DOGE, DASH.
  • convert_private_key(hex_priv: str, coin: str)
    Convert a hex private key to the native format(s) used by coin.
    Returns a dict with at least 'hex' and coin-specific format keys.
  • generate_rsa_keypair(key_size: int)
    Generate an RSA key pair.
    Returns (pem_private_key, pem_public_key) as PEM strings.
  • encrypt_private_key(hex_priv: str, password: str)
    Encrypt a hex private key using a hybrid RSA plus AES-GCM scheme:
    • Derive a 256-bit AES key from password via PBKDF2-HMAC-SHA256,
    • Encrypt the private key bytes with AES-256-GCM,
    • Generate a fresh 2048-bit RSA key pair,
    • RSA-OAEP encrypt the AES key plus salt together.
      Returns a dict with all material needed for decryption except the RSA private key, which the caller must store securely.
  • decrypt_private_key(encrypted: Dict[str, str], password: str)
    Reverse of encrypt_private_key, encrypted must be the dict returned by encrypt_private_key.
    Returns the hex private key string.
  • generate_public_key_and_address(hex_priv: str, coin: str)
    Derive the public key and wallet address for coin from a hex private key.
    Returns a dict with 'public_key' and 'address' (plus any extras).
  • save_wallet_to_json(coin: str, hex_priv: str, password: str, output_path: str)
    Full pipeline:
    • Encrypt the hex private key,
    • Derive public key and address,
    • Write JSON file with public key, address, encrypted private key.
      Returns the path of the written JSON file.
      The RSA private key (required for decryption) is stored in a separate _rsa_private_key.pem file.
  • create_wallet(coin: str, password: str, output_dir: str)
    Generate a complete wallet for coin:
    • Random private key,
    • All key formats,
    • Public key and address,
    • Encrypted private key,
    • Saved JSON and PEM files.
      Returns a summary dict.

Detailed tips, tricks, and examples, can be found at project's repository https://github.com/asinerum/cryptowall

(C) 2026 Asinerum Conlang Project

Metadata

Release files for cryptowall 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cryptowall 1.0.0
File Size Uploaded Provenance Actions
cryptowall-1.0.0.tar.gz 8.8 kB Without provenance Details for cryptowall-1.0.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for cryptowall 1.0.0
File Interpreter ABI Platform Actions
cryptowall-1.0.0-py3-none-any.whl Python 3 none any Details for cryptowall-1.0.0-py3-none-any.whl

Total release size: 17.7 kB

Release files / cryptowall-1.0.0.tar.gz

Download URL cryptowall-1.0.0.tar.gz
Size 8.8 kB
Tags Source
SHA-256 checksum
How to use checksums
d3b22d20ce0c8e0abf1b5135a6a96acef79db903ab2cbd3aad1f38c959eb79fa
BLAKE2b-256 checksum
How to use checksums
efdf279f0a63d690e7d1de4e72b147afd44f7f01e8f196dc8b332395495600e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.9

Release files / cryptowall-1.0.0-py3-none-any.whl

Download URL cryptowall-1.0.0-py3-none-any.whl
Size 8.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8431c0c8bf27d7cab4f3b79eef65a9a24265f3840a548d0c205119a91520a083
BLAKE2b-256 checksum
How to use checksums
ec286319016fff7ff3087afb9883d999b62d27f59f9ec80759d6702eee7f512d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.9

Security for cryptowall 1.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page