Carregar uma biblioteca a partir de um CDN é prático, mas introduz uma dependência externa. Subresource Integrity (SRI) permite ao navegador verificar se o ficheiro recebido corresponde exatamente à impressão digital esperada.
O princípio
Calcula-se uma impressão digital criptográfica de uma versão específica do ficheiro e adiciona-se esse valor ao atributo integrity da etiqueta correspondente. Se o conteúdo transferido não produzir a mesma impressão digital, o navegador recusa-se a utilizá-lo.
O gerador de hash SRI permite preparar este valor localmente.
O SRI é adequado para recursos estáveis
O mecanismo funciona bem com um recurso versionado e imutável. Se o fornecedor alterar o ficheiro mantendo o mesmo URL, a impressão digital muda e o recurso será bloqueado. É precisamente o comportamento pretendido para garantir a integridade, mas deve ser integrado no processo de atualização.