Sigstore, um serviço de verificação de código criptográfico da Red Hat e Google

A Red Hat e o Google, junto com a Purdue University, anunciaram recentemente a fundação do projeto SigstoreDe quem objetivo é criar ferramentas e serviços para verificar software usando assinaturas digitais e manter um registro de transparência pública. O projeto será desenvolvido sob os auspícios da Linux Foundation, uma organização sem fins lucrativos.

O projeto proposto aumentar a segurança dos canais de distribuição de software e proteger contra ataques direcionados para substituir componentes e dependências de software (cadeia de suprimentos). Uma das principais preocupações de segurança em software de código aberto é a dificuldade de verificar a fonte do programa e verificar o processo de construção.

Por exemplo para verificar a integridade de uma versão, a maioria dos projetos usa hash, Mas, muitas vezes, as informações necessárias para autenticação são armazenadas em sistemas desprotegidos e em repositórios de código compartilhados, como resultado do comprometimento de que os invasores podem substituir os arquivos necessários para a verificação e sem levantar suspeitas, introduzem alterações maliciosas.

Apenas uma minoria de projetos usa assinaturas digitais para distribuir lançamentos devido às complexidades do gerenciamento de chaves a distribuição de chaves públicas e a revogação de chaves comprometidas. Para que a verificação faça sentido, você também precisa organizar um processo confiável e seguro para distribuir chaves públicas e somas de verificação. Mesmo com uma assinatura digital, muitos usuários ignoram a verificação, pois leva tempo para estudar o processo de verificação e entender qual chave é confiável.

Sobre a Sigstore

Sigstore é promovido como um analógico do Let's Encrypt para o código, pfornecendo certificados para assinatura de código digital e ferramentas para automatizar a verificação. Com o Sigstore, os desenvolvedores podem assinar digitalmente artefatos relacionados ao aplicativo, como arquivos de inicialização, imagens de contêiner, manifestos e executáveis. Uma característica da Sigstore é que o material usado para a assinatura é refletido em um registro público protegido de mudanças, que pode ser usado para verificação e auditoria.

Em vez de chaves constantes, Sigstore usa chaves efêmeras de curta duração, Eles são gerados com base nas credenciais confirmadas pelos provedores OpenID Connect (no momento em que as chaves para a assinatura digital são geradas, o desenvolvedor é identificado por meio do provedor OpenID com um link de e-mail). A autenticidade das chaves é verificada em relação ao registro público centralizado, permitindo que você garanta que o autor da assinatura é exatamente quem afirma ser e que a assinatura foi formada pelo mesmo participante responsável pelas versões anteriores.

A Sigstore fornece um serviço pronto para uso e um conjunto de ferramentas que permitem implementar serviços semelhantes em seu computador. O serviço é gratuito para todos os desenvolvedores e fornecedores de software e é implementado em uma plataforma neutra: a Linux Foundation. Todos os componentes do serviço são de código aberto, escritos na linguagem Go e são distribuídos sob a licença Apache 2.0.

Dos componentes que estão sendo desenvolvidos, pode-se notar:

  • Rekor: uma implementação de um registro para armazenar metadados assinados digitalmente que refletem informações sobre projetos. Para garantir integridade e proteção contra distorção de dados, a estrutura de árvore "Tree Merkle" é usada retroativamente, onde cada branch verifica todos os threads e componentes subjacentes, graças a uma função hash.
  • Fulcio (SigStore WebPKI) um sistema para a criação de autoridades de certificação (Root-CA) que emite certificados de curta duração com base em e-mails autenticados por meio do OpenID Connect. A vida útil do certificado é de 20 minutos, durante os quais o desenvolvedor deve ter tempo para gerar uma assinatura digital (se no futuro o certificado cair nas mãos de um invasor, ele expirará).
  • Сosign (Container Signing) um conjunto de ferramentas para gerar assinaturas em contêineres, verifique as assinaturas e coloque os contêineres assinados em repositórios compatíveis com OCI (Open Container Initiative).

Por fim, se você tiver interesse em saber mais sobre este projeto, pode consultar os detalhes no link a seguir.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: AB Internet Networks 2008 SL
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.