Inicio › Herramientas para desarrolladores › Generador de claves API

Generador de claves API

Genera claves API y secretos como lo hacen las plataformas modernas: un prefijo legible, un cuerpo aleatorio criptográfico con el número de bits que elijas y una suma de verificación opcional, además del hash SHA-256 que deberías guardar en lugar de la clave.

Última actualización:

Entropía por clave–
Longitud de la clave–

Exportar

Claves generadas

    Verificar una clave

    Publicidad
    Publicidad

    Cómo usar Generador de claves API

    1. Elige un formato: Base62 es compacto y fácil de copiar, hex es universal y Base64url incluye más bits por carácter.
    2. Elige la seguridad en bits (256 es un buen valor por defecto) o escribe una longitud exacta.
    3. Añade un prefijo como sk_live_ y decide si usar suma de verificación o agrupación.
    4. Pulsa Generar claves y luego copia claves sueltas o expórtalas todas en .txt, .env, JSON o CSV.
    5. Guarda solo el hash SHA-256 en tu servidor y muestra la clave al usuario una sola vez. Usa el verificador para validar claves más adelante.

    Anatomía de una clave API moderna

    Muchas plataformas usan ahora claves formadas por tres partes, por ejemplo sk_live_edblw91dbgYb3B9AsPvJSkkfSQR8CtkWCnyLQBkqewL0oZJzF:

    ParteEjemploPropósito
    Prefijosk_live_Indica qué es la clave (secreta / publicable) y dónde funciona (live / test). Facilita detectar y escanear claves filtradas.
    Cuerpo aleatorio43 caracteres Base62La parte secreta: 43 × log2(62) = 256.0 bits de entropía procedentes de un generador aleatorio criptográfico.
    Suma de verificación6 caracteres Base62CRC32 de todo lo anterior, escrito en Base62. Detecta errores de escritura y permite a los escáneres ignorar cadenas aleatorias parecidas. No es secreta.

    Para validar la suma de verificación en tu propio código: toma la clave sin sus últimos 6 caracteres (y sin el - final si usaste agrupación), calcula el CRC-32 estándar (IEEE, el mismo que crc32 de zlib), convierte el número a Base62 con el alfabeto 0-9A-Za-z y rellénalo por la izquierda con 0 hasta 6 caracteres.

    Longitud de la clave para cada formato

    FormatoBits por carácter128 bits256 bits512 bits
    Hex4.00032 caracteres64 caracteres128 caracteres
    Base325.00026 caracteres52 caracteres103 caracteres
    Base625.95422 caracteres43 caracteres86 caracteres
    Base64url6.00022 caracteres43 caracteres86 caracteres
    UUID v4–siempre 36 caracteres con 122 bits aleatorios

    Longitud = ⌈bits ÷ log2(tamaño del alfabeto)⌉. La herramienta redondea hacia arriba, así que la entropía mostrada puede quedar un poco por encima del objetivo (por ejemplo, 22 caracteres Base62 dan 131.0 bits).

    Cómo guardar y verificar claves de forma segura

    1. Genera la clave, muéstrasela al usuario una vez y nunca la registres en los logs.
    2. Guarda SHA-256(clave) junto con el prefijo y los últimos 4 caracteres para mostrarlos (por ejemplo sk_live_…ZJzF).
    3. En cada solicitud, verifica primero la suma de verificación (un rechazo barato de datos basura), luego calcula el hash de la clave presentada y búscalo con una comparación de tiempo constante.
    4. Permite varias claves activas por cuenta para poder rotarlas sin interrupciones y deja que los usuarios las revoquen.

    Un hash rápido es suficiente para claves API porque contienen 128 o más bits aleatorios, que no se pueden descifrar por fuerza bruta. Las contraseñas elegidas por personas son distintas y necesitan un hash lento como bcrypt o Argon2.

    Preguntas frecuentes

    ¿Cuántos bits debe tener una clave API?

    Al menos 128 bits de entropía, lo que hace que adivinarla sea imposible en la práctica. 256 bits es una elección habitual y coincide con el tamaño de clave de HMAC-SHA256 y AES-256. La tarjeta de entropía muestra la cifra exacta para tu configuración; el prefijo y la suma de verificación no añaden entropía.

    ¿Por qué añadir un prefijo a una clave API?

    Un prefijo como sk_live_ indica a personas y herramientas para qué sirve la clave y a qué entorno pertenece. Facilita reconocer claves filtradas en los registros y permite que las herramientas de escaneo de secretos las encuentren en repositorios de código.

    ¿Para qué sirve la suma de verificación?

    Los últimos 6 caracteres pueden ser una suma de verificación CRC32 del resto de la clave, codificada en Base62. Tu API puede rechazar claves mal escritas o truncadas sin consultar la base de datos, y los escáneres pueden distinguir claves reales de cadenas aleatorias parecidas. La suma de verificación no es secreta y no añade seguridad.

    ¿Debo guardar las claves API en mi base de datos?

    Guarda un hash en su lugar. Como las claves API son largas y aleatorias, basta con un hash rápido como SHA-256 (a diferencia de las contraseñas, que necesitan bcrypt o Argon2). Cuando llegue una solicitud, calcula el hash de la clave presentada y busca ese hash. La herramienta muestra el hash SHA-256 de cada clave para este fin.

    ¿Qué formato debo elegir?

    Base62 (0–9, A–Z, a–z) es compacto y se selecciona con doble clic. Hex se acepta en todas partes, pero es más largo. Base64url es el más corto, pero incluye - y _. Base32 no distingue mayúsculas y minúsculas, lo que ayuda cuando las claves se leen en voz alta. UUID v4 tiene 122 bits fijos.

    ¿Las claves se generan de forma segura y privada?

    Sí. Las claves se obtienen de crypto.getRandomValues con muestreo por rechazo, así que cada carácter tiene la misma probabilidad. Todo se ejecuta en tu navegador y ninguna clave se envía ni se guarda en ningún sitio.

    ¿Se prueban todas las herramientas de FreeToolCabin para comprobar su calidad y precisión?

    Sí. Cada herramienta del sitio pasa pruebas automáticas en navegadores reales para comprobar que el resultado es correcto y que no hay errores. Si encuentras un fallo o tienes una sugerencia, escríbenos a [email protected] y lo revisaremos.

    Herramientas relacionadas

    Ver todas las de Generadores de código →