Files
cybercore-signer/docs
..

Documentação Técnica — CyberCore Signer

Índice Unificado e Guias Técnicos do Agente Desktop e Protocolo CCSP

Bem-vindo à documentação oficial do CyberCore Signer. O agente foi desenvolvido em Java 25 LTS com interface JavaFX e segurança criptográfica nativa JCA/JCE, permitindo que aplicações web autorizadas realizem operações de assinatura digital e autenticação com certificados ICP-Brasil (A1 em arquivo e A3 em tokens/smartcards físicos) mantendo as chaves privadas estritamente no dispositivo do usuário.


🗺️ Trilhas de Navegação por Perfil

Para facilitar a consulta, os documentos estão organizados de acordo com o seu perfil de atuação:

🌐 1. Para Desenvolvedores Web e Integradores

Se você desenvolve aplicações web (frontend/backend) que precisam interagir com o agente do usuário:


☕ 2. Para Desenvolvedores Desktop e Contribuidores

Se você atua no desenvolvimento, manutenção ou auditoria do código-fonte do agente desktop:

  • Arquitetura do Sistema: Organização modular Maven (cybercore-core, cybercore-ui, cybercore-app), fluxo de dados por digest, modelo de concorrência com fila FIFO (signLock) e isolamento de dependências.
  • Certificados A1, A3 e PKCS#11: Funcionamento dos provedores Pkcs12CertificateProvider, WindowsCertificateStoreProvider (SunMSCAPI/CNG) e Pkcs11CertificateProvider (SunPKCS11), monitoramento dinâmico PC/SC (SmartCardWatcher) e extração de OIDs ICP-Brasil.
  • Assinaturas PDF (PAdES) e Selos Visuais SVG: Motor de assinatura PDFBox + Bouncy Castle, salvamento incremental, renderização de alta resolução (300 DPI Java2D) e gerenciamento de selos digitais.
  • Assinaturas XML (XAdES-BES e XMLDSig): Conformidade com o padrão ETSI TS 101 903 / DOC-ICP-15.03 e suporte a notas fiscais eletrônicas (NF-e, CT-e, MDF-e, eSocial).
  • Layout Dual-Theme e Assinatura em Lote: Especificação de interface gráfica moderna, alternância dinâmica de tema (Claro/Escuro) e fila de processamento em lote.
  • Modo de Desenvolvimento: Guia de inicialização em modo --dev, políticas de não utilização de mocks em produção e geração de certificados A1 de teste locais.

🛡️ 3. Para DevOps, Infraestrutura e Segurança

Se você precisa implantar, homologar ou validar os aspectos de conformidade e segurança da solução:

  • Modelo de Segurança e Privacidade: Diretrizes de menor privilégio, proteção contra CSRF e DNS Rebinding, descarte seguro de senhas e PIN em memória e conformidade com a LGPD.
  • Instalação e Empacotamento Nativo: Criação de instaladores autocontidos para Windows (MSI/EXE) via jpackage, requisitos do sistema e parâmetros de instalação corporativa silenciosa.
  • Estratégia de Versionamento e Release: Padrão SemVer 2.0.0, plano progressivo de cobertura JaCoCo e roteiro para corte da primeira tag v0.1.0.
  • Diagnóstico e Troubleshooting: Subsistema de auto-teste, checklist de integridade de runtime e guia de resolução de problemas comuns de hardware/middleware.
  • Limitações Técnicas Declaradas: Declaração formal de requisitos de drivers, limitações de hardware mono-thread e dependências de sistema operacional (em conformidade com a Regra 23 do projeto).

📋 Sumário Geral de Arquivos

Documento Assunto Principal Público-Alvo
CCSP.md Especificação técnica do protocolo local CCSP versão 1 Integradores Web & Core Devs
architecture.md Estrutura modular, threading e fluxo de operações Desenvolvedores Desktop
a1-a3-certificates.md Provedores A1/A3, PKCS#11, PC/SC e OIDs ICP-Brasil Especialistas em Criptografia
pades.md Assinatura PAdES, envelope CMS e selos vetoriais Desenvolvedores Desktop & Web
xml-xmldsig.md XAdES-BES, XMLDSig e documentos fiscais Integradores de NF-e/XAdES
authentication-login.md Login Challenge-Response via ICP-Brasil Integradores Web
errors.md Tabela estruturada de erros e mapeamentos HTTP Todos
security.md Políticas de isolamento, memória e privacidade Segurança & Compliance
diagnostics.md Auto-testes e guia de resolução de problemas Suporte & Operações
installation.md Empacotamento com jpackage e instaladores MSI DevOps & Usuários Finais
release-and-versioning.md Estratégia SemVer, metas JaCoCo e corte de tags DevOps & Governança
compliance-testing.md Guia de Conformidade ICP-Brasil e Verificador ITI Compliance & QA
compatibility.md Matriz de compatibilidade de hardware A3 e SoftHSM2 Suporte & Hardware
limitations.md Dependências de drivers e limitações declaradas Todos
development-mode.md Parâmetro --dev e certificados de teste Desenvolvedores Desktop
sdk.md Guia completo da biblioteca JavaScript Desenvolvedores Web
serpro-layout-and-batch.md Design de interface e processamento em lote UI/UX & Desenvolvedores

Dúvidas ou inconsistências? Verifique os testes unitários e de arquitetura em modules/cybercore-core/src/test ou consulte o arquivo README.md principal.