# Private Key (HEX)

```python
from cryptofuzz import Convertor, Generator


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)

print('Private key', privatekey)
print('Compress address', compress_address)
print('Uncompress address', uncompress_address)
print('Mnemonic', mnemonic)
print('Seed', seed)
print('WIF compress', wif_compress)
print('WIF uncompress', wif_uncompress)
print('Dec', dec)
print('Binary', binary_str)
print('XPRV', xprv)
print('XPUB', xpub)
```

#### The first step in managing cryptocurrency private keys with CryptoFuzz is generating a secure private key. This is accomplished using the `Generator` class, which includes a method `generate_private_key()` designed to produce a cryptographically secure private key suitable for use in a variety of blockchain networks.

```python
from cryptofuzz import Generator

gen = Generator()
privatekey = gen.generate_private_key()
```

Once you have generated a private key, the next step involves converting this key into various formats for different applications, such as transactions, wallets, and blockchain operations. The `Convertor` class provides multiple functions to achieve these conversions:

* **Hex to Bytes**: Converts the hexadecimal representation of the private key into bytes.
* **Hex to Mnemonic**: Generates a mnemonic phrase from the private key, which is easier to remember or write down.
* **Hex to WIF**: Converts the private key into a Wallet Import Format (WIF), with support for both compressed and uncompressed formats.
* **Hex to Decimal**: Translates the private key into its decimal representation.
* **Hex to Binary**: Converts the private key into a binary string.
* **Hex to XPRV/XPUB**: Derives the extended private (xprv) and public (xpub) keys from the private key.
* **Hex to Address**: Generates both compressed and uncompressed addresses from the private key.

These conversions are essential for developers and users handling cryptocurrency private keys, allowing them to navigate between different formats and applications easily. Here's an example of how to perform these conversions:

```python
from cryptofuzz import Convertor

conv = Convertor()
# Convert private key to different formats
seed = conv.hex_to_bytes(privatekey)
mnemonic = conv.hex_to_mne(privatekey)
wif_compress = conv.hex_to_wif(privatekey, True)
wif_uncompress = conv.hex_to_wif(privatekey, False)
dec = conv.hex_to_int(privatekey)
binary_str = conv.hex_to_binary(privatekey)
xprv = conv.hex_to_xprv(privatekey)
xpub = conv.hex_to_xpub(privatekey)
compress_address = conv.hex_to_addr(privatekey, True)
uncompress_address = conv.hex_to_addr(privatekey, False)

# Print converted values
print('Private key:', privatekey)
print('Compressed address:', compress_address)
print('Uncompressed address:', uncompress_address)
print('Mnemonic:', mnemonic)
print('Seed:', seed)
print('WIF Compressed:', wif_compress)
print('WIF Uncompressed:', wif_uncompress)
print('Decimal:', dec)
print('Binary:', binary_str)
print('XPRV:', xprv)
print('XPUB:', xpub)
```

In summary, the CryptoFuzz library facilitates the generation and conversion of private keys, providing a comprehensive toolkit for cryptocurrency developers and enthusiasts who need to manipulate private keys across various formats and use cases.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://guide.mmdrza.com/guidelines/cryptofuzz/example/private-key-hex.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
