Qué es Generador de hash CSP?
Un hash CSP es un digesto codificado en base64 SHA-256, SHA-384 o SHA-512 del contenido exacto de un bloque de script o estilo inline. Cuando agrega el hash a su encabezado CSP como script-src 'sha256-...' o style-src 'sha256-...', el navegador permite que ese código inline específico se ejecute mientras bloquea todos los demás scripts o estilos inline. Esta es la alternativa más segura a 'unsafe-inline'.
Respuesta rápida
Use un hash CSP para permitir un script o estilo inline específico sin habilitar todo el código inline con unsafe-inline. El hash es un digesto criptográfico del contenido exacto del código — SHA-256 es el estándar. Agregue el hash a su CSP como script-src 'sha256-...' o style-src 'sha256-...'.
Last updated: 2026-05-28
Limitaciones
- El hash solo es válido para el contenido exacto hasheado. Cualquier cambio de espacio en blanco, formato o contenido produce un hash completamente diferente y rompe la lista blanca CSP.
- Algunas herramientas de compilación y minificadores HTML pueden modificar el espacio en blanco inline en producción, invalidando los hashes generados a partir del código de desarrollo. Verifique contra la salida de producción.
- Los hashes CSP no funcionan con manejadores de eventos inline (onclick, onerror) sin habilitar unsafe-hashes, lo que debilita significativamente la seguridad.
Sources:MDN Web Docs · W3C Specifications · jquery.app on GitHub
Cómo usar esta herramienta
- Copie el contenido exacto del script o estilo inline de su HTML — cada espacio, nueva línea y sangría debe coincidir.
- Péguelo en el área de texto y seleccione el algoritmo de hash.
- Copie el valor hash y agréguelo a su encabezado CSP o meta tag como parte de script-src o style-src.
Para qué puedes usarla
- Permitir un script inline específico para un cargador de ruta crítica o fragmento de análisis sin habilitar todos los scripts inline.
- Permitir un bloque de estilo inline pequeño para CSS crítico visible mientras se carga una hoja de estilo.
- Actualizar un CSP existente que usa unsafe-inline a una lista blanca basada en hash para mayor seguridad.