Skip to content

TRAZIP v1.4.0

Latest

Choose a tag to compare

@kerwilgil kerwilgil released this 03 Sep 20:34
· 5 commits to main since this release

TRAZIP v1.4.0

Español

Rotación de confianza (cambio incompatible para la auto-actualización)

Por la pérdida de la clave privada Ed25519 de firma original de v1.3.2 tras una
reinstalación del sistema, TRAZIP v1.4.0 introduce una nueva identidad de firma
de actualizaciones.

Impacto:

  • Las actualizaciones firmadas automáticas de v1.3.2 -> v1.4.0 NO son posibles.
  • Quien esté en v1.3.2 o anterior debe instalar v1.4.0 manualmente una vez.
  • Desde v1.4.0 en adelante, las actualizaciones firmadas automáticas se reanudan con normalidad.

Detalles técnicos:

  • Clave de firma ANTIGUA (v1.3.2 y anteriores): ec8c7353f673a9d0b5a43e91a0c062f9444e6416b09cb51d1220805be6aedd16
  • Clave de firma NUEVA (v1.4.0 y posteriores): a94f501667c8de95e7c056a1d6493f61cf10d6849e155f32837fcf543a9cc149
  • La clave privada original se perdió durante una reinstalación del sistema y no
    pudo recuperarse de los respaldos DPAPI (cambió el contexto de máquina).
  • El repositorio de actualizaciones (kerwilgil/trazip-releases) sigue siendo el mismo.
  • Las instalaciones legacy v1.3.2 no pueden auto-actualizarse a v1.4.0 (cambio de clave).
    Se requiere instalación manual una vez. Desde v1.4.0 en adelante, las auto-actualizaciones se reanudan.

Finalización de BGP Intelligence

  • Finalización completa de BGP Intelligence v1.4 con todas las pestañas:
    Resumen, Prefijos, Vecinos, Topología, Seguridad, Tiempo real, Histórico, BGPlay, Observatorio.
  • Topología: pan/zoom/arrastre estable, exportación SVG/PNG, límites de 100 nodos / 250 aristas.
  • Tiempo real: aislamiento estricto de sesiones obsoletas, sin sondeos huérfanos, línea de tiempo acotada.
  • Histórico/BGPlay: rangos de fecha-hora cerrados, avisos de truncamiento, sin fabricación de epoch.
  • Observatorio: País, Global/RIS, ASN, RPKI, Bogons — tri-estado preservado, sin datos fabricados.
  • Semántica BGP preservada: sin inferencia comercial, sin auto-etiqueta HIJACK, MOAS = Atención y no Riesgo, RPKI acotado a prefijo.

Refinamientos de UI/UX

  • Semántica ARIA tablist/tab/aria-selected en todos los grupos de pestañas.
  • Estilos focus-visible, navegación por teclado (ArrowLeft/Right, Home/End) en todos los grupos de pestañas.
  • Manejo de errores: mensaje principal claro + detalle técnico, role="alert" para errores.
  • Protección contra desbordamiento: overflow-wrap en .stat .sub, tablas con scroll horizontal.
  • Soporte de reduced-motion para animaciones.

i18n completado

  • Todas las cadenas de BGP Intelligence tienen ahora traducción al inglés en i18n.tsx.
  • No queda ninguna cadena en español fija en la UI de BGP visible al usuario.

Accesibilidad

  • Pestañas: role="tablist"/"tab"/"tabpanel", aria-selected, aria-controls, aria-labelledby.
  • Navegación por teclado: Tab/Arrow/Enter/Space en todos los elementos interactivos.
  • Estilos focus-visible globales, soporte de reduced-motion.

Pruebas

  • Pruebas unitarias de frontend: 30 pruebas (lógica de sesión en tiempo real, ayudantes de topología, navegación de pestañas).
  • Pruebas de backend: todas las pruebas existentes PASAN, incluyendo el nuevo trust_rotation_test.go.

Validación física de BGP Intelligence

  • 1366x768: PASS
  • 1920x1080: PASS
  • Navegación por teclado: PASS
  • Gestión del foco: PASS
  • Desbordamiento: PASS
  • Topología pan/zoom/arrastre: PASS
  • Aislamiento de sesiones obsoletas en tiempo real: PASS
  • Persistencia de resultados entre pestañas: PASS
  • Migración manual v1.3.2 -> v1.4.0: requerida; validación final de la release pendiente

Identidad de firma

  • Nueva identidad de firma Ed25519 generada y validada:
    • Clave pública: a94f501667c8de95e7c056a1d6493f61cf10d6849e155f32837fcf543a9cc149
    • Clave privada: generada, respaldada (Google Drive + remoto independiente), probada con restauración
    • Pruebas de Firma/Verificación/Manipulación: TODAS PASAN
    • La clave privada nunca está en el repo, logs ni reportes

Nota de migración

v1.3.2 -> v1.4.0 requiere una instalación manual única porque cambió la clave
de firma de actualizaciones (se perdió la clave privada original de v1.3.2).

  • Desde v1.4.0 en adelante, las actualizaciones firmadas automáticas se reanudan con normalidad.
  • El repositorio de actualizaciones (kerwilgil/trazip-releases) no cambia.
  • La validación final de la migración manual v1.3.2 -> v1.4.0 sigue pendiente (post-release).

macOS (Apple Silicon) — nuevo

TRAZIP v1.4.0 está disponible también como aplicación nativa para macOS.

  • Descarga: TRAZIP-macos-1.4.0-arm64.zip (Apple Silicon / arm64), con su TRAZIP-macos-1.4.0-arm64.zip.sha256.
  • Aplicación nativa Wails / WKWebView (TRAZIP.app). El ZIP incluye además herramientas/tzsp-sender y LEEME.txt.
  • PCAP, diagnósticos, BGP Intelligence, VoIP, reportes y el resto del análisis offline funcionan sin Npcap.
  • La captura en vivo usa libpcap/BPF del sistema; algunas operaciones de captura pueden requerir permisos elevados (helper ChmodBPF de Wireshark o sudo). Todo lo demás funciona sin privilegios.
  • Firma ad-hoc, no notarizada por Apple. En la primera apertura macOS puede bloquearla: Ajustes del Sistema → Privacidad y seguridad → «Abrir de todos modos» (ver LEEME.txt).
  • Sin Auto-Update en macOS: es descarga manual. El manifiesto firmado update.json / update.json.sig pertenece solo al canal Windows y no cambia.
  • Construida desde el mismo código fuente de v1.4.0 (commit a266190).
  • SHA-256: 4f4975965eff2ed2365a251bfe1602d3d65027093abe14bd4e0710af38280329

English

Trust Rotation (Breaking Change for Auto-Update)

Due to loss of the original v1.3.2 Ed25519 signing private key after a
system reinstallation, TRAZIP v1.4.0 introduces a new update signing identity.

Impact:

  • Automatic signed updates from v1.3.2 -> v1.4.0 are NOT possible.
  • Users on v1.3.2 or earlier must install v1.4.0 manually once.
  • From v1.4.0 onward, automatic signed updates resume normally.

Technical Details:

  • OLD signing key (v1.3.2 and earlier): ec8c7353f673a9d0b5a43e91a0c062f9444e6416b09cb51d1220805be6aedd16
  • NEW signing key (v1.4.0 and later): a94f501667c8de95e7c056a1d6493f61cf10d6849e155f32837fcf543a9cc149
  • The original private key was lost during a system reinstallation and could
    not be recovered from DPAPI backups (machine context changed).
  • The update repository (kerwilgil/trazip-releases) remains the same.
  • Legacy v1.3.2 installations cannot auto-update to v1.4.0 (key change).
    Manual installation required once. From v1.4.0 onward, auto-updates resume normally.

BGP Intelligence Finalization

  • Complete BGP Intelligence v1.4 finalization with all tabs:
    Resumen, Prefijos, Vecinos, Topología, Seguridad, Tiempo real, Histórico, BGPlay, Observatorio.
  • Topology: stable pan/zoom/click-drag, export SVG/PNG, 100 nodes / 250 edges caps.
  • Realtime: strict stale-session isolation, no orphan polls, capped timeline.
  • History/BGPlay: closed datetime ranges, truncation notices, no epoch fabrication.
  • Observatory: Country, Global/RIS, ASN, RPKI, Bogons — tri-state preserved, no fabricated data.
  • BGP semantics preserved: no commercial inference, no HIJACK auto-label, MOAS=Attention not Risk, RPKI prefix-scoped.

UI/UX Refinements

  • ARIA tablist/tab/aria-selected semantics on all tab groups.
  • Focus-visible styles, keyboard navigation (ArrowLeft/Right, Home/End) on all tab groups.
  • Error handling: friendly primary message + technical details, role="alert" for errors.
  • Overflow protection: .stat .sub overflow-wrap, tables with horizontal scroll.
  • Reduced-motion support for animations.

i18n Completion

  • All BGP Intelligence strings now have English translations in i18n.tsx.
  • No hardcoded Spanish strings remain in user-visible BGP UI.

Accessibility

  • Tabs: role="tablist"/"tab"/"tabpanel", aria-selected, aria-controls, aria-labelledby.
  • Keyboard navigation: Tab/Arrow/Enter/Space across all interactive elements.
  • Focus-visible global styles, reduced-motion support.

Tests

  • Frontend unit tests: 30 tests (realtime session logic, topology helpers, tabs navigation).
  • Backend tests: all existing tests PASS including new trust_rotation_test.go.

BGP Intelligence Physical Validation

  • 1366x768: PASS
  • 1920x1080: PASS
  • Keyboard navigation: PASS
  • Focus management: PASS
  • Overflow: PASS
  • Topology pan/zoom/click-drag: PASS
  • Realtime stale-session isolation: PASS
  • Result persistence across tabs: PASS
  • Manual migration v1.3.2 -> v1.4.0: required; final release validation pending

Signing Identity

  • New Ed25519 signing identity generated and validated:
    • Public key: a94f501667c8de95e7c056a1d6493f61cf10d6849e155f32837fcf543a9cc149
    • Private key: generated, backed up (Google Drive + independent remote), restore-tested
    • Sign/Verify/Tamper tests: ALL PASS
    • Private key never in repo, logs, or reports

Migration Note

v1.3.2 -> v1.4.0 requires a one-time manual installation because the update
signing key changed (the original v1.3.2 private key was lost).

  • From v1.4.0 onward, automatic signed updates resume normally.
  • The update repository (kerwilgil/trazip-releases) is unchanged.
  • Final validation of the v1.3.2 -> v1.4.0 manual migration is still pending (post-release).

macOS (Apple Silicon) — new

TRAZIP v1.4.0 is also available as a native macOS application.

  • Download: TRAZIP-macos-1.4.0-arm64.zip (Apple Silicon / arm64), with its TRAZIP-macos-1.4.0-arm64.zip.sha256.
  • Native Wails / WKWebView application (TRAZIP.app). The ZIP also bundles herramientas/tzsp-sender and LEEME.txt.
  • PCAP, diagnostics, BGP Intelligence, VoIP, reports and the rest of the offline analysis work without Npcap.
  • Live capture uses the system libpcap/BPF; some capture operations may require elevated permissions (Wireshark's ChmodBPF helper or sudo). Everything else works unprivileged.
  • Ad-hoc signature, not notarized by Apple. On first launch macOS may block it: System Settings -> Privacy & Security -> "Open Anyway" (see LEEME.txt).
  • No Auto-Update on macOS: manual download. The signed update.json / update.json.sig manifest belongs to the Windows channel only and is unchanged.
  • Built from the same v1.4.0 source (commit a266190).
  • SHA-256: 4f4975965eff2ed2365a251bfe1602d3d65027093abe14bd4e0710af38280329