Security ·

¿Es seguro usar un generador de frases semilla online?


La pregunta surge constantemente en comunidades cripto: ¿es seguro generar una frase semilla usando una herramienta online? La respuesta corta es que depende enteramente de cómo está construida esa herramienta. Un generador online mal diseñado puede exponer tus claves a atacantes antes de que financies tu billetera. Uno correctamente diseñado puede ser tan seguro como una herramienta offline. La distinción se reduce a la arquitectura, y entender esa arquitectura es tu responsabilidad como poseedor de criptomonedas.

Esta guía desglosa exactamente qué hace que un generador de frases semilla online sea seguro o peligroso, cómo verificar en qué categoría cae una herramienta dada, y qué estándares técnicos deberías exigir de cualquier herramienta que toque tus claves criptográficas.

El riesgo de los generadores online

Cuando generas una frase semilla BIP39, estás creando el secreto maestro que controla todos los fondos en tu billetera. Si alguien más obtiene esa frase, puede vaciar cada moneda de cada dirección derivada de ella. Este no es un riesgo teórico. Miles de millones de dólares han sido robados a través de generación de claves comprometida.

El riesgo fundamental con cualquier generador online es la transmisión. Si la herramienta envía tu frase semilla, tu clave privada, o incluso la entropía bruta usada para crearlas a un servidor remoto, entonces una copia de tu secreto existe fuera de tu control. Ese servidor podría ser hackeado. El operador podría ser malicioso. Un intermediario podría interceptar los datos. Los registros de red podrían grabarlo.

El peligro también se extiende a herramientas que cargan código de servidores externos en cada visita. Incluso si el generador era seguro ayer, un CDN comprometido o una actualización maliciosa podría inyectar código que robe claves hoy. Sin código verificable y auditable, no puedes saber qué está realmente ejecutándose en tu navegador en el momento en que generas tu frase.

Cliente vs servidor: una diferencia crítica

El factor más importante al evaluar cualquier generador de frases semilla online es si opera del lado del cliente o del servidor.

Un generador del lado del servidor crea tu frase semilla en un servidor remoto y la envía a tu navegador. Tu secreto pasa por internet en tránsito, existe en la memoria del servidor y potencialmente queda registrado. Incluso con cifrado HTTPS, el operador del servidor tiene acceso a cada clave generada. Este modelo es fundamentalmente incompatible con la seguridad, y nunca deberías usar un generador de frases semilla del lado del servidor bajo ninguna circunstancia.

Un generador del lado del cliente ejecuta todas las operaciones criptográficas dentro de tu navegador. La entropía se genera localmente, la frase semilla se deriva localmente, y las claves resultantes nunca salen de tu dispositivo. El sitio web proporciona el código, pero una vez cargado, funciona independientemente del servidor. Si te desconectas de internet después de cargar la página, un generador verdaderamente del lado del cliente sigue funcionando perfectamente.

Sin embargo, "del lado del cliente" es una afirmación que debe verificarse. Muchas herramientas afirman ser del lado del cliente mientras siguen haciendo solicitudes de red, cargando scripts externos o incluyendo rastreadores de analíticas que podrían capturar datos en pantalla. La siguiente sección explica cómo confirmar estas afirmaciones tú mismo.

Cómo verificar que un generador es del lado del cliente

Verificar que una herramienta opera verdaderamente del lado del cliente requiere algunas comprobaciones directas que cualquiera puede realizar.

La prueba del modo avión

La prueba más simple: carga la página del generador, luego desconéctate de internet completamente. Activa el modo avión en tu dispositivo, desconecta el cable Ethernet o apaga el WiFi. Ahora intenta generar una frase semilla. Si la herramienta funciona perfectamente sin conexión de red, al menos está realizando el paso de generación localmente.

Inspección de tráfico de red

Abre las Herramientas de Desarrollo de tu navegador (F12 o Cmd+Shift+I) y cambia a la pestaña Red antes de usar el generador. Borra las entradas existentes, luego genera una frase semilla. Observa si hay solicitudes salientes después de hacer clic en el botón de generar. Una herramienta legítima del lado del cliente no debería hacer ninguna solicitud de red durante la generación. Sospecha de cualquier solicitud a dominios externos, endpoints de analíticas o llamadas API.

Revisión del código fuente

Los generadores de código abierto te permiten revisar el código real que se ejecuta en tu navegador. Verifica que:

  • La generación de números aleatorios usa la Web Crypto API integrada del navegador en lugar de una función aleatoria personalizada o importada
  • No se hacen llamadas fetch(), XMLHttpRequest, o WebSocket con datos generados
  • No se cargan scripts externos de CDNs que podrían ser comprometidos
  • Los scripts de analíticas o seguimiento están ausentes, o al menos no pueden acceder al contenido DOM de la página

Integridad de subrecursos

Verifica si la página usa hashes de Integridad de Subrecursos (SRI) en sus etiquetas de script. SRI asegura que los scripts cargados desde fuentes externas no han sido manipulados. Sin SRI, un CDN comprometido podría servir JavaScript malicioso que capture tus claves.

El estándar Web Crypto API

Los navegadores modernos incluyen una API criptográfica integrada llamada Web Crypto API. Este es el estándar de oro para la generación de entropía en herramientas basadas en navegador.

Cuando un generador de frases semilla llama a crypto.getRandomValues(), obtiene aleatoriedad del generador de números pseudoaleatorios criptográficamente seguro (CSPRNG) del sistema operativo. En la mayoría de los sistemas, esto combina fuentes de entropía del hardware incluyendo temporización de interrupciones, ruido térmico del CPU y generadores de números aleatorios de hardware dedicados. La aleatoriedad resultante es indistinguible de datos verdaderamente aleatorios para todos los propósitos criptográficos prácticos.

Esto importa porque la seguridad de tu frase semilla BIP39 es en última instancia la seguridad de la entropía usada para generarla. Una frase semilla de 128 bits (12 palabras) requiere 128 bits de aleatoriedad genuina. Si una herramienta usa Math.random() en lugar de crypto.getRandomValues(), el pool de entropía es dramáticamente menor, y las frases semilla resultantes podrían ser atacadas por fuerza bruta. Consulta ¿Qué es la entropía en cripto? para una exploración más profunda de por qué la calidad de la entropía importa.

La arquitectura de SafeSeed

SafeSeed está diseñado desde cero como una herramienta del lado del cliente. Cada operación criptográfica, desde la generación de entropía hasta la derivación de frase semilla y el cálculo de clave privada, se ejecuta enteramente dentro de tu navegador.

Así es como la arquitectura de SafeSeed aborda cada uno de los riesgos descritos arriba:

La generación de entropía usa exclusivamente la Web Crypto API. Cuando usas el Generador de frases semilla Bitcoin o el Generador de frases semilla Ethereum, la aleatoriedad proviene del CSPRNG de tu sistema operativo a través de crypto.getRandomValues().

No hay comunicación con el servidor durante la generación de claves. SafeSeed hace cero solicitudes de red al generar, mostrar o derivar claves. Puedes verificarlo tú mismo usando el método de inspección de red descrito arriba, o simplemente desconectarte de internet después de cargar la página.

Código abierto y auditable significa que no necesitas confiar en las afirmaciones de SafeSeed. El código fuente está disponible públicamente para revisión por cualquiera. Investigadores de seguridad, criptógrafos y desarrolladores experimentados pueden verificar que la implementación coincide con las afirmaciones.

Sin dependencias externas para operaciones criptográficas. La derivación BIP39, generación de claves y cálculo de direcciones usan código empaquetado directamente con la página. No hay bibliotecas cripto cargadas desde CDN que puedan ser reemplazadas silenciosamente.

Tu lista de evaluación

Antes de usar cualquier generador de frases semilla online, revisa esta lista. Una herramienta legítima debería pasar cada punto.

Propiedades imprescindibles

  1. Ejecución del lado del cliente: La herramienta debe funcionar sin conexión a internet después de la carga inicial de la página. Pruébalo tú mismo con el modo avión.

  2. Uso de Web Crypto API: El código fuente debe usar crypto.getRandomValues() para la entropía. Verifica el código fuente o la documentación del desarrollador.

  3. Sin solicitudes de red durante la generación: Abre la pestaña Red del navegador y confirma cero solicitudes salientes al generar una frase semilla.

  4. Código abierto: El código fuente completo debería estar disponible públicamente para auditoría. Los generadores propietarios requieren que confíes ciegamente en el operador.

  5. Sin scripts de analíticas o seguimiento: Scripts de terceros como Google Analytics, Hotjar o herramientas similares podrían capturar datos en pantalla incluyendo tu frase semilla mostrada.

Indicadores fuertes de calidad

  • Cumplimiento BIP39 con validación de checksum: La herramienta debería generar frases con un checksum válido y explicar claramente el estándar que implementa. Lee BIP39 explicado para detalles.

  • Derivación determinista: Dada la misma frase semilla, la herramienta debería siempre derivar las mismas claves y direcciones. Puedes verificar cruzando resultados con otras herramientas confiables.

  • Soporte para rutas de derivación estándar: La derivación de billeteras HD debería seguir los estándares BIP44 para que las billeteras generadas sean recuperables en cualquier software compatible. Aprende más en Billeteras HD y rutas de derivación.

  • Documentación clara del modelo de seguridad: La herramienta debería explicar exactamente qué se ejecuta dónde, qué datos salen de tu dispositivo (nada debería), y cómo se genera la entropía.

Señales de alerta

  • Requiere creación de cuenta o ingreso de correo electrónico antes de generar una frase semilla
  • Incluye botones de compartir en redes sociales en la página de generación
  • Carga scripts de múltiples dominios externos
  • Usa generación de números aleatorios personalizada en lugar de la Web Crypto API
  • No proporciona código fuente para revisión
  • Hace solicitudes de red durante la generación de frases semilla
  • Pide almacenar o "respaldar" tu frase semilla en su servidor

La diferencia entre un generador online seguro y uno peligroso es arquitectónica, no superficial. Una interfaz bonita no significa nada si el código envía datos al servidor. Una herramienta fea puede ser perfectamente segura si se ejecuta enteramente en tu navegador con entropía adecuada. Aprende las verificaciones, realízalas tú mismo, y podrás evaluar cualquier herramienta con confianza.

Para contexto adicional sobre la relación entre frases semilla y claves privadas, consulta Frase semilla vs clave privada. Y si estás listo para generar claves de forma segura, tanto el Generador de frases semilla Bitcoin como el Generador de claves privadas Ethereum en SafeSeed están construidos sobre los principios descritos en este artículo.