Skip to main content

Generated and Converted Keys with any Type Foundation from Private Key [WIF Hexed Mnemonic and Binary Bytes seed] in Python

Project description

cryptofuzz python cryptography library

CryptoFuzz

Installing & Quick Use

Windows

On Windows, you can install CryptoFuzz using the following pip command:

pip install --upgrade cryptofuzz

Linux & Mac

On Linux and macOS, you should use pip3 for installation:

pip3 install --upgrade cryptofuzz

Git

To use the latest version from the source, you can clone the CryptoFuzz repository:

  1. Clone the repository:
git clone https://github.com/Pymmdrza/cryptofuzz
  1. Navigate to the cloned directory:
cd cryptofuzz
  1. Install the package:

Windows

You can either run the install.bat or install command:

./install.bat
# or
./install

Linux & Mac

On Linux and Mac, you can use the following commands to install:

bash install.sh
# or simply:
./install.sh

Note: If you face any permission issues on Linux, make the script executable using:

sudo chmod +x install.sh

Update 2024.09.07:

Add Function for checking mnemonic standard type :

  • cryptofuzz.utils.is_mnemonic
from cryptofuzz import Convertor

cn = Convertor()
isValid = cn.is_mnemonic("abandon ... help abandon flower")  # Mnemonic 12/18/24

Update 2024.08.24:

Add Short Key (Mini Private Key) Converter for bitcoin wallet. (Mini Private Key : More Detail's)

Short Key Like: S6c56bnXQiBjk9mqSYE7ykVQ7NzrRy

  • Convert Short Key To Private Key (hex).
  • Convert Short Key To Seed (bytes)
  • Convert Short Key To Wif Compress and Uncompress.
  • Convert Short Key To Decimal Number.


Private Key

More details about private key convert in python with cryptofuzz : cryptofuzz/Example/Privatekey

from cryptofuzz import Convertor, Generator

# // Convertor and Generator Shortcut
conv = Convertor()
gen = Generator()
# // Generate private key
privatekey = gen.generate_private_key()
# // Convert private key To bytes
seed = conv.hex_to_bytes(privatekey)
# // Convert private key To mnemonic
mnemonic = conv.hex_to_mne(privatekey)
# // Convert private key To wif compress
wif_compress = conv.hex_to_wif(privatekey, True)
# // Convert private key To wif uncompress
wif_uncompress = conv.hex_to_wif(privatekey, False)
# // Convert private key To decimal number
dec = conv.hex_to_int(privatekey)
# // Convert private key To binary
binary_str = conv.hex_to_binary(privatekey)
# // Convert private key To xprv
xprv = conv.hex_to_xprv(privatekey)
# // Convert private key To xpub
xpub = conv.hex_to_xpub(privatekey)
# // Convert private key To compress address
compress_address = conv.hex_to_addr(privatekey, True)
# // Convert private key To uncompress address
uncompress_address = conv.hex_to_addr(privatekey, False)

Wif

Convert From Wif ( More detail and Example )

import os
from cryptofuzz import Convertor

conv = Convertor()

# // generate byte
byte = os.urandom(32)
# // convert Byte To wif
wif = conv.bytes_to_wif(byte)
# // wif to mnemonic
mnemonic = conv.wif_to_mne(wif)
# // Convert Wif To Hex
privatekey = conv.wif_to_hex(wif)
# // Convert bytes To WIF Uncompress
wif_uncompress = conv.bytes_to_wif(byte, False)
# // Convert Wif To Decimal Number
dec = conv.wif_to_int(wif)
# // Convert Wif To Binary
binary_str = conv.wif_to_binary(wif)
# // Convert Wif To xprv
xprv = conv.wif_to_xprv(wif)
# // Convert Wif To xpub
xpub = conv.wif_to_xpub(wif)
# // Convert Wif To compress address
compress_address = conv.wif_to_addr(wif, True)
# // Convert Wif To uncompress address
uncompress_address = conv.wif_to_addr(wif, False)

Mnemonic

Convert From Mnemonic (BIP39) ( More Detail )

from cryptofuzz import Convertor, Generator

conv = Convertor()
gen = Generator()

# Generate Mnemonic
mnemonic = gen.generate_mnemonic(12)
# Convert Mnemonic To Seed Bytes
seed = conv.mne_to_bytes(mnemonic)
# Convert Mnemonic To Hex
privatekey = conv.mne_to_hex(mnemonic)
# Convert Mnemonic To WIF Compress
wif_compress = conv.mne_to_wif(mnemonic, True)
# Convert Mnemonic To WIF Uncompress
wif_uncompress = conv.mne_to_wif(mnemonic, False)
# Convert Mnemonic To Decimal Number
dec = conv.mne_to_int(mnemonic)
# Convert Mnemonic To Binary
binary_str = conv.mne_to_binary(mnemonic)
# Convert Mnemonic To xprv
xprv = conv.mne_to_xprv(mnemonic)
# Convert Mnemonic To xpub
xpub = conv.mne_to_xpub(mnemonic)
# Convert Mnemonic To compress address
compress_address = conv.mne_to_addr(mnemonic, True)
# Convert Mnemonic To uncompress address
uncompress_address = conv.mne_to_addr(mnemonic, False)

Decimal

Convert From Decimal (Number) ( More Detail )

from cryptofuzz import Convertor, Generator

conv = Convertor()
gen = Generator()

# generate random number decimal
dec = gen.generate_decimal()
# decimal to mnemonic
mnemonic = conv.int_to_mnemonic(dec)
# Convert decimal To Hex
privatekey = conv.int_to_hex(dec)
# Convert decimal To WIF Compress
wif_compress = conv.int_to_wif(dec, True)
# Convert decimal To WIF Uncompress
wif_uncompress = conv.int_to_wif(dec, False)
# Convert Wif To Binary
binary_str = conv.int_to_binary(dec)
# Convert Wif To xprv
xprv = conv.int_to_xprv(dec)
# Convert Wif To xpub
xpub = conv.int_to_xpub(dec)
# Convert Wif To compress address
compress_address = conv.int_to_addr(dec, True)
# Convert Wif To uncompress address
uncompress_address = conv.int_to_addr(dec, False)

Block

read block data from block file (bitcoin core sync data file's) [ blk00001.dat ]

from cryptofuzz import block
import os

# path block file
path_data = os.path.join("BITCOIN_CORE_SYNC_BLOCK_FOLDER")
block_path = os.path.join(path_data, "blk00001.dat")  # first block file sync
# full block data
block_data = block.reader(block_path) 

Command-Line Usage

After installing the cryptofuzz package, you can use the cryptofuzz command-line tool to perform various cryptographic operations directly from your terminal.

Examples

Here are some examples demonstrating how to use the cryptofuzz command-line tool:

Generate a New Private Key

cryptofuzz --privatekey

Output:

Generating a new private key...
Private Key (Hex): 0x1e99423a4ed27608a15a2616c1...
WIF: L5BmW3B5xBv...
Public Key: 04a34b...
Bitcoin Address (P2PKH): 1BoatSLRHtKNngkdXEeobR76b53LETtpyT
Ethereum Address: 0x742d35Cc6634C0532925a3b844Bc454e4438f44e
...

Generate a New Mnemonic Phrase

cryptofuzz --mnemonic

Output:

Generating a new mnemonic phrase...
Mnemonic: abandon amount liar amount expire adjust cage candy arch gather drum buyer
Seed: 5eb00bbddcf069084889a8ab9155568165f5c0...
Private Key: 0x8f2a559490...
Public Key: 04bfcab...
Bitcoin Address (P2PKH): 1HZwkCg...
Ethereum Address: 0xAb5801a7...

Convert Private Key to Bitcoin Addresses

cryptofuzz --bitcoin

Output:

Converting private key to Bitcoin addresses...
Private Key (Hex): 0x1e99423a4ed27608a15a2616c1...
P2PKH Address: 1BoatSLRHtKNngkdXEeobR76b53LETtpyT
P2SH Address: 3J98t1WpEZ73CNmQviecrnyiWrnqRhWNLy
Bech32 Address: bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kygt080

Display Example Usages

cryptofuzz --example

Output:

Cryptofuzz Usage Examples:

1. Generate a new private key:
   cryptofuzz --privatekey

2. Generate a new mnemonic phrase:
   cryptofuzz --mnemonic

3. Convert a private key to Ethereum address:
   cryptofuzz --ethereum

4. Display help information:
   cryptofuzz --help

Handling Incorrect Commands

If you enter an incorrect or unsupported command, cryptofuzz will suggest the closest matching command or prompt you to view the help documentation.

Example:

cryptofuzz --bitcon

Output:

Unknown command '--bitcon'.
Did you mean '--bitcoin'?
For a list of available commands, type: cryptofuzz --help

Display Help Information

To view detailed help information about all available commands, use the --help flag:

cryptofuzz --help

Output:

usage: cryptofuzz [OPTIONS]

Example Cryptofuzz Operations

optional arguments:

  • -h, --help show this help message and exit
  • -p, --privatekey Generate a new private key and display associated data.
  • -m, --mnemonic Generate a new mnemonic phrase and display associated data.
  • -b, --bytes Generate a random byte sequence and display associated data.
  • -bin, --binary Generate a random binary string and display associated data.
  • -x, --xprv Generate a new extended private key (XPRV) and display associated data.
  • -d, --decimal Generate a random decimal number and display associated data.
  • -w, --wif Generate a new WIF key and display associated data.
  • -btc, --bitcoin Convert a private key to Bitcoin addresses.
  • -eth, --ethereum Convert a private key to an Ethereum address.
  • -dash, --dash Convert a private key to a Dash address.
  • -ltc, --litecoin Convert a private key to Litecoin addresses.
  • -doge, --dogecoin Convert a private key to a Dogecoin address.
  • -btg, --bitcoingold Convert a private key to a Bitcoin Gold address.
  • -qtum, --qtum Convert a private key to a Qtum address.
  • -zcash, --zcash Convert a private key to a Zcash address.
  • -rvn, --ravencoin Convert a private key to a Ravencoin address.
  • -ex, --example Display example usages of different commands.

contact

Programmer & Owner : Mr. PyMmdrza

Email : PyMmdrza@Gmail.Com

Github: cryptofuzz/cryptofuzz

Document: cryptofuzz


Donate:

Bitcoin (BTC): 1MMDRZA12xdBLD1P5AfEfvEMErp588vmF9

Ethereum & USDT (ERC20): 0x348e3C3b17784AafD7dB67d011b85F838F16E2D1

USDT & TRON (TRC20): TR4mA5quGVHGYS186HKDuArbD8SVssiZVx

Litecoin (LTC): ltc1qtgvxc6na9pxvznu05yys3j5rq9ej6kahe2j50v

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cryptofuzz-16.3.6.tar.gz (38.7 kB view details)

Uploaded Source

Built Distribution

CryptoFuzz-16.3.6-py3-none-any.whl (38.3 kB view details)

Uploaded Python 3

File details

Details for the file cryptofuzz-16.3.6.tar.gz.

File metadata

  • Download URL: cryptofuzz-16.3.6.tar.gz
  • Upload date:
  • Size: 38.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for cryptofuzz-16.3.6.tar.gz
Algorithm Hash digest
SHA256 8a4332da1b0fc62417e35c672c54f324278de982763d1b5605e8681e67ce6b96
MD5 5316dfdae279752bfbc62db5d01d2eca
BLAKE2b-256 57f34b29a9f09ff91f3ce250327b39e02cf31738bd65a99ffe0e8e2741b8ad5a

See more details on using hashes here.

File details

Details for the file CryptoFuzz-16.3.6-py3-none-any.whl.

File metadata

  • Download URL: CryptoFuzz-16.3.6-py3-none-any.whl
  • Upload date:
  • Size: 38.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for CryptoFuzz-16.3.6-py3-none-any.whl
Algorithm Hash digest
SHA256 eb70f6a09bfbdf9174dfb557fc98507011cc96cc3b1e4304ef30dc3c2bd6f563
MD5 4ebae2b0ea72b368f831e809f1b1aa64
BLAKE2b-256 8920c0636e63eda3b2c68e07cbf872889e681a31fd8b530e7b36d4c5401896d8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page