
Eu queria saber se uma chave pública adicionada por apt-key
é
- por repositório (todos os pacotes em um repositório são autenticados com a mesma chave pública) ou
- por pacote (pacotes diferentes no mesmo repositório podem ser autenticados com chaves públicas diferentes).
Em outras palavras, o que uma chave pública autentica: um pacote, um repositório ou qualquer outra coisa?
A página de manual apt-key
diz
apt-key é usado para gerenciar a lista de chaves usadas pelo apt para autenticarpacotes. Os pacotes que foram autenticados usando essas chaves serão considerados confiáveis.
... É fundamental que as chaves adicionadas manualmente por meio do apt-key sejam verificadas como pertencentes ao proprietário do os repositórioseles afirmam ser a favor.
Por exemplo, eu queria saber por que não há repositório ou algo mais especificado como escopo ao qual uma chave pública é aplicável.
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9
Obrigado.
Responder1
As chaves em si não têm escopo: qualquer chave adicionada ao apt
chaveiro é considerada uma chave de assinatura válida.
Nos repositórios no estilo Debian, a assinatura se aplica a todo o repositório: Release
o arquivo de cada repositório é assinado, seja como uma assinatura desanexada ( Release.gpg
) ou inline ( InRelease
). A assinatura indica qual chave foi usada para assinar o arquivo (ou quais chaves, já que um arquivo pode ser assinado por múltiplas chaves). Todo o resto é verificado usando as informações do Release
arquivo. VerComo é garantida a autenticidade dos pacotes Debian?para detalhes.
Se você quiser especificar quais chaves devem ser usadas para verificar um determinado repositório, você pode fazer isso na descrição do repositório em sources.list
, não ao adicionar a chave ao apt
chaveiro de ; veja a Signed-By
opção ema sources.list
página de manual.