5.7 KiB
5.7 KiB
Diagnóstico de Ambiente e Resolução de Problemas
Guia de Auto-Teste, Checklist de Integridade de Runtime e Troubleshooting de Hardware
O CyberCore Signer conta com um subsistema nativo de diagnóstico e telemetria local (DiagnosticService), projetado para validar a integridade da estação de trabalho e identificar rapidamente falhas de drivers, certificados ou subsistemas criptográficos do sistema operacional.
1. Itens Inspecionados pelo Diagnóstico Automático
Ao acessar a aba Diagnóstico na interface do agente desktop ou ao inicializar em modo --dev, o agente executa uma auditoria completa nos seguintes componentes:
- Ambiente Java / Runtime Nativo:
- Versão do Java (requer Java 21+ LTS, homologado em Java 25 LTS);
- Vendor do JDK (Eclipse Temurin, Oracle OpenJDK, Amazon Corretto);
- Arquitetura da CPU (x86_64 / amd64) e sistema operacional (Windows 10/11 ou Linux).
- Engine Criptográfica JCA/JCE:
- Disponibilidade dos provedores de segurança registrados na JVM (
SUN,SunRsaSign,SunMSCAPI, etc.); - Suporte aos algoritmos de hash criptográfico (
SHA-256,SHA-512); - Suporte aos algoritmos de assinatura digital (
SHA256withRSA).
- Disponibilidade dos provedores de segurança registrados na JVM (
- Repositório de Certificados do Sistema Operacional:
- Detecção do repositório de chaves
Windows-MYvia SunMSCAPI / CryptoAPI / CNG.
- Detecção do repositório de chaves
- Middlewares PKCS#11 e Subsistema PC/SC:
- Presença das bibliotecas dinâmicas do fabricante (
aetpkss1.dll,eps2003csp11.dll,acospkcs11.dll,opensc-pkcs11.dll); - Disponibilidade do subsistema de leitoras de smartcard
javax.smartcardio(PC/SC Daemon / Smart Card Service do Windows).
- Presença das bibliotecas dinâmicas do fabricante (
- Servidor Local CCSP/1:
- Teste de bind do socket em
127.0.0.1:21325e integridade do pool de threads.
- Teste de bind do socket em
2. Auto-Teste de Assinatura Local (Self-Test)
A tela de diagnóstico oferece a função "Executar Auto-teste de Assinatura":
- O agente identifica o primeiro certificado digital operacional conectado.
- Gera um hash SHA-256 interno sintético para teste:
"Documento_Teste_CyberCore_<timestamp>". - Abre o diálogo nativo de confirmação visual para validação do usuário.
- Executa a assinatura real através do provedor JCA/JCE correspondente (solicitando PIN se A3).
- Valida os bytes da assinatura gerada e emite relatório com tempo decorrido em milissegundos e tamanho da assinatura.
3. Guia de Resolução de Problemas (Troubleshooting)
3.1 Token USB ou Smartcard A3 não é detectado
- Sintoma: O token está plugado na porta USB mas não aparece no CyberCore nem na lista de certificados.
- Causa Comum: O serviço de cartão inteligente do Windows (
ScardSvr) está desativado ou o middleware do fabricante (SafeSign/SafeNet) não está instalado. - Solução:
- No Windows, pressione
Win + R, digiteservices.msce pressione Enter. - Localize o serviço Cartão Inteligente (Smart Card) e garanta que seu status esteja Em Execução (Tipo de Inicialização: Automático).
- Verifique se o aplicativo de gerenciamento do token (ex: SafeSign Token Utility ou SafeNet Authentication Client Tools) reconhece o token.
- Desconecte o token USB, aguarde 3 segundos e reconecte em outra porta USB.
- No Windows, pressione
3.2 Erro NTE_BAD_KEYSET ou Chave Privada Não Acessível
- Sintoma: O certificado aparece na lista, mas a assinatura falha com erro
PRIVATE_KEY_NOT_AVAILABLEou código Windows0x80090016. - Causa Comum: O certificado foi importado no Windows sem a chave privada correspondente, ou o usuário não tem permissão de leitura sobre o contêiner de chaves.
- Solução:
- Abra o gerenciador de certificados do Windows:
certmgr.msc. - Navegue até Pessoal -> Certificados e dê um duplo clique sobre o certificado.
- Verifique se na parte inferior da aba Geral consta a mensagem: "Você tem uma chave privada correspondente a este certificado". Se não constar, reinstale o arquivo A1 com a opção "Marcar esta chave como exportável" ativada.
- Abra o gerenciador de certificados do Windows:
3.3 Porta local 21325 já em uso (BindException)
- Sintoma: O CyberCore Signer não inicializa e os logs acusam
Address already in use: bind. - Causa Comum: Outra instância do CyberCore Signer ou aplicativo conflitante já está em execução na porta
21325. - Solução:
- No Windows, abra o Gerenciador de Tarefas (
Ctrl + Shift + Esc) e encerre eventuais processoscybercore-signeroujavaw.exeórfãos. - No terminal (PowerShell), você pode identificar o processo ocupando a porta:
Get-NetTCPConnection -LocalPort 21325 | Select-Object OwningProcess - No Linux:
sudo lsof -i :21325
- No Windows, abra o Gerenciador de Tarefas (
3.4 Aplicação Web acusa "Agente não instalado" ou Falha de Conexão
- Sintoma: A chamada
signer.isInstalled()no navegador retornafalseou dá timeout. - Causa Comum: O CyberCore Signer está fechado, o antivírus bloqueou a conexão loopback local, ou a aplicação web tenta conectar com protocolo incorreto.
- Solução:
- Verifique se o ícone do CyberCore Signer está ativo na barra de tarefas (System Tray).
- Abra uma nova aba no navegador e acesse diretamente:
http://127.0.0.1:21325/ccsp/v1/status. - O navegador deve exibir o JSON com
"status": "ready". Se não exibir, abra o executável do CyberCore Signer.
4. Comandos Úteis de Diagnóstico no Terminal
No Windows:
:: Testar leitura de smartcards e drivers via utilitário nativo do Windows:
certutil -scinfo
:: Listar certificados instalados no repositório Pessoal do usuário:
certutil -user -store My
No Linux:
:: Verificar leitoras e cartões conectados via subsistema PC/SC:
pcsc_scan
:: Verificar status do serviço pcscd:
systemctl status pcscd