implementing-sigstore-for-software-signing
Faz seu agente implementar assinatura e verificação de software usando Sigstore para garantir a proveniência.
O que ela faz
Esta ferramenta ajuda a garantir que o software que você usa é autêntico e não foi alterado. Ela cria uma assinatura digital para o software usando sua identidade online (como sua conta Google ou GitHub), sem que você precise gerenciar senhas complexas.
Quando usar
- ✓Ao publicar novas versões de um programa.
- ✓Para verificar se um programa baixado é o original.
- ✓Em sistemas automáticos que criam e testam software.
Exemplo do que pedir para a IA
“Assine esta imagem de container com minha conta do GitHub.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Ele usa uma ferramenta chamada Cosign para criar uma assinatura digital. Essa assinatura é vinculada à sua identidade online (OIDC) e registrada em um log público (Rekor) para que qualquer pessoa possa verificar.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill implementing-sigstore-for-software-signingOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/implementing-sigstore-for-software-signing/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Implementando Sigstore para Assinatura de Software
Quando Usar
- Assinar imagens de contêiner e artefatos de software sem gerenciar chaves criptográficas de longa duração
- Estabelecer proveniência verificável para saídas de compilação em pipelines de CI/CD usando vinculação de identidade OIDC
- Consultar o log de transparência Rekor para auditar quando e por quem um artefato foi assinado
- Verificar se as imagens de contêiner puxadas de registros foram assinadas por identidades e emissores autorizados
- Integrar a verificação Sigstore em controladores de admissão do Kubernetes para impor políticas de imagem assinada
Não use para assinar artefatos que exigem fluxos de trabalho de assinatura offline ou "air-gapped" onde a autenticação OIDC não está disponível, para ambientes que não conseguem alcançar a infraestrutura pública Sigstore (Fulcio, Rekor) e não possuem uma instância privada implantada, ou como substituto para a assinatura tradicional PGP/GPG onde a conformidade regulatória exige procedimentos específicos de gerenciamento de chaves.
Pré-requisitos
- Cosign CLI v2.4+ instalado (
go install github.com/sigstore/cosign/v2/cmd/cosign@latestou lançamento binário) - Acesso a um provedor de identidade OIDC suportado pelo Fulcio (Google, GitHub, Microsoft ou um emissor OIDC personalizado)
- Credenciais do registro de contêiner (para assinar imagens de contêiner) com acesso de push para armazenar objetos de assinatura
- Python 3.9+ com
sigstore,requestsecryptographypacotes para o agente de automação - Acesso à rede para
fulcio.sigstore.dev,rekor.sigstore.devetuf-repo-cdn.sigstore.dev(ou URLs de instância Sigstore privada)
Fluxo de Trabalho
Passo 1: Instalar e Configurar o Cosign
Instale o Cosign e verifique se ele consegue alcançar a infraestrutura Sigstore:
- Instalar a partir do lançamento binário: Baixe o binário apropriado da página de lançamentos do Cosign no GitHub e verifique seu checksum. No Linux:
curl -LO https://github.com/sigstore/cosign/releases/latest/download/cosign-linux-amd64 && chmod +x cosign-linux-amd64 && sudo mv cosign-linux-amd64 /usr/local/bin/cosign - Verificar instalação: Execute
cosign versionpara confirmar a versão e verificar a conectividade com os serviços Sigstore comcosign initialize, que busca a raiz de confiança TUF. - Configurar infraestrutura personalizada (opcional): Se estiver executando uma pilha Sigstore privada, defina as flags
--fulcio-url,--rekor-urle--oidc-issuerou use as variáveis de ambienteCOSIGN_REKOR_URLeCOSIGN_FULCIO_URL.
Passo 2: Assinatura Sem Chave com Cosign e Fulcio
Realize a assinatura baseada em identidade onde o Fulcio emite um certificado de curta duração vinculado à sua identidade OIDC:
- Assinar uma imagem de contêiner: Execute
cosign sign <IMAGE_DIGEST>, que aciona um fluxo de autenticação OIDC. O Cosign gera um par de chaves efêmero, obtém um certificado de curta duração do Fulcio vinculando a chave pública à identidade OIDC, assina o digest da imagem e registra o evento de assinatura no Rekor. A chave privada é destruída imediatamente após a assinatura. - Assinar um blob (arquivo): Execute
cosign sign-blob <file> --bundle artifact.sigstore.jsonpara assinar arquivos arbitrários. O pacote contém a assinatura, certificado, timestamp e prova de inclusão do Rekor. - Assinatura não interativa em CI: Defina a variável de ambiente
SIGSTORE_ID_TOKENcom um token OIDC válido (por exemplo, do GitHub Actions OIDC ou GCP workload identity) para pular o fluxo de autenticação baseado em navegador:export SIGSTORE_ID_TOKEN=$(curl -sH "Authorization: bearer $ACTIONS_ID_TOKEN_REQUEST_TOKEN" \ "$ACTIONS_ID_TOKEN_REQUEST_URL&audience=sigstore" | jq -r '.value') cosign sign $IMAGE_DIGEST - Provedores OIDC suportados: Google (
https://accounts.google.com), GitHub (https://github.com/login/oauth), Microsoft (https://login.microsoftonline.com), GitLab (https://gitlab.com) e provedores personalizados registrados com uma instância Fulcio privada.
Passo 3: Verificar Artefatos Assinados
Verifique se os artefatos foram assinados por identidades esperadas de emissores OIDC esperados:
- Verificar uma imagem de contêiner: Execute
cosign verify <IMAGE_URI> --certificate-identity=name@example.com --certificate-oidc-issuer=https://accounts.google.compara confirmar que a imagem foi assinada pela identidade especificada. O Cosign valida a cadeia de certificados, verifica a prova de inclusão do Rekor e verifica se a assinatura corresponde ao digest atual da imagem. - Verificar um blob assinado: Execute
cosign verify-blob <file> --bundle artifact.sigstore.json --certificate-identity=name@example.com --certificate-oidc-issuer=https://accounts.google.com
…
Perguntas frequentes
Preciso criar senhas ou chaves secretas?
Não, ele usa sua identidade online (como Google ou GitHub) para assinar, um processo chamado 'keyless'.
O que é 'proveniência criptográfica'?
É uma forma de provar quem criou ou assinou um software e garantir que ele não foi modificado desde então.
O que acontece se eu não tiver acesso à internet?
Este método requer acesso à internet para se conectar aos serviços Sigstore (Fulcio, Rekor). Ele não funciona para ambientes totalmente offline.
Detalhes
Descrição original do autor
Implements Sigstore-based software signing and verification using Cosign keyless signing, Rekor transparency log verification, and Fulcio certificate authority integration to establish cryptographic provenance for container images, binaries, and software artifacts, including OIDC-based identity binding and CI/CD pipeline integration. Use when setting up keyless container/artifact signing, verifyin
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #5960
- Licença
- Apache-2.0
- Atualizada em
- 31/08/2026
Comentários
- …
Mais skills deste repositório
abusing-dpapi-for-credential-access
Dá ao seu agente de IA instruções prontas para uma tarefa específica, para ele fazer melhor e mais rápido.
mukul975/Anthropic-Cybersecurity-Skills
abusing-shadow-credentials-for-privesc
Ensina seu agente de IA a escrever textos claros e bem estruturados.
mukul975/Anthropic-Cybersecurity-Skills
achieving-cmmc-level-2-compliance
Ajuda seu agente a preparar um ambiente para conformidade com CMMC Nível 2. Ele implementa requisitos de segurança e gerencia a documentação necessária.
mukul975/Anthropic-Cybersecurity-Skills
acquiring-disk-image-with-dd-and-dcfldd
Ajuda seu agente a criar cópias exatas de discos rígidos. Isso é útil para garantir que nenhuma informação seja perdida ou alterada durante investigações.
mukul975/Anthropic-Cybersecurity-Skills
Skills parecidas
django-security
Ajuda seu agente a implementar práticas de segurança em aplicações Django. Ele foca em autenticação, autorização e prevenção contra ataques comuns, garantindo um código mais seguro.
affaan-m/ECC
laravel-security
Ajuda seu agente a proteger aplicações Laravel contra ameaças. Implementa práticas de segurança para autenticação, autorização e prevenção de ataques comuns.
affaan-m/ECC
module-regression
Ajuda seu agente a gerenciar mudanças em projetos grandes. Garante que alterações em uma parte do código não quebrem outras partes.
affaan-m/ECC