O que é Integridade de Subrecurso (SRI)?
Integridade de Subrecurso (SRI) é um recurso de segurança que permite aos navegadores verificar se arquivos carregados de fontes externas — como CDNs — não foram alterados ou comprometidos. Quando você adiciona um atributo integrity a uma tag <script> ou <link>, o navegador compara o hash do arquivo baixado com o hash esperado. Se não coincidirem, o navegador bloqueia o recurso.
Por que usar SRI?
Carregar JavaScript ou CSS de CDNs de terceiros é conveniente, mas introduz um risco de segurança. Se o CDN for comprometido, invasores poderiam injetar código malicioso no seu site. SRI elimina esse risco garantindo que apenas a versão exata e verificada de um arquivo seja executada.
Prevenir Ataques na Cadeia de Suprimentos
Proteger Dados do Usuário
Estar em Conformidade com Padrões de Segurança
Como Funciona?
SRI usa funções de hash criptográfico (SHA-256, SHA-384 ou SHA-512) para criar uma impressão digital do conteúdo do arquivo. Esse hash é adicionado à tag HTML como um atributo integrity, junto com crossorigin="anonymous" para habilitar a verificação baseada em CORS.
Como Usar o Gerador de Hash SRI
Cole o Conteúdo do Arquivo
Copie o conteúdo completo do arquivo JavaScript ou CSS que deseja proteger e cole-o na textarea Conteúdo. O hash é gerado automaticamente conforme você digita ou cola.
Escolha um Algoritmo
Selecione um algoritmo de hash na barra de ferramentas. SHA-384 é selecionado por padrão e é a escolha recomendada para SRI. Você também pode usar SHA-256 ou SHA-512 dependendo dos seus requisitos.
Defina o Tipo de Tag
Escolha se o recurso é uma tag <script> (JavaScript) ou <link> (folha de estilo CSS). Se você inserir uma URL com extensão .js ou .css, o tipo de tag é detectado automaticamente.
Adicione uma URL de Recurso (Opcional)
Digite a URL do CDN do recurso no campo URL do Recurso. Esta URL será usada no atributo src ou href da tag HTML gerada. Se deixado em branco, uma URL de espaço reservado é usada.
Copie a Saída
Copie apenas o hash de integridade ou a tag HTML completa usando os botões de cópia. Cole a tag diretamente no seu HTML para habilitar a proteção SRI.
Recursos Principais
Múltiplos Algoritmos de Hash
Gere hashes SRI usando SHA-256, SHA-384 ou SHA-512. SHA-384 é o algoritmo padrão e recomendado pela especificação W3C SRI.
- SHA-256 para segurança básica
- SHA-384 (recomendado)
- SHA-512 para máxima força
- Alternância instantânea de algoritmo
Detecção Automática de Tipo de Tag
Quando você insere uma URL de recurso, a ferramenta detecta automaticamente se é um arquivo JavaScript ou folha de estilo CSS e seleciona o tipo de tag apropriado.
- Detecta arquivos .js automaticamente
- Detecta arquivos .css automaticamente
- Substituição manual disponível
- Análise inteligente de URL
Saída HTML Pronta para Usar
Obtenha uma tag HTML completa com os atributos integrity e crossorigin já inclusos. Simplesmente copie e cole no seu documento HTML.
- Tags <script> completas
- Tags <link> completas
- Atributos CORS inclusos
- Sem necessidade de edição manual
Cópia com Um Clique
Copie o valor do hash de integridade ou a tag HTML completa com um único clique. Uma confirmação visual aparece quando o conteúdo é copiado para sua área de transferência.
- Copie apenas o hash
- Copie a tag HTML completa
- Confirmação visual
- Acesso instantâneo à área de transferência
Processamento no Cliente
Todo o cálculo de hash é realizado inteiramente no seu navegador usando a Web Crypto API. O conteúdo do seu arquivo nunca é enviado para qualquer servidor.
- 100% baseado em navegador
- Sem envios para servidor
- Privacidade completa
- Funciona offline
Geração em Tempo Real
Os valores de hash são calculados instantaneamente conforme você digita ou cola conteúdo. Sem necessidade de clicar em botões de geração ou aguardar processamento.
- Cálculo instantâneo de hash
- Atualizações de visualização ao vivo
- Sem atrasos ou esperas
- Processamento eficiente
Perguntas Frequentes
Qual algoritmo devo usar para SRI?
SHA-384 é recomendado pela W3C e é o algoritmo mais amplamente usado para SRI. Ele oferece um equilíbrio forte entre segurança e desempenho. SHA-256 e SHA-512 também são suportados por todos os navegadores modernos.
Preciso do atributo crossorigin?
Sim. O atributo crossorigin="anonymous" é necessário para que SRI funcione com recursos carregados de uma origem diferente (como um CDN). Sem ele, o navegador não pode verificar a integridade de recursos de origem cruzada.
O valor anonymous significa que nenhuma credencial (cookies, autenticação HTTP) é enviada com a solicitação, que é a configuração padrão para recursos públicos de CDN.
O que acontece se o hash não corresponder?
Se o hash do arquivo baixado não corresponder ao atributo integrity, o navegador recusará executar o script ou recusará aplicar a folha de estilo. Isso protege seu site de carregar arquivos comprometidos.
O CDN precisa suportar CORS?
Sim. O servidor que hospeda o recurso deve incluir o cabeçalho Access-Control-Allow-Origin para que a verificação SRI funcione. A maioria dos CDNs populares (jsDelivr, cdnjs, unpkg) já suporta CORS.
Se você estiver usando um CDN que não suporta CORS, a verificação SRI falhará e o recurso não será carregado. Neste caso, você precisará alternar para um CDN habilitado para CORS ou hospedar o recurso no seu próprio domínio.
Meu conteúdo é enviado para um servidor?
Não. Todo o hash é feito localmente no seu navegador usando a Web Crypto API. O conteúdo do seu arquivo nunca sai do seu dispositivo.
Posso usar múltiplos algoritmos em uma tag?
Sim, a especificação SRI permite múltiplos hashes separados por espaços (por exemplo, sha256-abc sha384-xyz). O navegador usará o algoritmo mais forte que suporta. Esta ferramenta gera um hash por vez — você pode combiná-los manualmente se necessário.
Usar múltiplos hashes fornece compatibilidade com versões anteriores com navegadores mais antigos, enquanto garante que navegadores mais novos usem o algoritmo mais forte disponível.
Ainda não há comentários. Seja o primeiro a comentar!