Seguridad
- Cifrado
- TLS en tránsito, versión 1.2 como mínimo y 1.3 por defecto (certificados de Let's Encrypt), cifrado en reposo en los discos del proveedor de la base de datos y cifrado Fernet para los campos sensibles, como las claves API de los exchanges.
- Inicio de sesión
- Contraseñas con hash Argon2id (parámetros de OWASP), autenticación de dos factores por aplicación (TOTP, RFC 6238) o por un código de 6 cifras enviado por correo, tokens de renovación que cambian en cada uso con detección de reutilización, bloqueo progresivo tras varios fallos.
- Separación de clientes
- Cada solicitud se filtra por organización en el código de la aplicación, y tu acceso se comprueba de nuevo en cada solicitud. Las políticas de seguridad a nivel de fila (row-level security) de PostgreSQL ya están en las tablas y se convertirán en una segunda barrera (consulta la hoja de ruta más abajo).
- Registro de auditoría
- Las reclasificaciones manuales, las reglas, las limpiezas y los cierres de ejercicio se anotan en un registro de solo adición encadenado con SHA-256. La base de datos rechaza cualquier modificación o borrado de ese registro. Cada FEC exportado se archiva con su huella SHA-256, que se vuelve a comprobar en cada descarga.
- Alojamiento en la Unión Europea
- Hostinger (Francia): alojamiento del sitio web y de la aplicación. Supabase (Irlanda (Unión Europea)): base de datos y archivos (comprobantes, FEC). Los servicios de terceros (envío de correos, exploradores de bloques, cotizaciones) y lo que reciben figuran en la política de privacidad, en francés.
- Cumplimiento
- Según el RGPD, TLM Solutions es responsable del tratamiento de las cuentas, la seguridad y la facturación, y trata tus datos contables por cuenta tuya según el acuerdo de encargo del tratamiento anexo a las condiciones de venta. Una brecha que ponga en riesgo los datos se notifica a la CNIL en un plazo de 72 horas y a las organizaciones afectadas.
- Notificar una vulnerabilidad
- Escribe a contact@trotme.fr y describe cómo reproducirla.
Hoja de ruta de seguridad
Previsto y aún no disponible, para que sepas en qué punto estamos:
- Ejecutar la aplicación con un rol de PostgreSQL sujeto a la seguridad a nivel de fila (segunda barrera de aislamiento)
- Pasar la firma JWT de HS256 a un par de claves RS256
- Cifrado de sobre con KEK y DEK (hoy, una sola clave Fernet)
- WebAuthn y passkeys
- Sellos de tiempo cualificados eIDAS en los FEC exportados (RFC 3161)
- Copias de seguridad independientes de la base de datos con restauración a un momento dado