Gerador de Hash SRI | Toolypet
Gerador de hash SRI gratuito online. Gere hashes de integridade de subrecursos. Disponivel como MCP.
O que é isso?
Um gerador de hash de Subresource Integrity (SRI) que calcula hashes criptográficos para scripts e folhas de estilo externos. Cria atributos de integridade usando SHA-256, SHA-384 ou SHA-512 para garantir que recursos hospedados em CDN não foram adulterados.
Entrada
Digite o conteúdo exato do script ou folha de estilo que deseja proteger
SHA-384 é recomendado para o melhor equilíbrio entre segurança e compatibilidade
URL opcional para os exemplos HTML gerados
Pré-visualização
Digite o conteúdo e clique em gerar para criar o hash SRI
Como Usar
Cole o conteúdo de um arquivo JavaScript ou CSS, selecione um algoritmo de hash (SHA-384 recomendado) e opcionalmente forneça a URL do recurso. A ferramenta gera o hash de integridade e uma tag HTML completa com atributos integrity e crossorigin pronta para uso.
Análise Aprofundada
Ataques à cadeia de suprimentos de CDN são um vetor de ameaça crescente. Quando seu site carrega JavaScript de um CDN (cdnjs, jsDelivr, unpkg), você confia que o CDN serve o arquivo correto e não modificado. Se o CDN for comprometido (como aconteceu com ua-parser-js, event-stream e cdnjs), código malicioso executa com todas as permissões do seu site.
O SRI (Subresource Integrity) fornece uma defesa:
1. Você calcula um hash criptográfico do conteúdo esperado do arquivo
2. O navegador baixa o arquivo e calcula seu hash
3. Se os hashes não corresponderem, o navegador bloqueia o recurso inteiramente
Detalhes de implementação:
- O atributo integrity contém o prefixo do algoritmo e o hash codificado em base64
integrity="sha384-oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxy9rx7HNQlGYl1kPzQho1wx4JwY8wC"
- Múltiplos hashes podem ser especificados para migração de algoritmo
integrity="sha256-abc... sha384-def..." (navegador usa o mais forte suportado)
- crossorigin="anonymous" é OBRIGATÓRIO para recursos cross-origin
Sem ele, o navegador não pode ler a resposta para verificar a integridade
O suporte dos navegadores é excelente: Chrome 45+, Firefox 43+, Safari 11+, Edge 17+. Navegadores sem suporte simplesmente ignoram o atributo integrity e carregam normalmente.
Limitações:
- Funciona apenas para tags <script> e <link> (não para <img>, <video>, etc.)
- Quebra quando CDNs servem conteúdo dinâmico ou modificam arquivos (diferenças de minificação, compressão)
- Não protege contra pacotes npm comprometidos — se você atualizar para uma versão maliciosa e regenerar hashes, o SRI validará o conteúdo malicioso
Automação:
- Plugin webpack-subresource-integrity gera hashes SRI no momento do build
- Parcel suporta SRI via configuração
- Para fluxos manuais: openssl dgst -sha384 -binary file.js | base64
Exemplos
- Gere SRI hash for a jQuery CDN script to prevent tampering
- Crie atributos de integridade para todas as folhas de estilo hospedadas em CDN na sua aplicação
- Verifique se uma biblioteca hospedada em CDN corresponde ao hash esperado antes do deploy
- Gere SHA-384 hashes for multiple third-party scripts in a security audit
Instalar servidor MCP do Toolypet
Adicione as ferramentas do Toolypet ao seu agente de IA com um único comando. Compatível com Claude Desktop, Claude Code, Cursor e qualquer cliente compatível com MCP.
Início rápido
npx -y @toolypet/mcp-server@latest
Configuração do cliente MCP
{
"mcpServers": {
"toolypet": {
"command": "npx",
"args": [
"-y",
"@toolypet/mcp-server@latest"
]
}
}
}Nome da ferramenta:
mcp__toolypet__sri_hash_generatorExemplo de prompt
Generate SRI hash for a JavaScript file content
Exemplo de Entrada
{
"content": "console.log('hello');",
"algorithm": "sha384"
}Exemplo de Saída
{
"hash": "sha384-oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxy9rx7HNQlGYl1kPzQho1wx4JwY8wC",
"integrity": "sha384-oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxy9rx7HNQlGYl1kPzQho1wx4JwY8wC",
"tag": "<script src=\"...\" integrity=\"sha384-oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxy9rx7HNQlGYl1kPzQho1wx4JwY8wC\" crossorigin=\"anonymous\"></script>"
}Perguntas Frequentes
- Qual algoritmo de hash devo usar para SRI?
- SHA-384 é recomendado como padrão pela especificação W3C. Ele fornece um excelente equilíbrio entre segurança e performance. SHA-256 também é aceitável. SHA-512 oferece a maior segurança, mas sem benefício prático sobre SHA-384 para este caso de uso.
- O que acontece quando um hash SRI não corresponde?
- O navegador bloqueia o recurso inteiramente — o script não será executado ou a folha de estilo não será aplicada. Este é o comportamento pretendido: é melhor ter uma página quebrada do que executar código potencialmente malicioso. Use estratégias de carregamento de fallback para recursos críticos.
- Eu need crossorigin='anonymous' with SRI?
- Sim, para recursos cross-origin (arquivos hospedados em CDN). Sem ele, o navegador não pode verificar a integridade porque restrições CORS impedem a leitura do conteúdo da resposta. O CDN também deve enviar cabeçalhos CORS apropriados.
- Como atualizo hashes SRI quando as bibliotecas são atualizadas?
- Regenere o hash cada vez que atualizar a versão de uma biblioteca. Automatize isso no seu pipeline de build: busque o novo arquivo, calcule seu hash e atualize seus templates HTML. Ferramentas como webpack-subresource-integrity podem automatizar esse processo.
- O SRI pode proteger contra todos os ataques à cadeia de suprimentos?
- O SRI protege contra comprometimento de CDN e modificação em trânsito, mas não contra um pacote fonte comprometido. Se uma versão maliciosa for publicada no npm e você atualizar para ela, o SRI corresponderá ao conteúdo malicioso. Combine SRI com auditoria de dependências e lock files.
- Como usar esta ferramenta no Claude/Cursor?
- Você pode usar esta ferramenta via MCP. Adicione o servidor MCP do Toolypet à configuração do seu agente AI com 'npx -y @toolypet/mcp-server@latest'. Depois peça ao seu AI para usar mcp__toolypet__sri_hash_generator com seus parâmetros.
- O que é MCP e por que o Toolypet o suporta?
- MCP (Model Context Protocol) é um padrão aberto que permite que agentes AI como Claude e Cursor usem ferramentas externas. O Toolypet suporta MCP para que você possa usar todas as mais de 65 ferramentas tanto no navegador quanto através de agentes AI, integrando cálculos e operações perfeitamente ao seu fluxo de trabalho com AI.