Principio fundamental
El servidor de Solo2 es completamente ciego. No sabe con quién hablas, qué dices, ni qué archivos compartes. Ni siquiera las señales técnicas que establecen la conexión entre dispositivos son legibles para el servidor — viajan cifradas de extremo a extremo.
Tus mensajes viajan directamente entre dispositivos, cifrados de extremo a extremo. Tu historial vive cifrado en tu navegador, nunca en nuestro servidor.
Las claves de cifrado rotan automáticamente con cada mensaje. Cada mensaje se cifra con una clave única que se descarta inmediatamente después. Esto se conoce técnicamente como Double Ratchet, y significa que incluso si alguien obtuviese una clave, solo podría leer un único mensaje — no la conversación. Además, la seguridad se restaura automáticamente tras cada turno de comunicación: una clave comprometida se vuelve inútil en cuanto se intercambia el siguiente mensaje.
Cuando la conexión directa entre dispositivos no es posible (por ejemplo, por restricciones de red), se utiliza un servidor espejo (técnicamente llamado TURN): los datos se reflejan de un dispositivo a otro, pero el espejo no es consciente de lo que refleja — todo viaja cifrado de extremo a extremo y el servidor no puede leerlo. Además, todos los paquetes se rellenan a tamaño uniforme para impedir que un observador pueda deducir información analizando el tamaño o la frecuencia del tráfico.
Siempre puedes ver en la aplicación qué tipo de conexión estás usando — directa o a través del servidor espejo — y actuar en consecuencia.
Tu identidad criptográfica no se almacena — se calcula. Cada vez que inicias sesión, Solo2 deriva tu identidad matemáticamente a partir de tu contraseña. No existe como archivo que pueda corromperse, robarse o perderse. Misma contraseña, misma identidad — en cualquier dispositivo, en cualquier momento.
Tu cuenta está protegida por cinco capas de seguridad independientes: tu contraseña, un secreto exclusivo de tu dispositivo, tu identidad criptográfica derivada, 24 palabras de recuperación (nivel Bitcoin, 256 bits de entropía) y la rotación automática de claves con cada mensaje.
1. Datos que SÍ tenemos en el servidor
1.1 Tu cuenta de usuario
Estos son todos los campos que existen en tu registro. No hay ninguno más.
| Dato | Por qué | Protección | Duración |
|---|---|---|---|
| Nombre de usuario | Para que puedas iniciar sesión | Texto plano (es público por diseño) | Hasta que borres tu cuenta |
| Contraseña | Autenticación | Protegida con Argon2id (recomendado por OWASP, resistente a ataques con hardware especializado). Nunca almacenamos tu contraseña real, solo una huella matemática irreversible | Hasta que borres tu cuenta |
| Nombre público | Para que tus contactos te reconozcan | Texto plano (lo eliges tú) | Hasta que lo cambies o borres tu cuenta |
| Código de vinculación | Tu dirección dentro de Solo2 — como un número de teléfono. Es lo que compartes con alguien para que te encuentre y te envíe solicitud de conexión | Texto plano, único (~10 caracteres) | Hasta que borres tu cuenta |
| Clave pública | Cadena criptográfica que la aplicación usa automáticamente para cifrar los datos que te envían. Nadie la usa directamente — la aplicación se encarga. El código de vinculación es para que te encuentren; la clave pública es para que te cifren | Clave pública (44 caracteres). Puede ser conocida sin riesgo — solo tu clave privada, que vive en tu navegador, puede descifrar | Hasta que borres tu cuenta |
| Saldo económico | Dinero que has añadido a tu cuenta | Número (en céntimos) | Hasta que borres tu cuenta |
| Saldo bonus | Bonificaciones recibidas (invitaciones, promociones, regalos). Se consume antes que el saldo económico | Número (en céntimos) | Hasta que borres tu cuenta |
| Tipo de cuenta | Tu plan actual (prueba, estándar, oro, platino) | Texto | Hasta que cambie o borres tu cuenta |
| Fecha de fin de prueba | Cuándo termina tu periodo de prueba gratuita | Fecha | Hasta que borres tu cuenta |
| Fecha y hora de registro | Cuándo creaste tu cuenta | Fecha y hora completa (timestamp) | Permanente |
| Última actividad | Cuándo usaste la aplicación por última vez | Fecha y hora | Se actualiza con cada uso |
| Identificadores internos | Códigos que el sistema usa internamente para referirse a ti | IDs opacos, sin significado fuera del sistema | Hasta que borres tu cuenta |
| Versión de seguridad | Qué versión del algoritmo de protección de contraseña se usó | Número interno | Hasta que borres tu cuenta |
| Indicadores de estado | Flags técnicos (si tu saldo ha cambiado, si tienes modo seguridad máxima activo) | 1 byte — el equivalente a una sola letra. No cabe nada más | Hasta que borres tu cuenta |
Para que te hagas una idea del volumen: tu registro ocupa unos 250 caracteres fijos (identificadores, fechas, claves, saldos) más la longitud de los nombres que elijas. La contraseña no influye: siempre se almacena como una huella de tamaño fijo. Por ejemplo, si te llamas «Pepe», y tu nombre público es «Pepe Pérez», todo lo que ocupas en nuestro servidor son unos 264 caracteres — menos que este párrafo.
1.2 Sesiones activas
| Dato | Por qué | Protección | Duración |
|---|---|---|---|
| Token de sesión | Mantener tu login activo | Solo almacenamos una huella irreversible (hash), no el token original | 24 horas máximo, luego se borra automáticamente |
| Fecha de última actividad | Expirar sesiones inactivas | Fecha y hora | Se borra con la sesión |
1.3 Solicitudes de vinculación
| Dato | Por qué | Protección | Duración |
|---|---|---|---|
| ID del solicitante | Saber quién envió la solicitud | ID interno | 3 días máximo. Si no se responde, se elimina automáticamente |
| ID del destinatario | Saber a quién va dirigida | ID interno | Igual que el solicitante |
| Estado | Pendiente / aceptada / rechazada | Texto | Se borra al resolverse o al caducar |
Nota importante: Una vez aceptada la vinculación, el servidor no guarda la relación. Tu lista de contactos existe solo en tu navegador, cifrada.
1.4 Invitaciones
| Dato | Por qué | Protección | Duración |
|---|---|---|---|
| Código de invitación | Enlace único para invitar a alguien | Token aleatorio | Hasta que se use o expire (30 días) |
| ID del emisor | Saber quién invitó | ID interno | Permanente (contabilidad) |
| Importe del regalo | Saldo regalado con la invitación | Número | Permanente (contabilidad) |
1.5 Suscripciones push (notificaciones)
| Dato | Por qué | Protección | Duración |
|---|---|---|---|
| Dirección de notificación | Enviar notificaciones a tu navegador | URL del proveedor del navegador (Google, Mozilla o Apple) | Hasta que desactives notificaciones o borres tu cuenta |
| Claves de cifrado push | Cifrar la notificación para que solo tu navegador la lea | Estándar Web Push | Igual que la dirección |
1.6 Feedback (soporte)
| Dato | Por qué | Protección | Duración |
|---|---|---|---|
| Tu mensaje | Para que podamos ayudarte | Texto plano | Hasta que lo procesemos |
| Tu ID de usuario | Para saber quién necesita ayuda | ID interno | Mismo que el mensaje |
1.7 Señalización de conexión (efímera)
Para que dos dispositivos puedan conectarse directamente, necesitan intercambiar unas señales técnicas de establecimiento de conexión (protocolo WebRTC). Estas señales pasan por nuestro servidor de forma breve, pero cifradas de extremo a extremo — el servidor solo transporta un bloque opaco que no puede descifrar.
| Dato | Por qué | Protección | Duración |
|---|---|---|---|
| Señales de conexión | Establecer la conexión directa entre dispositivos | Cifradas de extremo a extremo con la clave pública del destinatario. El servidor no puede leerlas ni modificarlas | 60 segundos máximo, luego se borran. En memoria, nunca en disco |
1.8 Servidor espejo (relé TURN)
Si la conexión directa no es posible, se utiliza un servidor espejo: los datos pasan a través de él como la luz a través de un espejo — se reflejan de un lado a otro, pero el espejo no es consciente de lo que refleja. Todos los paquetes se rellenan a tamaño uniforme para que un observador no pueda distinguir un mensaje de un simple latido de conexión.
| Dato | Por qué | Protección | Duración |
|---|---|---|---|
| Credencial de acceso | Autenticarte en el servidor espejo | Tu identidad se transforma en una huella irreversible — el servidor espejo no sabe quién eres | 24 horas, luego se regenera |
1.9 Pagos procesados
Los pagos son el único punto donde existe una fricción real con el anonimato. Seamos honestos sobre ello.
Cuando te registras en Solo2, eliges un nombre de usuario (puede ser inventado), una contraseña y un nombre público (también inventado si quieres). Ningún dato te vincula a una persona real. Pero si realizas un pago con tarjeta, tu entidad financiera sí sabe quién eres.
Lo que nosotros recibimos de la pasarela de pago es únicamente una confirmación y un importe. No recibimos ni almacenamos el nombre del titular, ni el número de tarjeta, ni el DNI, ni ningún dato personal del pagador. Son importes pequeños — legalmente equivalentes a un ticket de contado, como comprar un chupachús en un kiosco: el kiosquero no registra el DNI de quien paga.
Además, el registro de pago está deliberadamente desvinculado de tu cuenta de usuario. No existe ningún campo en nuestra base de datos que cruce un ticket de cobro con una cuenta concreta.
| Dato | Por qué | Protección | Duración |
|---|---|---|---|
| Registro de pago | Contabilidad y obligaciones fiscales | Confirmación + importe. Sin datos personales del pagador. Sin vinculación a ninguna cuenta de usuario | Permanente (obligación legal) |
Sobre el peor escenario posible: Incluso con una orden judicial, la cadena de rastreo sería: tu tarjeta → tu banco → la pasarela de pago → nuestro ticket de cobro. Pero nuestro ticket no contiene ningún identificador de usuario. No es un descuido: es una decisión de diseño. No existe ningún campo ni índice en nuestra base de datos que relacione un pago con una cuenta. La única vía teórica sería una correlación temporal — si fueses el único pago en un periodo dado — pero incluso en ese caso extremo, la cuenta no contiene información que identifique a la persona real: el nombre de usuario y el nombre público pueden ser totalmente inventados.
Todos nuestros ingresos son legales y entran contabilizados a través de la pasarela de pago. Liquidamos los impuestos correspondientes. Pero el anonimato del cliente es total desde nuestro lado.
2. Datos que NO tenemos en el servidor
Esto es lo que nos define. El servidor de Solo2 no almacena ni tiene acceso a:
- Tus mensajes — Viajan directamente entre dispositivos, cifrados de extremo a extremo. El servidor nunca los ve.
- Tus archivos — Igual que los mensajes: directos y cifrados.
- Tu lista de contactos — Existe solo en tu navegador, cifrada en La Bóveda.
- Tu historial de chat — Solo en tu navegador, cifrado.
- Tu ubicación — Los GeoSellos se calculan en tu dispositivo y se envían directamente al destinatario. El servidor nunca los procesa.
- Analíticas de uso — La aplicación Solo2 no tiene ningún sistema de analíticas, ni cookies de seguimiento, ni scripts de terceros.
- Datos del dispositivo — No recogemos modelo, resolución, sistema operativo, ni ninguna característica de tu dispositivo.
- Metadatos de comunicación — No sabemos con quién hablas, cuándo, con qué frecuencia, ni durante cuánto tiempo.
Sobre tu dirección IP
No registramos tu dirección IP. Ni la aplicación ni el servidor web almacenan direcciones IP en sus logs. Las señales de conexión, que podrían contener tu IP, están cifradas de extremo a extremo — el servidor no puede leerlas.
3. Datos en tu navegador (La Bóveda)
Todo lo siguiente vive exclusivamente en tu navegador, cifrado con AES-256-GCM (un estándar de cifrado de grado militar utilizado por gobiernos y entidades financieras). La clave se genera a partir de tu contraseña mediante Argon2id (el algoritmo más resistente disponible contra ataques con hardware especializado), y este proceso ocurre enteramente dentro de tu navegador. Tu contraseña nunca se envía al servidor.
Tus datos están cifrados en reposo — incluso si alguien accediera al almacenamiento de tu navegador, solo encontraría bloques cifrados ilegibles sin tu contraseña.
Cuando exportas una copia de seguridad, se cifra con la misma protección (Argon2id + AES-256-GCM). Solo quien conozca tu contraseña puede descifrarla.
| Dato | Cifrado | Control |
|---|---|---|
| Mensajes | AES-256-GCM | Tú decides cuándo borrarlos |
| Archivos | AES-256-GCM | Tú decides cuándo borrarlos |
| Contactos (pares) | AES-256-GCM | Tú decides a quién vincular |
| Estado de verificación | AES-256-GCM | Tú verificas la identidad de cada contacto |
| Índice de búsqueda | Cifrado con tokens irreversibles (HMAC) | Se reconstruye desde tus mensajes |
| Estado de entrega | AES-256-GCM | Qué mensajes se entregaron |
| Mensajes pendientes | AES-256-GCM | Cola de envío cuando no hay conexión |
Almacenamiento temporal del navegador
| Dato | Tipo | Duración | Por qué |
|---|---|---|---|
| Sesión de usuario | Memoria local del navegador (localStorage) | Hasta que cierres sesión | Mantener tu login |
| Versión de la app | Memoria local del navegador (localStorage) | Permanente | Detectar actualizaciones |
| Preferencia de tema | Memoria local del navegador (localStorage) | Permanente | Recordar tu tema visual |
| Preferencia de idioma | Memoria local del navegador (localStorage) | Permanente | Recordar tu idioma |
| Contraseña (modo seguridad máxima) | Memoria de pestaña (sessionStorage) | Desaparece al cerrar la pestaña | Reinicializar el cifrado si recargas la página |
Nota sobre la seguridad en el navegador
Solo2 funciona dentro de tu navegador web. Tus datos cifrados están protegidos en reposo, pero cuando la aplicación está abierta y te muestra tus mensajes descifrados en pantalla, la seguridad depende también de tu entorno:
- Extensiones del navegador: Una extensión maliciosa con acceso a las páginas que visitas podría, en teoría, leer lo que se muestra en pantalla. Recomendamos utilizar el menor número posible de extensiones y solo de fuentes de confianza.
- Navegador limpio: Un navegador actualizado y sin extensiones innecesarias es tu mejor aliado.
- Aplicación nativa: En el futuro, ofreceremos una aplicación de escritorio (Windows, Mac, Linux) que proporcionará un nivel adicional de aislamiento al no depender del entorno del navegador.
4. Conexiones de red
La aplicación Solo2
| Dominio | Motivo | Dato enviado |
|---|---|---|
| solo2.net | API de la aplicación | Autenticación, señalización, presencia |
| pay.menzuri.com | Pasarela de pago | Solo si realizas un pago |
Ningún otro dominio. Ningún script externo. Ningún CDN de seguimiento. La política de seguridad de contenido (CSP) del servidor lo impone técnicamente: cualquier intento de cargar recursos de otros dominios es bloqueado por el navegador.
Incluso para descubrir la dirección IP pública de tu dispositivo (necesario para establecer conexiones directas entre usuarios), usamos nuestro propio servidor (técnicamente llamado STUN). No delegamos en servicios externos. Lo gestionamos nosotros.
La página de presentación
La página de presentación (solo2.net/info) — que es independiente de la aplicación — utiliza un sistema de medición anónima alojado en nuestros propios servidores en Alemania:
| Dominio | Motivo | Dato enviado |
|---|---|---|
| stats.menzuri.com | Medición anónima de visitas | Página visitada (sin cookies, sin IP, sin identificación) |
Este sistema no instala cookies, no registra tu dirección IP, no te identifica, no te sigue entre visitas y no comparte datos con terceros. La aplicación Solo2 no tiene este sistema ni ningún otro tipo de analítica.
5. Borrar tus datos
Existen dos acciones diferentes, y es importante que conozcas la diferencia:
Borrar datos locales
Desde los ajustes de la aplicación tienes dos opciones de borrado local:
- Borrar mis datos — Elimina solo tus datos (identidad, bóveda, sesión) sin afectar a otros usuarios que usen el mismo navegador.
- Reset de emergencia — Borra absolutamente todo: datos de todos los usuarios, Service Worker, caché y claves criptográficas. Requiere doble confirmación.
En ambos casos, tu cuenta en el servidor sigue existiendo. Puedes volver a iniciar sesión, pero tus datos locales se habrán perdido irreversiblemente. Al hacerlo, se genera una identidad criptográfica completamente nueva: quien tuviese tu clave pública anterior ya no puede cifrar nada para ti. Si un contacto anterior quiere reconectarse, deberá solicitarte vinculación de nuevo, y tú decides si la aceptas o no.
Recuperación automática entre dispositivos
Si pierdes tus datos en un dispositivo y tienes otro conectado, Solo2 detecta la situación y te ofrece restaurar tu identidad y bóveda automáticamente. La restauración viaja cifrada (Argon2id) por conexión directa entre tus dispositivos — sin pasar por el servidor.
Eliminar tu cuenta del servidor
- Se eliminan todas las filas en la base de datos asociadas a tu ID: cuenta, sesiones, solicitudes, invitaciones, suscripciones push, feedback.
- La eliminación es atómica (todo o nada): o se borra todo o no se borra nada.
- Los registros de pagos quedan deliberadamente desvinculados de tu identidad — existen por obligación legal, pero no se puede trazar un pago a tu persona.
- Los identificadores en los logs del servidor son huellas irreversibles: no se puede vincular un log a tu cuenta una vez eliminada.
- La Bóveda en tu navegador no se elimina automáticamente con esta acción (no tenemos acceso a tu navegador). Para borrarla, ejecuta primero el borrado nuclear o limpia los datos del sitio en tu navegador.
5b. Tu identidad criptográfica
En Solo2, tu identidad criptográfica no es un archivo almacenado en tu dispositivo. Es el resultado de una operación matemática que se ejecuta cada vez que inicias sesión, usando tu contraseña como semilla.
Esto significa que no puede corromperse, no puede robarse y no puede perderse — porque no existe como dato almacenado. Si pierdes tu dispositivo, tu identidad sigue existiendo: en tu contraseña.
Cómo se deriva tu identidad
| Capa | Qué es | Dónde vive |
|---|---|---|
| Contraseña | La raíz de toda tu seguridad. Solo tú la conoces | En tu memoria |
| Secreto de dispositivo | Segundo factor invisible, generado automáticamente al instalar | En tu dispositivo (no extraíble) |
| Identidad determinista | Claves Ed25519 + X25519 derivadas de tu contraseña. 256 bits de entropía | Se calcula en cada login (no se almacena) |
| 24 palabras de recuperación | Representación legible de tu identidad. Nivel Bitcoin (BIP39) | En un papel que tú guardas |
| Rotación de claves | Cada mensaje usa una clave única que se destruye después (Double Ratchet) | Automática, transparente |
Si cambias tu contraseña
Al cambiar tu contraseña, se genera una nueva identidad criptográfica. Solo2 notifica automáticamente a cada uno de tus contactos de forma cifrada y verificada — ellos siguen hablando contigo sin interrupciones. La firma criptográfica de tu identidad anterior demuestra matemáticamente que el cambio es legítimo.
Recuperación
Si pierdes tu dispositivo, tienes dos formas de recuperar tu identidad: iniciando sesión con tu contraseña desde cualquier otro navegador (tu identidad se recalcula automáticamente), o introduciendo tus 24 palabras de seguridad.
6. Qué pasa si alguien accede al servidor sin autorización
Si un atacante obtuviera acceso completo al servidor de Solo2, obtendría:
- Nombres de usuario y nombres públicos
- Códigos de vinculación
- Claves públicas (inútiles sin la clave privada, que está en tu navegador)
- Huellas de contraseñas (inútiles sin un ataque de fuerza bruta extremadamente costoso gracias a Argon2id)
- Huellas de tokens de sesión (inútiles sin el token original)
- Solicitudes de vinculación pendientes (IDs internos, caducan en 3 días)
- Tipo de cuenta, saldos y fechas de registro
- Registros de pagos (sin poder vincularlos a un usuario concreto)
Lo que NO obtendría:
- Ningún mensaje (nunca estuvieron en el servidor)
- Ningún archivo (nunca estuvieron en el servidor)
- Ninguna lista de contactos (nunca estuvo en el servidor)
- Ningún historial de chat (nunca estuvo en el servidor)
- Ninguna clave privada de cifrado (viven en tu navegador)
- Ninguna dirección IP (no se registran)
7. Nuestro compromiso
Este manifiesto se actualizará con cada cambio relevante en la gestión de datos. Si añadimos un campo nuevo a la base de datos, aparecerá aquí. Si eliminamos algo, también.
La versión vigente siempre es esta página.