A bot for creating crypto wallets. We're writing our own generator in Python for Bitcoin and Ethereum.

WILD

Administrator
Staff member
ADMIN
SELLER
SUPREME
MEMBER
Joined
Jan 21, 2025
Messages
220
Reaction score
631
Deposit
0$
1774561939245.png
[ЛАЙКИ=5]
Думаю, многим из вас знакома эта ситуация из реальной жизни. Вам нужно сгенерировать множество кошельков для какого-то проекта, для распространения, для тестирования или просто так. Создание их вручную каждый раз через какой-либо веб-сайт — это трудоемкий и утомительный процесс. А ввод закрытых ключей через веб-формы даже не рассматривается — никогда не знаешь, кто их запомнит.

Я сам через это прошёл, когда мне нужно было создать около пятидесяти кошельков для одного эксперимента. Я думал, что найду сервис, который сгенерирует их оптом, но он либо был платным, либо вызывал подозрения, либо вообще не работал. Мне пришлось самому разобраться и написать собственного бота. Теперь я объясню, как это сделать, чтобы вам не пришлось об этом беспокоиться.

Что такое криптокошелек и как его создать?

Прежде чем углубиться в код, нам нужно понять, что мы генерируем. Криптокошелек — это не какой-то файл на вашем диске. Это просто пара ключей: закрытый ключ и открытый ключ.

Ваш закрытый ключ — это ваш секрет. Тот, кто его знает, может контролировать ваши монеты. Вам необходимо хранить его в тайне.

Ваш открытый ключ и адрес кошелька — это то, что вы можете показать другим, чтобы они могли отправлять вам деньги. Адрес формируется из открытого ключа с помощью различных криптографических преобразований.

По сути, создание кошелька — это просто генерация случайного числа (приватного ключа) и вычисление всего остального на его основе. Биткойн использует алгоритм ECDSA, а Ethereum — аналогичный, но немного отличающийся алгоритм.

Что нам понадобится для создания бота

Мы будем писать код на Python, потому что это простой язык, и для него существует множество готовых библиотек. Если вы не знаете Python, но хотите следовать инструкциям, просто ищите информацию в Google по ходу дела; это не так уж и сложно.

Библиотеки для установки:

bitcoinlib — для работы с биткоином и его производными.

web3.py — для сетей, совместимых с Ethereum и EVM.
· мнемоническое правило — для генерации мнемонических фраз (те же 12-24 слова, которые используются для восстановления кошельков).

Всё устанавливается одной командой:

```
pip install bitcoinlib web3 mnemonic
```

Если возникают ошибки, возможно, потребуется установить что-то ещё, но обычно проблем не возникает.

Как создать биткойн-кошельки

Начнём с Биткоина, потому что это классика. Вот пример функции, которая создаёт один кошелёк:

```python
from bitcoinlib.keys import Key
from bitcoinlib.mnemonic import Mnemonic

def create_bitcoin_wallet():
# Сгенерировать мнемоническое слово из 12 слов
mnemo = Mnemonic()
seed_phrase = mnemo.generate()

# Создать ключ из этого начального значения
key = Key.from_mnemonic(seed_phrase)

# Получение закрытого ключа в формате WIF
private_key_wif = key.as_WIF()

# Получить адрес кошелька
адрес = ключ.адрес()

print(f"Мнемоническое начальное значение: {начальная_фраза}")
print(f"Закрытый ключ (WIF): {private_key_wif}")
print(f"Адрес биткоина: {адрес}")

возвращаться {
"seed_phrase": seed_phrase,
"private_key_wif": private_key_wif,
"адрес": адрес
}
```

Что здесь происходит:

· Функция Mnemonic().generate() создает случайную фразу из 12 слов. Ее можно использовать для восстановления кошелька в любом обычном приложении.
· Key.from_mnemonic(seed_phrase) преобразует эту фразу в ключи.
· Функция key.as_WIF() создает закрытый ключ в формате WIF (Wallet Import Format). Этот ключ можно импортировать в большинство кошельков.
· key.address() — это адрес, который вы сообщаете людям, чтобы они могли отправлять вам биткоины.

Как сгенерировать кошельки Ethereum

С Ethereum ситуация несколько иная, но всё ещё несложная.

```python
from eth_account import Account
from eth_account.signers.local import LocalAccount

def create_ethereum_wallet():
# Включить поддержку HD-кошельков
Account.enable_unaudited_hdwallet_features()
# Сгенерируйте фразу и создайте учетную запись
account, mnemonic_phrase = Account.from_mnemonic(
мнемоника = Account.generate_mnemonic(),
account_path="m/44'/60'/0'/0/0"
)

# Получение закрытого ключа в шестнадцатеричном формате
private_key = account.key.hex()

# Получение адреса Ethereum
адрес = account.address

print(f"Субъективная фраза: {мнемоника}")
print(f"Приватный ключ (HEX): {private_key}")
print(f"Адрес Ethereum: {address}")

возвращаться {
"seed_phrase": mnemonic_phrase,
"private_key": private_key,
"адрес": адрес
}
```

Здесь нюансы:

Account.enable_unaudited_hdwallet_features() — включает экспериментальные функции. Лучше подробнее изучить это в рабочей среде, но для домашнего использования вполне подойдет.

account_path — это путь BIP-44 для Ethereum. Он необходим для генерации нескольких адресов из одной мнемонической фразы.

Здесь закрытый ключ представлен в шестнадцатеричном формате, а не в формате WIF, как в Биткоине.

Объединяя все это в одном боте.

Теперь, когда у нас есть функции для создания отдельных кошельков, мы можем создать полноценного бота, который будет создавать их партиями и сохранять в файл.

```python
импорт json
from bitcoinlib.keys import Key
from bitcoinlib.mnemonic import Mnemonic
from eth_account import Account

def create_bitcoin_wallet():
mnemo = Mnemonic()
seed_phrase = mnemo.generate()
key = Key.from_mnemonic(seed_phrase)
private_key_wif = key.as_WIF()
адрес = ключ.адрес()
return {"type": "bitcoin", "seed_phrase": seed_phrase, "private_key": private_key_wif, "address": address}

def create_ethereum_wallet():
Account.enable_unaudited_hdwallet_features()
account, mnemonic_phrase = Account.from_mnemonic(
мнемоника = Account.generate_mnemonic(),
account_path="m/44'/60'/0'/0/0"
)
private_key = account.key.hex()
адрес = account.address
return {"type": "ethereum", "seed_phrase": mnemonic_phrase, "private_key": private_key, "address": address}

def generate_wallets(num_bitcoin=1, num_ethereum=1, output_file="wallets.json"):
все_кошельки = []

print(f"Генерация {num_bitcoin} биткоин-кошельков...")
for i in range(num_bitcoin):
wallet = create_bitcoin_wallet()
all_wallets.append(wallet)
print(f" {i+1}. BTC: {wallet['address']}")

print(f"\nГенерация кошельков Ethereum {num_ethereum}...")
for i in range(num_ethereum):
wallet = create_ethereum_wallet()
all_wallets.append(wallet)
print(f" {i+1}. ETH: {wallet['address']}")

# Сохранение в JSON
with open(output_file, 'w') as f:
json.dump(all_wallets, f, indent=4)

print(f"\nГотово! Кошельки сохранены в файл {output_file}")

если __name__ == "__main__":
print("=== Генератор криптовалютных кошельков ===\n")

пытаться:
btc_count = int(input("Сколько биткоин-кошельков вам нужно?"))
eth_count = int(input("Сколько кошельков Ethereum вам нужно?"))
filename = input("Имя файла для сохранения (по умолчанию: wallets.json): ") или "wallets.json"

generate_wallets(num_bitcoin=btc_count, num_ethereum=eth_count, output_file=filename)
except ValueError:
print("Ошибка: необходимо ввести цифры, а не буквы")
за исключением исключения как e:
print(f"Что-то пошло не так: {e}")
```

Он прост в использовании.

Сохраните код в файл, например, wallet_bot.py. Запустите его в терминале:

```
python wallet_bot.py
```

Затем программа запросит, сколько биткоин-кошельков нужно сгенерировать, сколько эфириум-кошельков и в какой файл сохранить результат.

После выполнения команды появится JSON-файл со следующим содержимым:

```json
[
{
"type": "bitcoin",
"seed_phrase": "abandon abandon apple banana ...",
"private_key": "L1HKjfajsdf...",
"address": "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa"
},
{
"type": "ethereum",
"seed_phrase": "еще двенадцать слов здесь...",
"private_key": "0x1234abcd...",
"адрес": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e"
}
]
```

Что еще можно добавить?

Этот бот — базовая модель. Его можно расширять в соответствии с вашими потребностями.

Генерация на основе пароля. Вы можете настроить детерминированное (на основе пароля) создание кошельков, а не случайное. Это удобно, если вам нужно восстановить все кошельки с помощью одного мастер-ключа.

Поддерживаются и другие криптовалюты: TRON, Solana и различные токены стандарта ERC-20. Каждая сеть имеет свои собственные библиотеки.

Шифрование файла с результатами. Вместо простого JSON можно сохранить все данные в зашифрованном виде, чтобы закрытые ключи не были доступны в открытом виде.

Интеграция с базой данных. Если у вас много кошельков, удобнее хранить их в SQLite или PostgreSQL, а не в файле.

Мои подводные камни

Я совершил большую ошибку, поэтому рассказываю вам об этом, чтобы вы не повторяли её.

Ошибка 1: Когда я впервые запустил скрипт, я забыл, что закрытые ключи выводятся в консоль. Я показывал его другу, и он, внимательный наблюдатель, спросил: «Почему ты выставляешь закрытые ключи по всему экрану?» Мне пришлось переделать.

Проблема 2. Я думал, что мнемоническая фраза не так важна, важнее закрытый ключ. Потом я узнал, что с помощью этой фразы можно восстановить все ключи в той же цепочке. Теперь я храню и саму фразу.

Проблема 3. Я сохранил результаты в неструктурированный текстовый файл. Анализ этих логов оказался сложной задачей. Я переключился на формат JSON.

Проблема 4. Я забыл, что закрытый ключ Ethereum находится в шестнадцатеричном формате, и попытался импортировать его в биткоин-кошелек. Естественно, ничего не получилось.

Проблема 5. Я сгенерировал кошельки на виртуальной машине, а затем удалил виртуальную машину. Вместе со всеми ключами. Хорошо, что это были тестовые ключи.

Важные замечания по безопасности

Несколько вещей, которые следует всегда помнить.

Никогда не храните закрытые ключи в открытом виде. На диске, в облаке или в заметках телефона. Если кто-то получит доступ к файлу кошелька, вы потеряете все.

Никогда не вводите закрытые ключи на веб-сайтах, даже если сайт выглядит как официальный кошелек. Скопируйте их и немедленно удалите из буфера обмена.

Никогда не создавайте ключи на компьютерах, которые могут быть заражены. Если в них есть троянская программа, она может украсть все, что вы создадите.

Всегда создавайте резервные копии. Флешка, лист бумаги и зашифрованный файл в облаке.

Кратко по теме

Написать собственного бота для генерации криптовалютных кошельков не так сложно, как кажется. Готовые библиотеки выполняют всю сложную работу; вам нужно лишь скомпоновать их.

Для Bitcoin используйте bitcoinlib, а для Ethereum — eth_account. Добавьте генерацию мнемонических фраз, упакуйте их в циклы и сохраните в формате JSON.

Главное – помните о безопасности. Ваши ключи – это ваши деньги. Обращайтесь к ним соответствующим образом.
[/ЛАЙКИ]
 
View attachment 4785
[ME GUSTA=5]
Además, muchos de ellos están en una situación real. No es necesario configurar muchas cosas para el proyecto, la ejecución, la prueba o el procedimiento. Создание их вручную каждый раз через какой-либо веб-сайт — это трудоемкий and утомительный процесс. А ввод закрытых ключей через веб-формы даже не рассматривается — никогда не знаешь, кто их запомнит.

Я сам через это прошёл, когда мне нужно было создать около пятидесяти кошельков для одного эксперимента. Además, estos servicios, otras máquinas de escribir son opcionales, no están disponibles en ningún sitio, no están disponibles, ni están disponibles. не работал. Мне пришлось самому разобраться and написать собственного бота. Tenga en cuenta que esto no es necesario para esto.

¿Qué criptomoneda y qué tipo de persona tiene?

Antes de utilizar el código, no debe ponerlo en contacto con mi generador. Криптокошелек — это не какой-то файл на вашем диске. Esto es lo que hay que hacer con un clic: un clic cerrado y otro clic.

Ваш закрытый ключ — это ваш секрет. Para ello, podemos controlar nuestras monedas. Вам необходимо хранить его в тайне.

Ваш открытый ключ и адрес кошелька — это то, что вы можете показать другим, чтобы они могли отправлять вам деньги. La dirección formada es una clave cerrada con prescripciones criptográficas rápidas.

По сути, создание кошелька — это просто генерация случайного числа (приватного ключа) и вычисление всего остального на его основе. Bitcoin utiliza el algoritmo ECDSA y Ethereum: un algoritmo analógico, sin ningún otro algoritmo.

Что нам понадобится для создания бота

Мы будем писать код on Python, потому что это простой язык, and для него существует множество готовых библиотек. Si no utiliza Python, no siga las instrucciones, aquí hay información en Google sobre este tema; это не так уж сложно.

Bibliotecas de los usuarios:

bitcoinlib — para robots con bitcoins y его производными.

web3.py: un conjunto de sitios web integrados con Ethereum y EVM.
· мнемоническое правило — для генерации мнемонических фраз (те же 12-24 слова, которые используются для восстановления кошельков).

Всё устанавливается одной командой:

```
pip install bitcoinlib web3 mnemónico
```

Si se escuchan mensajes de texto, no hay ningún problema con los mensajes.

Как создать биткойн-кошельки

Начнём с Биткоина, потому что это классика. Las primeras funciones son las siguientes:

```python
from bitcoinlib.keys import Key
from bitcoinlib.mnemonic import Mnemonic

def crear_billetera_bitcoin():
# Сгенерировать мнемоническое слово из 12 слов
mnemo = Mnemotecnia()
frase_semilla = mnemo.generate()

# Создать ключ из этого начального значения
clave = Clave.from_mnemonic(frase_semilla)

# Получение закрытого ключа в formate WIF
private_key_wif = key.as_WIF()

# Получить адрес кошелька
адрес = ключ.адрес()

print(f"Мнемоническое начальное значение: {начальная_фраза}")
print(f"Закрытый ключ (WIF): {private_key_wif}")
print(f"Адрес биткоина: {адрес}")

возвращаться {
"seed_phrase": seed_phrase,
"private_key_wif": private_key_wif,
"адрес": адрес
}
```

Что здесь происходит:

· Функция Mnemonic().generate() создает случайную фразу из 12 слов. Ее можно использовать для восстановления кошелька в любом обычном приложении.
· Key.from_mnemonic(seed_phrase) преобразует эту фразу в ключи.
· Функция key.as_WIF() создает закрытый ключ в формате WIF (Wallet Import Format). Этот ключ можно импортировать в большинство кошельков.
· key.address() — это адрес, который вы сообщаете людям, чтобы они могли отправлять вам биткоины.

Как сгенерировать кошельки Ethereum

С Ethereum ситуация несколько иная, но всё ещё несложная.

```python
from eth_account import Account
from eth_account.signers.local import LocalAccount

def create_ethereum_wallet():
# Включить поддержку HD-кошельков
Account.enable_unaudited_hdwallet_features()
# Сгенерируйте фразу и создайте учетную запись
account, mnemonic_phrase = Account.from_mnemonic(
мнемоника = Account.generate_mnemonic(),
account_path="m/44'/60'/0'/0/0"
)

# Получение закрытого ключа в шестнадцатеричном формате
private_key = account.key.hex()

# Получение адреса Ethereum
адрес = account.address

print(f"Субъективная фраза: {мнемоника}")
print(f"Приватный ключ (HEX): {private_key}")
print(f"Адрес Ethereum: {address}")

возвращаться {
"seed_phrase": mnemonic_phrase,
"private_key": private_key,
"адрес": адрес
}
```

Здесь нюансы:

Account.enable_unaudited_hdwallet_features() — включает экспериментальные функции. Лучше подробнее изучить это в рабочей среде, но для домашнего использования вполне подойдет.

account_path — это путь BIP-44 для Ethereum. Он необходим для генерации нескольких адресов из одной мнемонической фразы.

Здесь закрытый ключ представлен в шестнадцатеричном формате, а не в формате WIF, как в Биткоине.

Объединяя все это в одном боте.

Теперь, когда у нас есть функции для создания отдельных кошельков, мы можем создать полноценного бота, который будет создавать их партиями и сохранять в файл.

```python
импорт json
from bitcoinlib.keys import Key
from bitcoinlib.mnemonic import Mnemonic
from eth_account import Account

def create_bitcoin_wallet():
mnemo = Mnemonic()
seed_phrase = mnemo.generate()
key = Key.from_mnemonic(seed_phrase)
private_key_wif = key.as_WIF()
адрес = ключ.адрес()
return {"type": "bitcoin", "seed_phrase": seed_phrase, "private_key": private_key_wif, "address": address}

def create_ethereum_wallet():
Account.enable_unaudited_hdwallet_features()
account, mnemonic_phrase = Account.from_mnemonic(
мнемоника = Account.generate_mnemonic(),
account_path="m/44'/60'/0'/0/0"
)
private_key = account.key.hex()
адрес = account.address
return {"type": "ethereum", "seed_phrase": mnemonic_phrase, "private_key": private_key, "address": address}

def generate_wallets(num_bitcoin=1, num_ethereum=1, output_file="wallets.json"):
все_кошельки = []

print(f"Генерация {num_bitcoin} биткоин-кошельков...")
for i in range(num_bitcoin):
wallet = create_bitcoin_wallet()
all_wallets.append(wallet)
print(f" {i+1}. BTC: {wallet['address']}")

print(f"\nГенерация кошельков Ethereum {num_ethereum}...")
for i in range(num_ethereum):
wallet = create_ethereum_wallet()
all_wallets.append(wallet)
print(f" {i+1}. ETH: {wallet['address']}")

# Сохранение в JSON
with open(output_file, 'w') as f:
json.dump(all_wallets, f, indent=4)

print(f"\nГотово! Кошельки сохранены в файл {output_file}")

если __name__ == "__main__":
print("=== Генератор криптовалютных кошельков ===\n")

пытаться:
btc_count = int(input("Сколько биткоин-кошельков вам нужно?"))
eth_count = int(input("Сколько кошельков Ethereum вам нужно?"))
filename = input("Имя файла для сохранения (по умолчанию: wallets.json): ") или "wallets.json"

generate_wallets(num_bitcoin=btc_count, num_ethereum=eth_count, output_file=filename)
except ValueError:
print("Ошибка: необходимо ввести цифры, а не буквы")
за исключением исключения как e:
print(f"Что-то пошло не так: {e}")
```

Он прост в использовании.

Сохраните код в файл, например, wallet_bot.py. Запустите его в терминале:

```
python wallet_bot.py
```

Затем программа запросит, сколько биткоин-кошельков нужно сгенерировать, сколько эфириум-кошельков и в какой файл сохранить результат.

После выполнения команды появится JSON-файл со следующим содержимым:

```json
[
{
"type": "bitcoin",
"seed_phrase": "abandon abandon apple banana ...",
"private_key": "L1HKjfajsdf...",
"address": "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa"
},
{
"type": "ethereum",
"seed_phrase": "еще двенадцать слов здесь...",
"private_key": "0x1234abcd...",
"адрес": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e"
}
]
```

Что еще можно добавить?

Этот бот — базовая модель. Его можно расширять в соответствии с вашими потребностями.

Генерация на основе пароля. Вы можете настроить детерминированное (на основе пароля) создание кошельков, а не случайное. Это удобно, если вам нужно восстановить все кошельки с помощью одного мастер-ключа.

Поддерживаются и другие криптовалюты: TRON, Solana и различные токены стандарта ERC-20. Каждая сеть имеет свои собственные библиотеки.

Шифрование файла с результатами. Вместо простого JSON можно сохранить все данные в зашифрованном виде, чтобы закрытые ключи не были доступны в открытом виде.

Интеграция с базой данных. Если у вас много кошельков, удобнее хранить их в SQLite или PostgreSQL, а не в файле.

Мои подводные камни

Я совершил большую ошибку, поэтому рассказываю вам об этом, чтобы вы не повторяли её.

Ошибка 1: Когда я впервые запустил скрипт, я забыл, что закрытые ключи выводятся в консоль. Я показывал его другу, и он, внимательный наблюдатель, спросил: «Почему ты выставляешь закрытые ключи по всему экрану?» Мне пришлось переделать.

Проблема 2. Я думал, что мнемоническая фраза не так важна, важнее закрытый ключ. Потом я узнал, что с помощью этой фразы можно восстановить все ключи в той же цепочке. Теперь я храню и саму фразу.

Problema 3. Я сохранил результаты в неструктурированный текстовый файл. Analice estos logotipos según la velocidad del usuario. Utilice el formato JSON.

Problema 4. Cuando se almacena, el cierre de seguridad de Ethereum se encuentra en el formato actual y se importa de forma popular. биткоин-кошелек. Естественно, ничего не получилось.

Problema 5. Si utiliza máquinas virtuales en una máquina virtual, ya no hay una máquina virtual. Вместе со всеми ключами. Bueno, esto es lo que hay que hacer.

Важные замечания по безопасности

Несколько вещей, которые следует всегда помнить.

Nikogda не храните закрытые ключи в открытом виде. На disco, в облаке о в заметках телефона. Если кто-то получит доступ к файлу кошелька, вы потеряете все.

No utilice llaves seguras en ningún aparato, ya que debe utilizar una combinación oficial. La limpieza y la limpieza no son necesarias.

No coloque llaves en los ordenadores, ya que es posible que estén encendidas. Si no hay ningún programa de este tipo, es posible que haya un problema con este programa.

Всегда создавайте резервные копии. Флешка, лист бумаги и зашифрованный файл в облаке.

Кратко по теме

Asegúrese de que el dispositivo de generación de criptomonedas no se bloquee, ya que no se puede utilizar. Las bibliotecas выполняют всю сложную работу; вам нужно лишь скомпоновать их.

Para Bitcoin utiliza bitcoinlib y para Ethereum: eth_account. Genere frases mnemotécnicas, actualícelas en ciclos y sofránelas en formato JSON.

Главное – помните о безопасности. Ваши ключи – это ваши деньги. Обращайтесь к ним соответствующим образом.
[/ME GUSTA]
esta mierda es una perdida de tiempo, para que perder el tiempo con esta basura hermano?
 
Top Bottom