Files
cybercore-signer/CHANGELOG.md

57 lines
3.2 KiB
Markdown

# Changelog
Todas as mudanças relevantes deste projeto serão documentadas neste arquivo.
O formato é baseado em [Keep a Changelog](https://keepachangelog.com/pt-BR/1.1.0/),
e este projeto adere ao [Versionamento Semântico](https://semver.org/lang/pt-BR/).
---
## [Não publicado]
### Adicionado
- Pipeline de integração contínua (CI) via Gitea Actions para Linux e Windows.
- Verificação de cobertura mínima de testes via meta `jacoco:check` calibrada por módulo.
- Configuração de atualização automatizada de dependências via Renovate com agrupamento específico.
- Templates de issues e pull requests para Gitea em `.gitea/`.
- Guia de contribuição `CONTRIBUTING.md` e especificação de release em `docs/release-and-versioning.md`.
### Modificado
- Alinhamento da documentação e scripts de automação para exigir estritamente o JDK 25 LTS.
- Refinamento do `.gitignore` para ignorar a pasta `scratch/` e mover script utilitário para `scripts/`.
- Atualização do filtro de exclusão do SpotBugs com justificativas técnicas detalhadas para garantir verificação completa e limpa.
---
## [0.1.0] - 2026-10-08
### Adicionado
- **Núcleo Criptográfico (`cybercore-core`):**
- Gerenciador central de certificados digitais (`CertificateManager`).
- Provedor para certificados em arquivo A1 PKCS#12 (`.pfx` / `.p12`).
- Provedor para repositório do Windows (`Windows-MY` via SunMSCAPI / CNG).
- Provedor para dispositivos criptográficos A3 PKCS#11 (tokens USB e smartcards).
- Assinatura digital padrão PAdES (PDF) em conformidade com as normas ICP-Brasil (Apache PDFBox e Bouncy Castle).
- Assinatura digital padrão XAdES-BES / XMLDSig para notas e documentos fiscais eletrônicos.
- Suporte a carimbo de tempo TSA e validação de longo prazo (LTV).
- Servidor HTTP local CCSP/1 (`127.0.0.1:21325`) com bind exclusivo em loopback, proteção anti-replay via nonce e controle de concorrência por fila.
- **Interface Gráfica Nativa (`cybercore-ui`):**
- Aplicação moderna em JavaFX 25 com suporte a tema Claro e Escuro (Dual-Theme).
- Dashboard de status do agente e leitor de certificados em tempo real.
- Diálogos de autorização prévia de aplicações web e confirmação visual de assinaturas.
- Designer e visualizador de selos visuais em PDF com renderização SVG e Java2D.
- Integração com a bandeja do sistema operacional (System Tray).
- **Módulo Executável (`cybercore-app`):**
- Ponto de entrada consolidado (`CyberCoreSignerApplication`), rotinas de telemetria diagnóstica e testes de arquitetura com ArchUnit.
- Empacotamento de Fat JAR autocontido via Maven Shade Plugin.
- **SDK JavaScript (`@cybercore/signer-sdk`):**
- Cliente web com métodos `connect()`, `isInstalled()`, `getCertificates()`, `sign()`, `verify()`.
- Página de demonstração interativa para testes de integração web.
- **Documentação Técnica:**
- Especificação do protocolo CCSP/1 (`docs/CCSP.md`).
- Diretrizes de segurança, arquitetura, diagnóstico e manuais de instalação.
### Segurança
- Isolamento estrito de chaves privadas e senhas na máquina do usuário local (nunca trafegadas pela rede nem registradas em logs).
- Destruição segura de senhas em memória após uso via `Arrays.fill(..., '\0')`.