01 — Principios
No negociables
- Generación del lado del cliente: los Web Workers de su CPU crean cada par de claves.
- Tránsito de clave cero: no existe ninguna API que acepte o devuelva claves privadas.
- Almacenamiento de claves cero: sin base de datos, sin registros de secretos, sin análisis de patrones o direcciones.
- Verificable: código abierto, auditoría en vivo, prueba fuera de línea, panel de red.
- Prueba sin exposición: las pruebas que se pueden compartir solo llevan dirección + patrón.
In the proof
- Public address
- Prefix / suffix pattern
- Chain · mode · timestamp
Never in the link
- Private key / seed
- Worker memory dumps
- Clipboard or exports
Las afirmaciones de marketing no tienen valor sin controles. Utilice live audit y la sección Verificar a continuación.
02 — Arquitectura
donde viven las llaves
Vanitas es un sitio estático de Next.js. El host (por ejemplo, Vercel) ofrece HTML, CSS, JS y paquetes de trabajadores prediseñados. La criptografía nunca se ejecuta en ese host para sus claves.
- —Main thread UI
- —Web Workers (keys in RAM)
- —sessionStorage: address only
Tu navegador
Hilo principal
UI · Reaccionar · controles
Trabajadores web
W1…Wn — moler · coincidir · postMensaje
Las claves privadas solo existen aquí: RAM en su dispositivo
Red durante la minería
No se requiere ninguno. Después de cargar los recursos, el modo avión sigue funcionando. La única ruta API propia (/api/domains) sugiere enlaces de dominio de Solana: no genera ni recibe claves.
Nuestros servidores
Entregar archivos. No se puede leer su memoria de trabajador. No se puede interceptar un par de claves terminado. Un origen comprometido podría servir a JS malicioso; es por eso que las comprobaciones de integridad y el código abierto son importantes (consulte Integridad y navegador).
03 — Amenazas
Modelo de amenaza (honesto)
En alcance: diseñamos en contra
- Robo de claves del lado del servidor (no hay claves en el servidor).
- Rastreo casual de redes durante la minería (sin tráfico clave).
- Clickjacking de la aplicación principal (denegación de cuadros en rutas principales).
- Rutas obvias de exfiltración XSS (CSP; todavía no es una solución milagrosa).
Fuera de alcance/responsabilidad compartida
- Extensiones de navegador maliciosas que leen la memoria de la página o el portapapeles: deshabilítelas en un perfil limpio al falsificar claves de alto valor.
- Dispositivo/malware comprometido: los keyloggers a nivel de sistema operativo superan a cualquier sitio web.
- Estás pegando claves en Discord/phishing: la seguridad operativa es tuya.
- Cadena de suministro de dependencias: fijamos y auditamos; puede verificar los hashes de los trabajadores y reconstruir desde la fuente.
La minería de vanidad no crea una clave "más débil". Los patrones largos sólo cuestan más CPU; no reducen la entropía de la clave privada.
04 — Almacenamiento
lo que almacenamos
Nada sobre sus claves en nuestros servidores. No hay bases de datos de direcciones, patrones, IP para minería o SDK de análisis en la ruta de forja.
No hay claves privadas en el disco o servidor
No se recopilan claves/direcciones públicas de forma remota
Telemetría sin patrón
Sin sistema de cuentas
Sin análisis de terceros en la promesa del producto
sessionStorage hallazgos recientes = dirección + patrón solamente, esta sesión del navegador
Enlaces de prueba = parámetros de consulta que elige compartir (sin claves)
05 - Cripto
Algoritmos por fragua
La aleatoriedad siempre proviene del navegador CSPRNG (crypto.getRandomValues). Las curvas y la derivación de direcciones difieren según la cadena:
solana
Ed25519 → Base58
Web Crypto nativo o respaldo WASM · billetera / mint
EVM
secp256k1 + keccak-256
0x EOA · CREAR · CREAR2
bitcóin
secp256k1
Legado · SegWit · Taproot · Exportación WIF
tron
secp256k1 + keccak → Base58Check
T… billetera / CREAR
Aptos
Ed25519 + SHA3-256
dirección de cuenta 0x
sui
Ed25519 + Blake2b-256
0x con bandera de esquema
TON
Ed25519 · Cartera v4R2
UQ / EQ Base64url
Cardano
Ed25519 · CIP-19 empresarial
addr1... solo clave de pago
XRP
secp256k1 · XRPL Base58
Direcciones r… clásicas
Las comprobaciones posteriores a la búsqueda pueden validar el tamaño de la entropía, la presencia de CSPRNG y la uniformidad de chi-cuadrado en una muestra aleatoria: una verificación del estado de la ruta RNG, no un sustituto de la higiene del dispositivo.
06 — Integridad
Trabajadores y hashes publicados
El código de minería se envía como archivos estáticos public/*-worker.js creados a partir de fuentes TypeScript. Cada compilación de producción registra resúmenes SHA-256 en worker-hash.json. La página de auditoría vuelve a cifrar los trabajadores que cargó su navegador y los compara con ese archivo.
Si los hash divergen, trate la página como si no fuera de confianza: deténgala, no use claves e investigue (implementación incorrecta, caché o manipulación). La reconstrucción desde el repositorio abierto debería reproducir los mismos bytes de trabajo para una confirmación determinada.
07 — Encabezados
encabezados de seguridad HTTP
Las respuestas incluyen encabezados que reducen el impacto XSS, fuerzan HTTPS y bloquean el encuadre de la aplicación principal. CSP todavía permite lo que Next.js necesita (incluidas algunas compensaciones en línea/evaluación): los encabezados ayudan; no reemplazan la revisión del código.
CSP
Política-de-seguridad-de-contenido
Limita scripts, trabajadores, connect-src
HSTS
Estricta seguridad en el transporte
edad máxima = 31536000
Marco
Opciones de X-Frame: DENEGAR
La aplicación principal no se puede integrar
MIME
Opciones de tipo de contenido X: nosniff
Sin rastreo MIME
referente
origen-estricto-cuando-origen-cruzado
Limita la fuga de referencia
08 — Navegador
Lo que el navegador aún puede hacer
Cualquier cosa que se ejecute con privilegios de página puede, en teoría, leer los mensajes DOM y Worker. Eso incluye:
- Extensiones de navegador con amplio acceso al sitio
- DevTools abierto en una máquina compartida
- Scripts inyectados maliciosos si existe XSS
- Rastreadores del portapapeles después de copiar una clave
Mitigaciones: perfil limpio del navegador, sin extensiones innecesarias, prefiera descargar archivos en lugar del portapapeles para claves de alto valor, borrar el portapapeles después de pegarlo en una billetera, considere la CLI del terminal o una máquina con espacio de aire para grandes tesoros.
09 - Flujo de trabajo
Procedimiento operativo seguro
- Cargue vanitas.fun (o ejecútelo desde una compilación local verificada).
- Opcional: abra la red, desconéctese, ejecute la auditoría.
- Elija primero un patrón corto; aumente la longitud una vez que confíe en la configuración.
- Al buscar: exportar, almacenar sin conexión, nunca capturar claves en aplicaciones de chat.
- Importar a la billetera correcta para esa cadena; enviar una transferencia de prueba de polvo.
- Para tenencias a largo plazo, mueva los fondos a una billetera de hardware: Vanitas es una fragua, no una bóveda.
10 - Verificar
Tres controles que cualquiera puede realizar
01 — Red
monitor de red
- DevTools → Red → borrar
- Empezar a generar
- Confirmar cero solicitudes durante la minería
02 - Sin conexión
Modo avión
- Cargar la aplicación
- Desconectar
- Generar: el éxito demuestra que no hay dependencia del servidor activo
11 - Divulgar
Informar problemas
No abra problemas públicos de GitHub en busca de vulnerabilidades de seguridad. Prefiere avisos de seguridad privados de GitHub en bytebrox/vanitas. Incluya los pasos de reproducción, el impacto y una solución sugerida, si la tiene.
¿Puedes robar mis llaves?
No tenemos una ruta del lado del servidor que los reciba. Una compilación o extensión maliciosa podría verificar hashes y utilizar un entorno limpio para obtener un alto valor.
¿Qué pasa si el host es pirateado?
Los atacantes podrían publicar JavaScript alterado. Es por eso que el código abierto, las comprobaciones de hash de los trabajadores y la preferencia por un compromiso conocido son importantes. El anfitrión todavía nunca recibe las claves terminadas de una compilación limpia.
¿Las direcciones personalizadas son menos seguras?
No. La entropía de la clave privada no cambia. Sólo se filtra la dirección pública por apariencia.
¿Debería falsificar claves de almacenamiento en frío en un navegador diario?
Para fondos importantes: perfil limpio o sin conexión/CLI, transferencia de prueba pequeña y luego custodia de billetera de hardware.








