La versión honesta del pitch de cualquier protocolo de privacidad incluye una lista de ataques contra los que no defiende. Preferimos que leas esa lista ahora antes que descubrirla por las malas.
SolMask rompe el vínculo on-chain entre un depósito y un retiro usando pruebas de conocimiento cero sobre un pool blindado. Esa es una propiedad real, fundamentada matemáticamente. Lo que sigue es lo que esa propiedad no incluye.
Correlación temporal si retiras demasiado rápido
El retraso de privacidad es un mínimo, no una recomendación. Si depositas una cantidad distintiva y luego retiras la misma cantidad una hora y un slot después —exactamente el mínimo que permite el protocolo— un observador con un cronómetro y un explorador de cadena probablemente acertará que las dos están vinculadas. Las matemáticas dicen que la cadena no lo sabe; el tiempo dice que tú sí.
Un ataque pasivo de correlación temporal no cuesta nada de ejecutar. Cualquiera con acceso a un RPC de Solana puede hacerlo retroactivamente, días o meses después, alineando la lista pública de depósitos y la lista pública de retiros. La defensa es tu elección de retraso y el tamaño del conjunto de anonimato en la ventana que esperaste. El protocolo no puede elegirlos por ti.
Si la cantidad de tu depósito es inusual (digamos, 7,3219 SOL), el problema temporal se agudiza aún más, porque el universo de retiros plausibles que coinciden es mucho más estrecho de lo que es para cantidades redondas. Usa números redondos, usa el retraso más largo que puedas aguantar y evita la tentación de retirar en el momento en que tu slot de desbloqueo se cumpla.
Rastreo de IP a nivel de RPC
Cuando tu navegador se comunica con un endpoint RPC de Solana para construir tu transacción de depósito o retiro, tu dirección IP es visible para el operador del RPC. Lo mismo es cierto para cualquier indexador que tu wallet pingue, el relayer por el que pase tu retiro y cualquier analítica de terceros a la que tu wallet llame silenciosamente.
La blockchain no registra IPs, pero la infraestructura que transporta tu transacción a la cadena sí. Un adversario decidido que pueda correlacionar logs RPC desde la wallet que depositó y desde la wallet nueva que retiró podría ser capaz de atarlas, aunque la cadena misma no.
Las defensas aquí no son criptográficas. Viven en la capa de red: enruta tu tráfico por Tor o por una VPN sin logs, idealmente usando distintos nodos de salida para tus sesiones de depósito y retiro; evita ejecutar ambas sesiones consecutivas desde la misma IP; considera usar un RPC autoalojado o uno con políticas documentadas de retención de logs. Nosotros proveemos las matemáticas; tú aportas la higiene de red.
Vinculabilidad de la dirección destinataria
Esto está cubierto en detalle en cómo elegir una dirección de destinatario, pero vale la pena repetirlo aquí. Si la wallet a la que retiras tiene cualquier historial on-chain que la ata a tu identidad real —tu dirección de depósito en exchange, tu wallet principal, tu dirección de votación en DAO— la privacidad del retiro de SolMask colapsa.
La cadena no sabe quién eres. Pero sabe todo sobre lo que ha hecho cada dirección. Si una dirección objetivo es públicamente "tuya" por cualquier razón, el retiro a esa dirección es efectivamente un retiro a tu nombre.
Una wallet nueva, nunca usada, financiada limpiamente sin tocar tu wallet de origen, es la única configuración en la que la criptografía te compra lo que afirma.
Compromiso del administrador en v1
SolMask tiene una cuenta administradora. El administrador puede pausar el protocolo en una emergencia, añadir o eliminar activos soportados, vetar wallets específicas en la capa de depósito (como parte de los controles de direcciones de alto riesgo) y barrer las comisiones acumuladas. El administrador no puede descifrar tus notas, alterar tu retiro, congelar un depósito específico ni extraer fondos de un pool sin pasar por la misma instrucción de retiro con verificación de prueba que usa cada usuario.
Pero "pausar" es una palanca real. Si la llave del administrador queda comprometida —o si su poseedor es coaccionado— los retiros pueden detenerse en todo el protocolo hasta que el administrador actúe de nuevo. Tus fondos no se pierden en este escenario; se quedan en el pool, recuperables cuando se levante la pausa. Sin embargo, son ilíquidos hasta entonces.
La autoridad de administración está en manos de un multisig, con la gobernanza endureciéndose con el tiempo. Calibra tu uso según tu comodidad con el poder de pausa del administrador.
Compromiso de la configuración confiable antes de la ceremonia v2
Groth16, el sistema de pruebas que usa SolMask, requiere una configuración confiable única para generar los parámetros públicos a los que se refiere cada prueba. Si alguien que participó en la configuración conservó la aleatoriedad secreta ("residuo tóxico") usada durante la ceremonia, esa persona podría en principio falsificar pruebas y vaciar el pool.
La solidez de la ceremonia depende de que los contribuyentes descarten su entropía. Un beacon público de bloque de Bitcoin sirve como ancla de aleatoriedad y hace que la ceremonia sea no-replicable.
Una ceremonia pública multipartita —muchos participantes independientes— está planeada a medida que el protocolo madura. Una ceremonia multipartita distribuye la confianza entre muchos contribuyentes independientes, de modo que ninguna parte por sí sola puede comprometer la configuración. Consulta Trusted setup para el procedimiento de verificación y la hoja de ruta.
Canales laterales en los que no hemos pensado
Los sistemas de privacidad fallan de formas creativas. Hemos hecho lo que hemos podido para probar los escollos estándar —huellas de cantidad, fugas de tiempo, degradación del conjunto de anonimato, ataques de replay— pero la historia de este rincón de la criptografía es mayormente la historia de fugas inesperadas. Invitamos a cualquiera a mirar nuestros circuitos, nuestro verificador y nuestro código de relayer y decirnos qué se nos escapó. Si encuentras algo, por favor repórtalo antes de publicarlo.
La criptografía es fuerte. El sistema alrededor de la criptografía es lo que debería preocuparte. Usa SolMask para las amenazas para las que fue construido y no asumas que cubre más de lo que esta página admite.