CryptoSecureKit
A production-quality cybersecurity-focused local cryptocurrency wallet toolkit in Python.
[!WARNING] CRITICAL SECURITY NOTICE: This library is intended for educational, reference, and auditing purposes only. It has NOT undergone independent professional security audits. DO NOT use this library to manage, generate, or store private keys representing real monetary value. Use at your own risk.
Features
- Offline-First & Local-Only: Zero network calls or socket transmissions. Works entirely locally.
- BIP-39 Mnemonics: Securely generate and validate mnemonic phrases (12, 15, 18, 21, 24 words) and derive seeds using PBKDF2.
- Hierarchical Deterministic Wallets:
- BIP-32 / BIP-44 key derivation for secp256k1 chains.
- SLIP-0010 hardened key derivation for ed25519 chains.
- Multi-Chain Adapters:
- Bitcoin (BTC): Base58Check (P2PKH) and Bech32 (P2WPKH) addresses.
- Ethereum (ETH): Keccak-256 addresses with EIP-55 casing checksum.
- Solana (SOL): ed25519 addresses encoded in Base58.
- Litecoin (LTC): Base58Check addresses with LTC prefix version bytes.
- Keystore Encryption: Encrypt mnemonics or keys into secure JSON blobs using standard KDF (
scrypt) and authenticated cipher (AES-256-GCM). - Deterministic Digital Signatures:
- RFC 6979 for secp256k1 (Bitcoin, Ethereum, Litecoin).
- RFC 8032 for ed25519 (Solana).
- Bulk Operations: Safely generate large sets of keys or derive address ranges, with options for encrypted CSV/JSON exports.
Installation
Install dependencies and the package locally:
pip install .
For development (including testing dependencies):
pip install -e ".[dev]"
Quickstart
Keypair Generation & Addressing
from cryptosecurekit.keys import KeyPair
from cryptosecurekit.chains.registry import get_adapter
# Bitcoin
btc_adapter = get_adapter("btc")
seed = b"some very secure high entropy seed bytes here..."
keypair = btc_adapter.derive_keypair(seed, "m/44'/0'/0'/0/0")
print("Public Key:", keypair.public_key_hex)
print("Address:", btc_adapter.public_key_to_address(keypair.public_key_hex))
# Private key is redacted from print statements
print(keypair) # Output: KeyPair(private_key_hex='***REDACTED***', public_key_hex='...')
For complete documentation, see the docs/ directory.
Authors, Developer & Credits
- Developer: shaheelhassan (github@shaheelhassan)
- Credits: shaheelhassan
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cryptosecurekit-1.0.3.tar.gz.
File metadata
- Download URL: cryptosecurekit-1.0.3.tar.gz
- Upload date:
- Size: 38.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a95244a6aa4ae1d8b7f640ac716775a658bd8f07a982499aeabc05f0ccd57568
|
|
| MD5 |
30988cc31e990e69e23072b2aeaace84
|
|
| BLAKE2b-256 |
d406fedcfdd2d69992b76e6fd7c37066f219a1026df6cd3358cf0fea30229940
|
File details
Details for the file cryptosecurekit-1.0.3-py3-none-any.whl.
File metadata
- Download URL: cryptosecurekit-1.0.3-py3-none-any.whl
- Upload date:
- Size: 36.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
880349538011309f723f8215bf5729fd6cd8cc481969f1706df2d995171193cb
|
|
| MD5 |
0c9d99850e3bc6a3fb0a14bca5f8e4df
|
|
| BLAKE2b-256 |
734b2ed4a45b94f7d86a6c87ce13ff4847beff5eb0b9a6c9879ac89ade3c7ea2
|