Entropía de contraseña
Una contraseña de 12 caracteres elegidos al azar entre 95 caracteres imprimibles aporta unos 78,84 bits y se califica como fuerte. Indique el tamaño del conjunto y la longitud de una regla para comparar políticas en bits, sin escribir ninguna contraseña real. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Longitud
- 12
- Tamaño del conjunto de caracteres
- 95
- Bits por carácter
- 6,569856
- Bits de entropía
- 78,838267
- Intensidad
- strong
La entropía de una contraseña es la medida teórica de cuántos bits de imprevisibilidad lleva un secreto elegido al azar. Esta calculadora no le pide que pegue la contraseña. Toma dos cifras de política: el tamaño del conjunto de caracteres del que se extrae y la longitud en caracteres. La entropía de Shannon queda H = L × log2(N) bits. La herramienta devuelve ese valor junto con una etiqueta de fortaleza, de muy débil a muy fuerte.
Entropía de Shannon, tamaño del charset y por qué suele ganar la longitud
La entropía de Shannon trata la contraseña como una cadena de longitud L extraída de forma independiente y uniforme de un alfabeto de N símbolos. Cada carácter aporta entonces log2(N) bits, así que el secreto completo lleva H = L × log2(N) bits. El tamaño del conjunto de caracteres no es el número de glifos distintos que aparecen en una contraseña concreta: es el tamaño del pozo que el generador tiene permiso para usar.
El alfabeto inglés en minúsculas vale 26. Mayúsculas y minúsculas, 52. Letras más dígitos, 62.
ASCII imprimible, en la práctica 95. Un byte completo, 256. Las listas al estilo Diceware usan la longitud de la lista como N y el número de palabras como L.
Como el modelo supone extracciones independientes y uniformes, es una cota superior: una frase memorable, un paseo por el teclado o una contraseña filtrada tienen mucha menos entropía de la que sugiere la fórmula para la misma longitud y el mismo charset aparente. Quienes diseñan políticas siguen usando H porque responde a otra pregunta que un medidor de fortaleza: dada una regla de generación, ¿de qué tamaño es el espacio de búsqueda?
Duplicar la longitud añade otro bloque completo de log2(N) bits; duplicar el alfabeto solo añade un bit extra por carácter cuando N se duplica. Por eso un secreto ASCII imprimible de doce caracteres supera a una contraseña de ocho con mayúsculas y minúsculas, aunque ambas parezcan complejas.
Cuándo conviene medir la entropía
Los equipos de seguridad usan una calculadora de entropía de contraseña al redactar la política de generación, no cuando alguien escribe un secreto en un formulario de acceso. Las plataformas de identidad eligen la longitud del PIN y si los códigos de recuperación son solo dígitos o alfanuméricos preguntando cuántos bits produce de verdad la regla.
Los informes de cumplimiento que deben citar bits de Shannon junto a una regla de composición pueden llamar a este extremo en lugar de difundir una fórmula de hoja de cálculo que alguien copiará con un logaritmo natural por error. La validación fallida no consume saldo. Si necesita puntuar una contraseña concreta que un usuario ya eligió, incluidas listas de contraseñas comunes y estimaciones de tiempo de ruptura, esa es otra intención de búsqueda y otra herramienta.
Qué puede hacer con ella
Diseño de políticas de contraseña
Compare reglas de generación (longitud y tamaño de charset) en bits antes de publicar una política de composición o un formato de código de recuperación.
Laboratorios y notas de cumplimiento
Ofrezca a estudiantes y auditores un oráculo determinista H = L × log2(N) que rechaza una longitud no positiva en lugar de devolver cero en silencio.
Preguntas frecuentes
¿Cómo se calcula la entropía de una contraseña a partir del charset y la longitud?
La entropía de Shannon es H = L × log2(N) bits, donde L es la longitud y N el tamaño del conjunto de caracteres. La contraseña en sí nunca se envía.
¿Qué tamaños de conjunto de caracteres debe usar?
Use el pozo del que el generador puede extraer: 10 para dígitos, 26 minúsculas, 52 mayúsculas y minúsculas, 62 alfanumérico, 95 ASCII imprimible, 256 para un byte completo. Las listas de palabras usan la longitud de la lista como N y el recuento de palabras como L.
¿Qué ocurre si length no es un entero positivo?
Se rechazan el cero, los negativos, las fracciones, los valores vacíos y la longitud ausente.
¿Cómo se corresponde la etiqueta de fortaleza con los bits?
Por debajo de 28 bits es very weak, 28–36 weak, 36–60 fair, 60–128 strong, y 128 bits o más very strong. Estas bandas describen secretos uniformemente aleatorios; una contraseña elegida a mano puede ser más débil.
¿Por qué importa más la longitud que añadir tipos de caracteres?
Cada carácter adicional suma log2(N) bits completos, mientras que duplicar el conjunto solo añade un bit por carácter. Por eso una contraseña de doce caracteres imprimibles supera a una de ocho con mayúsculas y minúsculas.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/security/password-entropy \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"length":12,"charset_size":95}'const res = await fetch("https://api.kit.forhosting.com/security/password-entropy", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"length": 12,
"charset_size": 95
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/security/password-entropy",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"length": 12,
"charset_size": 95
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/security/password-entropy", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"length":12,"charset_size":95}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"length":12,"charset_size":95}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/security/password-entropy", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"length": 12,
"charset_size": 95
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "security.password_entropy",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Sirve para diseñar políticas de contraseña, longitudes de PIN, códigos de recuperación o formatos de clave API. Una longitud que no sea un entero positivo se rechaza con invalid_input.
Entropía de Shannon, tamaño del charset y por qué suele ganar la longitud
La calculadora informa bits_per_character como log2(N) para que vea la contribución por glifo junto al total.
Contrato de entrada, etiquetas de fortaleza y errores
Que la longitud no sea un entero positivo es el contrato que anuncia la página: la tarea no se factura. Los valores por encima de un millón se rechazan como fuera de rango para un parámetro de política. La fortaleza usa las bandas habituales de teoría de la información: por debajo de 28 bits es very weak, de 28 a 36 es weak, de 36 a 60 es fair, de 60 a 128 es strong, y 128 bits o más es very strong. Un alfabeto de un carácter es matemáticamente lícito y devuelve cero bits con la etiqueta very weak. Envíe un cuerpo JSON mediante POST con dos enteros positivos obligatorios: length, la longitud de la contraseña en caracteres, y charset_size, el tamaño del alfabeto generador. Se aceptan los alias length, password_length y l para el primer campo; charset_size, charset, pool, alphabet_size y pool_size para el segundo. Cada valor puede llegar como entero JSON o como cadena numérica de dígitos. Campos ausentes, cadenas vacías, booleanos, objetos, fracciones como 12.5, el cero y los negativos fallan con invalid_input nombrando el campo. Si todo es correcto, el cuerpo reitera length y charset_size, informa bits_per_character como log2 del pozo, entropy_bits como L por esa cantidad redondeada a seis decimales para goldens estables, una etiqueta de fortaleza y la cadena de fórmula H = L * log2(N). Ejemplo: length 12 y charset_size 95 (ASCII imprimible) da unos 78.84 bits y la etiqueta strong. Length 8 y charset_size 26 (solo minúsculas) da unos 37.60 bits y la etiqueta fair.
Dónde gana su sitio una API de entropía de contraseña
Quienes diseñan tokens de hardware y claves API comparan un secreto base62 de 22 caracteres con una cadena hex de 16 bytes en una sola escala. Como la implementación es parse de nivel A, cada llamada correcta cuesta el precio base publicado $0.002, sin tokens de modelo y sin red de salida. Mantenga las peticiones pequeñas, fije entropy_bits redondeado en las pruebas y obtendrá un oráculo de política reproducible para manuales, laboratorios LMS y workers de borde, sin montar una biblioteca criptográfica propia.
Casos de integración
Dimensionado de PIN y claves API
Dimensione PIN numéricos, claves API en base62 y tokens hex en una sola escala de Shannon, en vez de mezclar recuentos de dígitos con folklore sobre la complejidad.
Preguntas técnicas
¿Cuánto cuesta la calculadora de entropía de contraseña?
La herramienta del navegador es gratuita. Las peticiones API usan saldo KIT prepago a $0.002 por llamada correcta; la entrada inválida no se factura.