Quais são as assinaturas de GPG?

10

Olhando para questões como ESTE , THIS e ESTE Peço para conhecimento público as seguintes perguntas:

  1. Quais são as assinaturas GPG para?

  2. Que nível adicional de segurança as assinaturas adicionam ou fornecem aos usuários?

  3. Quais são alguns dos problemas comuns associados às Assinaturas GPG com PPAs no Launchpad e por que são produzidos?

por Luis Alvarado 23.08.2012 / 02:58

1 resposta

8

O que é o GPG?

O GPG, ou GNU Privacy Guard , é um conjunto de software criptográfico. Ele pode ser usado para criptografar ou assinar dados e comunicações para garantir sua autenticidade.

Este tipo de criptografia é baseado em pares de chaves. Uma chave pública é hospedada em um servidor de chaves (por exemplo, keyserver.ubuntu.com) e a chave privada é mantida em segredo. Usando a chave pública, pode-se verificar a assinatura feita por uma chave privada. Da mesma forma, conhecer a chave pública de alguém permitirá que você criptografe uma mensagem que só pode ser lida pelo proprietário da chave secreta correspondente.

Leituras adicionais: GnuPG para uso diário (um mini como fazer ...)

O que isso tem a ver comigo?

Neste contexto, o repositório apt do qual você está baixando um pacote deve ser assinado por uma chave secreta para que você possa verificar se os pacotes que você está instalando vêm de onde eles dizem que estão.

O arquivo real no repositório assinado é o arquivo Release . Este arquivo contém as somas de verificação de um número de outros arquivos no repositório. Por exemplo, aqui está o arquivo para o repositório oficial do Ubuntu 12.10 e seu Correspondência da assinatura GPG . Quando você instala um pacote, apt verifica a assinatura.

Leitura adicional: Tudo sobre seguro apt

Problemas comuns

A chave pública para o arquivo oficial do Ubuntu já é conhecida pelo seu computador, mas se você quiser adicionar um repositório PPA ou de terceiros, você deve importar sua chave. Se você tentar atualizar um repositório cuja chave não possui, verá avisos como:

W: GPG error: http://ppa.launchpad.net oneiric Release: The following signatures
couldn't be verified because the public key is not available: NO_PUBKEY B725097B3ACC3965

Quando você instala um pacote desse repositório, você também receberá um aviso:

WARNING: The following packages cannot be authenticated!
  dropbox
Install these packages without verification [y/N]?

Embora esses avisos possam ser silenciados executando apt com o sinal --allow-unauthenticated , mas é melhor adicionar a chave ao sistema para que você possa aproveitar a segurança adicional.

Ao adicionar um PPA , você deve usar a ferramenta add-apt-repository , pois isso tratará automaticamente da adição da chave para você. Se você precisar adicionar a chave manualmente, use o seguinte comando:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys KEY_ID_HERE

Se você preferir fazer isso sem usar o terminal, consulte esta resposta .

    
por andrewsomething 23.08.2012 / 05:26