Sigstore, o sistema de verificação criptográfica já está estável

Loja de assinaturas

O Sigstore pode ser pensado como um Let's Encrypt para código, fornecendo certificados para assinar digitalmente o código e ferramentas para automatizar a verificação.

Google revelado através de um post no blog, o anúncio de a formação das primeiras versões estáveis ​​de os componentes que compõem o projeto loja de assinaturas, que é declarado adequado para criar implantações de trabalho.

Para quem não conhece a Sigstore, deve saber que este é um projeto que tem a finalidade de desenvolver e fornecer ferramentas e serviços para a verificação de software usando assinaturas digitais e mantendo um registro público que confirme a autenticidade das alterações (registro de transparência).

Com a Sigstore, os desenvolvedores podem assinar digitalmente artefatos relacionados ao aplicativo, como arquivos de lançamento, imagens de contêiner, manifestos e executáveis. O material usado para a assinatura é refletida em um registro público à prova de adulteração que pode ser usado para verificação e auditoria.

Em vez de chaves permanentes, Sigstore usa chaves efêmeras de curta duração que são gerados com base nas credenciais verificadas pelos provedores OpenID Connect (no momento de gerar as chaves necessárias para criar uma assinatura digital, o desenvolvedor é identificado através do provedor OpenID com um link de e-mail).

A autenticidade das chaves é verificada por um registro público centralizado, que permite certificar-se de que o autor da assinatura é exatamente quem diz ser e que a assinatura foi formada pelo mesmo participante que foi responsável pelas versões anteriores.

A preparação do Sigstore para implementação deve-se a versionamento de dois componentes principais: Rekor 1.0 e Fulcio 1.0, cujas interfaces de programação são declaradas estáveis ​​e, doravante, mantêm compatibilidade com versões anteriores. Os componentes do serviço são escritos em Go e são lançados sob a licença Apache 2.0.

O componente Rekor contém uma implementação de registro para armazenar metadados assinados digitalmente que refletem informações sobre projetos. Para garantir a integridade e proteção contra corrupção de dados, é usada uma estrutura Merkle Tree na qual cada branch verifica todos os branches e nós subjacentes por meio de hash conjunto (árvore). Ao ter um hash final, o usuário pode verificar a correção de todo o histórico de operações, bem como a correção dos estados anteriores do banco de dados (o hash de verificação raiz do novo estado do banco de dados é calculado considerando o estado passado). Uma API RESTful para verificação e adição de novos registros é fornecida, bem como uma interface de linha de comando.

O componente fulcius (SigStore WebPKI) inclui um sistema de criação de autoridades de certificação (CA raiz) que emitem certificados de curta duração com base em e-mail autenticado via OpenID Connect. A vida útil do certificado é de 20 minutos, durante os quais o desenvolvedor deve ter tempo para gerar uma assinatura digital (se o certificado cair nas mãos de um invasor no futuro, ele já estará expirado). Também, o projeto desenvolve o kit de ferramentas Cosign (Container Signing), projetado para gerar assinaturas para contêineres, verificar assinaturas e colocar contêineres assinados em repositórios compatíveis com OCI (Open Container Initiative).

A introdução de Sigstore permite aumentar a segurança dos canais de distribuição de software e proteger contra ataques direcionados à substituição de bibliotecas e dependências (cadeia de suprimentos). Um dos principais problemas de segurança no software de código aberto é a dificuldade de verificar a origem do programa e verificar o processo de compilação.

O uso de assinaturas digitais para verificação de versão ainda não é difundido devido a dificuldades no gerenciamento de chaves, distribuição de chaves públicas e revogação de chaves comprometidas. Para que a verificação faça sentido, também é necessário organizar um processo confiável e seguro para a distribuição de chaves públicas e somas de verificação. Mesmo com uma assinatura digital, muitos usuários ignoram a verificação porque leva tempo para aprender o processo de verificação e entender qual chave é confiável.

O projeto está sendo desenvolvido sob os auspícios da Linux Foundation sem fins lucrativos do Google, Red Hat, Cisco, vmWare, GitHub e HP Enterprise com a participação da OpenSSF (Open Source Security Foundation) e da Purdue University.

Por fim, se você estiver interessado em saber mais sobre o assunto, consulte os detalhes em o seguinte link.


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.