Skip to content
Open
Changes from 1 commit
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
2c10950
Atualizando o projeto para Jupiter: inclusão de server.py, worker.py …
ROBKEN2014 Feb 15, 2025
18ebab4
Atualiza projeto para Jupiter com server, worker, .gitignore e Procfile
ROBKEN2014 Feb 16, 2025
fd72b49
Update README.md
ROBKEN2014 Feb 16, 2025
54f6983
Remove py-ellipticcurve from requirements (not available on PyPI)
ROBKEN2014 Feb 16, 2025
2be2a3e
Atualiza worker.py com as novas modificações
ROBKEN2014 Feb 16, 2025
8a14362
Atualiza worker.py: Divide a tarefa entre os núcleos e adiciona barra…
ROBKEN2014 Feb 16, 2025
0d2495a
Reverte para estratégia original (Plutus) e remove delay no worker
ROBKEN2014 Feb 16, 2025
85f4964
Atualiza server.py: TASK_SIZE para 10000 e rotas atualizadas (Projeto…
ROBKEN2014 Feb 16, 2025
cef08eb
Reorganiza estrutura: separa pastas server e worker, move database pa…
ROBKEN2014 Feb 16, 2025
c146836
Reorganiza estrutura: separa pastas server e worker, move database pa…
ROBKEN2014 Feb 16, 2025
3d2688b
Adiciona requirements na pasta worker
ROBKEN2014 Feb 16, 2025
467ab68
Atualiza Procfile para usar arquivos da pasta server
ROBKEN2014 Feb 16, 2025
3714a14
Atualiza Procfile para usar arquivos da pasta server
ROBKEN2014 Feb 16, 2025
d024b2c
Atualiza Procfile para deployment via subtree (remove cd server &&)
ROBKEN2014 Feb 16, 2025
cf66f87
Atualiza Procfile para deployment via subtree (remove cd server &&)
ROBKEN2014 Feb 16, 2025
126150d
Atualiza worker.py para solicitar tarefas do servidor e reportar conc…
ROBKEN2014 Feb 16, 2025
ffdc94d
Atualiza worker.py: solicita tarefas do servidor, processa e reporta …
ROBKEN2014 Feb 16, 2025
2b6b9f9
Atualiza TASK_SIZE para 1 milhão candidatos por tarefa (Projeto Jupiter)
ROBKEN2014 Feb 16, 2025
ed707ba
Atualiza TASK_SIZE para 1 milhão candidatos por tarefa (Projeto Jupiter)
ROBKEN2014 Feb 16, 2025
c89da51
Atualiza worker.py: solicita tarefas do servidor, processa 1 milhão d…
ROBKEN2014 Feb 16, 2025
dff5eee
Atualiza worker.py: divide range de 1 milhão entre todos os núcleos, …
ROBKEN2014 Feb 17, 2025
511b003
atualiza o readme
ROBKEN2014 Feb 17, 2025
4ab6cca
Atualiza create_tables.py e requirements.txt para integração com Hero…
ROBKEN2014 Feb 18, 2025
e893c20
Merge branch 'main' of https://git.heroku.com/jupiter
ROBKEN2014 Feb 18, 2025
b9125d4
Atualiza .gitignore para ignorar pasta(s) desnecessária(s) para o dep…
ROBKEN2014 Feb 18, 2025
0ef4735
Remove arquivos desnecessários para o deploy
ROBKEN2014 Feb 18, 2025
990451a
Adiciona .slugignore para ignorar a pasta worker no deploy do Heroku
ROBKEN2014 Feb 18, 2025
3c43c6f
Adiciona atualizacao gitignore
ROBKEN2014 Feb 18, 2025
c5c90f3
Atualiza requirements.txt e demais alterações
ROBKEN2014 Feb 18, 2025
20b977a
Atualiza requirements.txt e demais alterações
ROBKEN2014 Feb 18, 2025
3795aac
Update server.py: Added SQLAlchemy integration and task distribution …
ROBKEN2014 Feb 18, 2025
6e986de
Define runtime.txt with python-3.12.2 to ensure compatibility with ps…
ROBKEN2014 Feb 18, 2025
2725086
Define runtime.txt with python-3.12.2 to fix psycopg2 compatibility i…
ROBKEN2014 Feb 19, 2025
91e207e
Move Procfile to root for Heroku deploy
ROBKEN2014 Feb 19, 2025
5031b6f
Move runtime.txt, requirements.txt e Procfile para a pasta server
ROBKEN2014 Feb 19, 2025
41cbf13
Create README.md
ROBKEN2014 Feb 19, 2025
3dd4b88
Update README.md
ROBKEN2014 Feb 19, 2025
7d7be8b
Update README.md
ROBKEN2014 Feb 19, 2025
aeea256
Update README.md
ROBKEN2014 Feb 19, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Atualiza worker.py: solicita tarefas do servidor, processa e reporta …
…conclusão (versão interativa)
  • Loading branch information
ROBKEN2014 committed Feb 16, 2025
commit ffdc94dc52288b217a649c206614457f1f6c3524
11 changes: 8 additions & 3 deletions worker/worker.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,10 @@
SERVER_URL = "https://jupiter-55e84f25b2dc.herokuapp.com" # URL do servidor

def generate_private_key_with_task(candidate):
"""Gera uma chave privada de 32 bytes (256 bits): 27 bytes aleatórios + 5 bytes do candidate."""
"""
Gera uma chave privada de 32 bytes (256 bits):
27 bytes aleatórios + 5 bytes representando o candidate (big-endian).
"""
suffix = candidate.to_bytes(5, 'big')
random_part = os.urandom(27)
return binascii.hexlify(random_part + suffix).decode('utf-8').upper()
Expand Down Expand Up @@ -74,7 +77,7 @@ def private_key_to_wif(private_key):
pad += 1
else:
break
return alphabet[0]*pad + result
return alphabet[0] * pad + result

def load_database(substring_length):
"""
Expand Down Expand Up @@ -102,7 +105,7 @@ def load_database(substring_length):

def process_subrange(sub_start, sub_end, processed_counter, substring, database, verbose):
"""
Processa candidatos no subrange:
Processa os candidatos no subrange:
- Gera chave privada, converte para chave pública e endereço.
- Verifica se os últimos caracteres do endereço estão no banco de dados.
- Se houver correspondência, envia os dados para o servidor (endpoint /found).
Expand Down Expand Up @@ -132,6 +135,7 @@ def process_subrange(sub_start, sub_end, processed_counter, substring, database,
print("Erro ao reportar resultado:", e)
with processed_counter.get_lock():
processed_counter.value += 1
# Sem delay para manter a eficiência

def display_progress(processed_counter, total, step=5):
"""
Expand Down Expand Up @@ -275,4 +279,5 @@ def print_help():
print("Database size:", len(database))
print("Processos iniciados:", args["cpu_count"])

# Executa o loop principal do worker
worker_main(database, args)