Cómo generar un HMAC con texto, secreto y algoritmo
Escribe un texto y un secreto, elige un algoritmo disponible y ejecuta la generación; si no seleccionas uno, se usa SHA-256. Con texto no vacío y un algoritmo utilizable, obtendrás un HMAC generado.
Qué puedes hacer con el generador de HMAC
Este generador permite obtener un HMAC a partir de un texto, un secreto y un algoritmo de hash. Puede servirte para comprobar cómo se forma un valor de autenticación para una cadena concreta o para comparar resultados al cambiar el algoritmo seleccionado. El texto y el secreto son opcionales; si no escribes un algoritmo, se utiliza SHA-256.
Pasos para generar un HMAC
-
Introduce en el campo de texto la cadena para la que quieres generar el HMAC. Si lo dejas vacío, el resultado será satisfactorio, pero el valor HMAC aparecerá vacío porque no se realiza el cálculo.
-
Escribe el secreto que se utilizará para generar el HMAC. Para obtener un resultado reproducible, usa el mismo texto y el mismo secreto en cada comprobación. Si el texto no está vacío y dejas el secreto vacío, la herramienta emplea un secreto interno de sustitución; por eso, no debes interpretar ese caso como el uso directo de un secreto vacío.
-
Selecciona o indica un algoritmo disponible. Si no especificas ninguno, se toma SHA-256 como valor predeterminado. El nombre proporcionado se utiliza para buscar una implementación de hash disponible.
-
Ejecuta la generación y revisa el resultado. Con un texto no vacío y un algoritmo utilizable, la herramienta devuelve un resultado correcto con un HMAC generado. Si cambias el texto, el secreto o el algoritmo, vuelve a generar el resultado antes de compararlo.
Cómo interpretar el resultado
Un resultado correcto con un valor HMAC generado indica que se ha podido procesar un texto no vacío con un nombre de algoritmo que resuelve a una implementación disponible. El valor depende de los datos introducidos y del algoritmo seleccionado, así que una modificación en cualquiera de ellos puede cambiarlo.
Hay dos casos que conviene distinguir. Un texto vacío no produce un HMAC calculado: la herramienta devuelve un resultado correcto con el valor HMAC vacío. Además, que el secreto esté vacío no equivale a que se use una clave vacía cuando hay texto; se aplica el secreto interno de sustitución. Por otro lado, un nombre de algoritmo que no resuelva a una implementación utilizable no se transforma localmente en un fallo estructurado. La generación correcta queda limitada a nombres que sí resuelvan.
Ejemplo práctico
Quieres generar un HMAC para la cadena «pedido-1842» usando un secreto de prueba y SHA-256.
Introduce el texto «pedido-1842», escribe un secreto de prueba y selecciona SHA-256. Ejecuta la generación y comprueba que el resultado satisfactorio incluye un valor HMAC no vacío.
El resultado esperado es satisfactorio y contiene un valor HMAC generado, sin fijar aquí una cadena concreta.
Limitaciones
- La generación queda limitada a nombres de algoritmo que resuelvan a una implementación utilizable, y el texto vacío no produce un HMAC calculado.
Errores frecuentes
- Si aparece un resultado correcto sin un valor HMAC, la causa puede ser que el campo de texto esté vacío. Escribe una cadena no vacía y vuelve a ejecutar la generación.
Preguntas frecuentes
¿Puedo generar un HMAC sin introducir texto?
Sí, pero con una condición: si el texto está vacío, la herramienta devuelve un resultado correcto con el valor HMAC vacío, sin calcularlo. Con texto no vacío y un algoritmo utilizable, genera el HMAC.
¿Qué ocurre si dejo vacío el secreto?
Si el texto no está vacío, la herramienta sustituye el secreto vacío por un secreto interno antes de generar el HMAC. Por tanto, no se usa directamente una clave vacía.
¿Qué algoritmo se usa y qué pasa con un nombre no disponible?
SHA-256 se utiliza cuando no indicas un algoritmo. Para generar un HMAC, el nombre elegido debe resolver a una implementación de hash utilizable; los nombres que no resuelven no se convierten localmente en un fallo estructurado.