Problema identificado:
- ❌ Caminhos de usuário específicos hardcoded (
C:\Users\diogo\) - ❌ Informações pessoais em arquivos de configuração
Soluções aplicadas:
- ✅ Uso de variáveis de ambiente (
${env:USERPROFILE}) - ✅
.gitignoreatualizado - ✅ Documentação atualizada sem informações pessoais
plutus.json # Gerado por 'aiken build'
artifacts/ # Arquivos compilados
build/ # Diretório de build
packages/ # Dependências baixadas
.vscode/*.local.json # Configurações locais do usuário
.vscode/settings.local.json # Settings específicos
.env # Variáveis de ambiente
.env.local # Variáveis locais
.env.*.local # Variáveis por ambiente
*.secret # Qualquer arquivo .secret
secrets/ # Diretório de segredos
private/ # Diretório privado
*.log # Arquivos de log
logs/ # Diretório de logs
.vscode/* (exceto settings.json, extensions.json, tasks.json)
.idea/
*.swp, *.swo, *~
.DS_Store # macOS
Thumbs.db # Windows
*.tmp, *.temp # Temporários
*.bak, *.backup # Backups
-
Use variáveis de ambiente
// BOM ✅ "aiken.aikenPath": "${env:USERPROFILE}\\.cargo\\bin\\aiken.exe" // RUIM ❌ "aiken.aikenPath": "C:\\Users\\seu_nome\\.cargo\\bin\\aiken.exe"
-
Mantenha segredos em arquivos .env
# .env (NÃO commitar!) API_KEY=sua_chave_secreta PRIVATE_KEY=sua_chave_privada -
Use arquivos .example para templates
.env.example ✅ Commitar (sem valores reais) .env ❌ NÃO commitar (com valores reais) settings.local.example ✅ Commitar (template) settings.local.json ❌ NÃO commitar (configurações pessoais)
-
Não commitar:
- ❌ Senhas
- ❌ Chaves privadas/API keys
- ❌ Tokens de acesso
- ❌ Caminhos de usuário específicos
- ❌ Dados pessoais (email, nome de usuário)
- ❌ Credenciais de blockchain (seeds, private keys)
-
Não usar valores hardcoded:
// RUIM ❌ const apiKey = "1234567890abcdef"; const walletSeed = "palavra1 palavra2 palavra3..."; // BOM ✅ const apiKey = process.env.API_KEY; const walletSeed = process.env.WALLET_SEED;
git diff
git diff --cachedgit status# Instalar git-secrets
# https://github.com/awslabs/git-secrets
git secrets --install
git secrets --register-aws- Removi todos os dados pessoais?
- Usei variáveis de ambiente?
- Arquivos .env estão no .gitignore?
- Nenhuma senha ou chave no código?
- Caminhos são genéricos (não específicos de usuário)?
# Editar o arquivo e remover a informação sensível
# Depois:
git add .
git commit --amend --no-edit# Usar BFG Repo Cleaner ou git filter-branch
# ATENÇÃO: Reescreve a história do git!
# BFG (recomendado)
java -jar bfg.jar --delete-files *.secret
git reflog expire --expire=now --all
git gc --prune=now --aggressiveSe você commitou:
- Senhas → Altere imediatamente
- API Keys → Revogue e gere novas
- Private Keys → Gere novas chaves
- Tokens → Revogue e crie novos
projeto/
├── .env.example # Template (commitar)
├── .env # Valores reais (NÃO commitar)
├── .gitignore # Configurado corretamente
├── .vscode/
│ ├── settings.json # Configurações compartilhadas (commitar)
│ ├── settings.local.json # Configurações pessoais (NÃO commitar)
│ └── settings.local.example # Template (commitar)
└── secrets/ # (NÃO commitar - todo o diretório)
-
Seed Phrases / Mnemonic
- 12 ou 24 palavras da carteira
- Essencial para recuperação da carteira
-
Private Keys
- Chaves privadas de assinatura
- Chaves de endereços
-
Stake Pool Keys
- KES keys
- VRF keys
- Cold keys
-
Certificados
- Certificados de stake pool
- Certificados operacionais
-
Hardware Wallet (recomendado)
- Ledger
- Trezor
-
Encrypted Storage
- KeePass
- 1Password
- Bitwarden
-
Offline Storage
- Paper wallet (backup físico)
- USB criptografado
Última verificação: 10 de Novembro de 2025 Status: ✅ Sem informações sensíveis detectadas Arquivos sensíveis protegidos: ✅ .gitignore atualizado