Featured image of post Subresource Integrity (SRI): Garantizando integridad de recursosFeatured image of post Subresource Integrity (SRI): Garantizando integridad de recursos

Subresource Integrity (SRI): Garantizando integridad de recursos

Complete guide to Subresource Integrity (SRI) for web security: hash generation, crossorigin config, build-time integration, CSP correlation, and monitoring.

Subresource Integrity (SRI) permite verificar que un archivo cargado desde un CDN no ha sido manipulado, comparando su hash criptográfico.

Cómo funciona

El atributo integrity contiene un hash (SHA-256, SHA-384, SHA-512) del contenido esperado. El navegador calcula el hash y lo compara. Si no coincide, bloquea el recurso.

Ejemplo

<script src="https://cdn.example.com/lib.js"
  integrity="sha384-..."
  crossorigin="anonymous">

El crossorigin es obligatorio para recursos CORS.

Generación de hashes

openssl dgst -sha384 -binary archivo.js | openssl base64 -A. O usando herramientas online de SRI. Automatiza en el build process.

SRI en frameworks

Vite genera SRI automáticamente (vite-plugin-sri). Next.js soporta SRI. Webpack: webpack-subresource-integrity.