Generador de Clave de API
Una clave de API es un token secreto utilizado para autenticar solicitudes entre servicios, aplicaciones y APIs. Este generador usa la Web Crypto API (crypto.getRandomValues) para producir claves aleatorias criptográficamente seguras — generadas desde una fuente de alta entropía y prácticamente imposibles de adivinar o forzar.
Puedes personalizar la longitud de la clave (8 a 128 caracteres), elegir entre codificación hexadecimal (0–9, a–f) o Base62 (0–9, A–Z, a–z), añadir un prefijo opcional como 'sk_' o 'pk_live_', y generar múltiples claves a la vez. Las claves nunca se envían a ningún servidor — todo se ejecuta localmente en tu navegador.
Como funciona
Cada carácter de la clave se deriva de un byte aleatorio producido por crypto.getRandomValues(). Para salida hexadecimal, cada byte se mapea a dos dígitos hex (00–ff). Para Base62, cada byte se calcula módulo 62 y se mapea a un carácter del conjunto [0-9A-Za-z], proporcionando aproximadamente 5.95 bits de entropía por carácter.
Casos de uso
- Generar claves de API para productos SaaS y servicios de backend
- Crear tokens secretos para firmas de webhook y autenticación HMAC
- Provisionar tokens de acceso temporales para entornos de prueba y desarrollo
- Producir identificadores aleatorios seguros para registros de base de datos o IDs de sesión
- Generar múltiples claves en lote para poblar entornos de staging o QA
Preguntas frecuentes
¿Cómo se genera una clave de API segura?
Usa una fuente de aleatoriedad criptográficamente segura en lugar de funciones comunes como Math.random. Este generador utiliza la Web Crypto API (crypto.getRandomValues), que extrae valores de una fuente de alta entropía, haciendo que las claves sean prácticamente imposibles de adivinar o romper por fuerza bruta.
¿Cuál es una buena longitud para una clave de API?
Para la mayoría de las aplicaciones, 32 caracteres o más es una elección sólida. En Base62 cada carácter aporta unos 5.95 bits de entropía, así que una clave de 32 caracteres contiene aproximadamente 190 bits — mucho más de lo que es viable romper por fuerza bruta. En hexadecimal, cada carácter aporta solo 4 bits, por lo que se necesitan claves más largas (p. ej., 64 caracteres hex para 256 bits).
¿Cuál es la diferencia entre codificación hex y Base62?
El hexadecimal usa 16 caracteres (0-9, a-f) y codifica 4 bits por carácter, mientras que Base62 usa 62 caracteres (0-9, A-Z, a-z) y codifica unos 5.95 bits por carácter. Esto significa que una clave Base62 puede ser bastante más corta que una clave hex con el mismo nivel de seguridad. El hex suele preferirse cuando la clave debe corresponder directamente a bytes crudos.
¿Las claves generadas se envían a algún servidor?
No. Todo se ejecuta localmente en tu navegador usando la Web Crypto API, y ninguna clave se transmite ni se almacena en ningún lugar. Al cerrar o actualizar la página, las claves generadas desaparecen, así que cópialas y guárdalas de forma segura antes de salir.
¿Por qué las claves de API usan prefijos como sk_ o pk_live_?
Los prefijos identifican a simple vista el tipo y el entorno de la clave — por ejemplo, secreta versus pública, o producción versus prueba. También ayudan a las herramientas de escaneo de secretos a detectar claves filtradas en repositorios de código. El prefijo no añade fuerza criptográfica; la seguridad proviene por completo de la parte aleatoria de la clave.