Saltar al contenido

Modelo de amenazas

Quién puede ver qué y qué lo detiene

Un modelo de amenazas solo es útil si nombra a los adversarios ante los que pierde con la misma claridad que a los que vence. Cada fila de abajo indica qué ve ese adversario, a qué no puede llegar, qué defensa hay y qué sigue siendo posible de todos modos.

PrivaMesh está diseñado contra un operador que quiere tus datos, un observador de la cadena que lee todo lo público y un impostor que intenta interceptar cuando añades un contacto. Es más débil frente a un analista de tiempos global y no ofrece nada frente a un dispositivo comprometido.

Modelo de amenazas de PrivaMesh por adversario, con defensas y riesgo residual
AdversarioVeNo puedeDefensaSigue siendo posible
PrivaMesh, el operadorQue una cuenta pagó un envío, y cuándoLeer mensajes, saber destinatarios, listar tus contactos o reconstruir el historialSin base de datos de cuentas ni almacén de mensajes; los tokens ciegos desvinculan el pago del envíoPodrían obligarnos a mostrar que alguna cuenta envió algo en un momento dado
El proveedor RPCTu dirección IP, la hora de las solicitudes, las transacciones que envíasDescifrar nada, ni saber de quién es cada dirección de un solo usoEl endpoint es reemplazable y autoalojableUn proveedor que registra todo construye una imagen, a nivel de red, de cuándo estás activo
Un observador de la cadenaTexto cifrado rellenado, direcciones de un solo uso, horas exactas de las transaccionesLeer el contenido o vincular dos mensajes de la misma conversaciónDirecciones sigilosas, niveles de relleno fijos, tráfico de cobertura opcionalSin tráfico de cobertura, tu patrón de actividad a lo largo del tiempo es totalmente visible
Un analista de tiempos globalActividad correlacionada en toda la red a la vezDescifrar o vincular direcciones criptográficamenteTráfico de cobertura a intervalos aleatorios de 3 a 10 minutos, si está activadoEs el adversario contra el que peor nos defendemos; un observador de toda la red con retención ilimitada está fuera de lo que puede arreglar cualquier diseño por mensaje
Alguien con tu teléfono desbloqueadoTodo: texto en claro, contactos, clavesRecuperar mensajes que el ratchet ya eliminóAlmacenamiento en el llavero tras Face ID o Touch ID; el secreto hacia adelante limita el pasado; un código de coacción borra la cuenta en lugar de abrirlaEl compromiso del dispositivo es total para todo lo que hay en él, y un código de coacción solo ayuda en el momento en que te piden desbloquear - no si el almacenamiento ya se copió antes
Alguien que tiene tu frase de recuperaciónTu identidad, y puede hacerse pasar por ti en adelanteLeer la parte ratchet de conversaciones pasadas: esas claves eran aleatorias y locales al dispositivoLa frase nunca sale de tu dispositivo ni se transmiteLa clave de identidad, la prekey firmada y la prekey PQ se derivan todas de la frase y no se publican prekeys de un solo uso, así que el mensaje inicial de cada conversación puede recalcularse a partir de la frase y el sobre permanente en la cadena. Tampoco hay revocación
Un contacto maliciosoTodo lo que le envías, y puede hacer capturas o reenviarloLlegar a otras personas con las que hablas o leer otras conversacionesBloqueo y separación de claves por conversaciónNinguna criptografía impide que la persona con la que hablas no sea de fiar
Un impostor al añadir un contactoNada, si la verificación tiene éxitoSustituir su clave por la de un contacto cuyo paquete está firmado en la cadenaPaquetes de prekeys firmados con la billetera y publicados en la cadena, así que ningún registro puede sustituir la clave de una cuentaNo hay número de seguridad ni huella que comparar, así que confirmar que la cuenta es de la persona correcta se hace por completo fuera de la app y sin ayuda
AppleQue tu Apple ID compró una suscripciónVer mensajes, contactos o vincular la compra con tu actividad de envíoLos tokens ciegos se interponen entre la compra y cada envíoApple sabe que eres cliente de PrivaMesh, algo inevitable en iOS
Un censor a nivel de redQue te conectaste a un endpoint RPC de SolanaLeer o descartar selectivamente mensajes individualesLos endpoints RPC son reemplazables, incluso por los tuyosBloquear Solana o todos los RPC bloquea la entrega por completo

Qué supone este modelo

Que las primitivas criptográficas resisten: X3DH, el Double Ratchet, AES-256-GCM y, en iOS 26, ML-KEM-768. Que tu dispositivo no está ya comprometido. Que verificas que el contacto que añades es la persona que querías. Si algo de eso falla, el resto del diseño no te salva.

También supone que nuestra implementación de esas primitivas es correcta; por eso el código es público y encontrar un fallo tiene recompensa. La lista completa de lo que no está cubierto está en limitaciones conocidas.

Preguntas frecuentes

¿Contra qué se defiende peor PrivaMesh?

Contra un adversario global que vigila toda la red de forma continua y lo guarda todo. El tráfico de cobertura encarece la correlación de tiempos, pero no derrota a un observador de esa escala, y la cadena le ofrece un registro permanente con el que trabajar.

Si me confiscan el dispositivo, ¿qué queda expuesto?

Todo lo que hay en él: texto en claro, contactos y claves, salvo que esté bloqueado y el atacante no pueda pasar Face ID. El secreto hacia adelante limita el daño a lo que el ratchet aún no ha eliminado: los mensajes antiguos ya son irrecuperables. Si te obligan a desbloquearlo tú, un código de coacción borra la cuenta en lugar de abrirla.

¿Pueden obligar a PrivaMesh a entregar mis datos?

Pueden pedirlo. Lo único que existe para entregar es que una cuenta pagó un envío en un momento dado. No hay contenido de mensajes, ni destinatario, ni lista de contactos, ni registro de cuenta, porque nada de eso se guarda.

¿Sirve una VPN?

Sí, contra el proveedor RPC y un observador a nivel de red, los dos adversarios que ven tu IP. No cambia nada de lo que se escribe en la cadena, que ya es ilegible.

Sigue leyendo