Title: Como Verificar Assinatura de Software no Linux Post by: tg88 on June 13, 2020, 11:23:26 PM Como sugerido a alguns dias pelo sabotag3x (https://bitcointalk.org/index.php?topic=3336968.msg54557711#msg54557711) estou criando este tópico para explicar como se faz verificação de assinatura GPG da Electrum no Linux. (No caso usei Electrum apenas como exemplo mas este método pode e deve ser utilizado para verificar assinatura de qualquer software desde que o seu criador disponibilize essa possibilidade).
Após realizar o download através do site oficial a verificação de assinatura é o passo final para verificar a integridade de um software, simplesmente baixar um software do site oficial não garante a sua legitimidade pois o site pode ter sido invadido e o seu conteúdo alterado... Esse tipo de verificação se torna ainda mais importante quando o software em questão se trata de uma Wallet de Bitcoin. Verificando a Assinatura GPG do instalador: 1° Acessar o site oficial da electrum e e realizar o download dos arquivos Electrum-3.3.8.tar.asc e Electrum-3.3.8.tar.gz.asc (Este arquivo .asc é o arquivo que contem a assinatura) Esse manual também serve para o formato Appimage... basta baixar o arquivo e sua respectiva assinatura. 2° Download feito.. agora acesse via terminal a pasta onde estão localizados os arquivos que você baixou: https://i.postimg.cc/zfZsccqV/1.png Depois de acessar a pasta eu executei o comando gpg --verify Electrum-3.3.8.tar.gz.asc Electrum-3.3.8.tar.gz E retorno a mensagem "Impossível Verificar a assinatura: Sem chave pública" Este erro ocorreu pois para que a verificação ocorra eu preciso primeiramente importar a chave pública disponibilizada pelo autor do software, que no caso da electrum é o ThomasV. 3° Então vamos lá, nesse terceiro passo vamos fazer a importação da chave publica disponibilizada pelo ThomasV: https://i.postimg.cc/Bnrjw48H/2.png Salve esse arquivo ThomasV.asc assinalado na imagem acima, coloque ele na mesma pasta onde estão localizados os demais arquivos e execute no terminal o comando: gpg --import ThomasV.asc https://i.postimg.cc/9Qd2Ch8G/3.png 4° Pronto, agora que já importamos a a chave pública basta executar novamente o comando gpg --verify Electrum-3.3.8.tar.gz.asc Electrum-3.3.8.tar.gz para verificar se o software baixado é legitimo: https://i.postimg.cc/qqTYmhrS/4.png No Site da Electrum tem manuais para verificar assinatura no MacOS e Windows: https://bitzuma.com/posts/how-to-verify-an-electrum-download-on-windows/ (https://bitzuma.com/posts/how-to-verify-an-electrum-download-on-windows/) https://bitzuma.com/posts/how-to-verify-an-electrum-download-on-mac/ (https://bitzuma.com/posts/how-to-verify-an-electrum-download-on-mac/) Title: Re: Como Verificar Assinatura de Software no Linux Post by: Disruptivas on September 03, 2023, 05:08:20 PM Vou dar up nesse tópico porque acho que é SUPER IMPORTANTE!
E eu nunca tinha visto, mas é algo que sempre precisei e acho que a maioria de nós não tinha visto ainda. Title: Re: Como Verificar Assinatura de Software no Linux Post by: Disruptivas on September 03, 2023, 06:36:02 PM Alguém já fez o processo pelo MAC?
Eu segui o tutorial que a Electrum cita no website, mas que não é do site da Electrum, mas fiquei com uma dúvida. No tutorial que a Electrum linka, esse aqui: https://bitzuma.com/posts/how-to-verify-an-electrum-download-on-mac/ Eles dizem: Thomas Voegtlin is the Electrum lead developer. The Electrum site reports his key ID as 0x2bd5824b7f9470e6. Use this value to look up Voegtlin’s public key. Click the GPG Keychain “Lookup Key” button and enter the developer key ID. The click Search. Mas eu não encontrei onde dentro do site da Electrum eles proveem esse Key ID. No website eles dão a chave assim: -----BEGIN PGP PUBLIC KEY BLOCK----- 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 =sUYl -----END PGP PUBLIC KEY BLOCK----- E ai no tutorial, onde está assim ''The Electrum site reports his key ID as 0x2bd5824b7f9470e6.'' E em ''reports'' está linkado essa página: https://pgp.mit.edu/pks/lookup?op=vindex&search=0x2BD5824B7F9470E6 E se eu uso esse KEY ID dá tudo certo. Mas meio que ''precisei confiar'' no tutorial. Acho que o certo seria se eu desse o public key nessa etapa de ''look up Voegtlin’s public key'' Acho que é algo besta que não to entendendo, mas não entendi rs Title: Re: Como Verificar Assinatura de Software no Linux Post by: TryNinja on September 03, 2023, 07:17:21 PM Eles dizem: Você pode importar a key diretamente no GPG Suite (esse bloco gigante que você postou, que também pode ser encontrado no repo do Electrum: https://github.com/spesmilo/electrum/blob/master/pubkeys/ThomasV.asc)Thomas Voegtlin is the Electrum lead developer. The Electrum site reports his key ID as 0x2bd5824b7f9470e6. Use this value to look up Voegtlin’s public key. Click the GPG Keychain “Lookup Key” button and enter the developer key ID. The click Search. Mas eu não encontrei onde dentro do site da Electrum eles proveem esse Key ID. E conferir que o fingerprint da chave bate com o divulgado pelo site (0x2bd5824b7f9470e6). Também prefiro que deem os passos ao invés de só falar “o fingerprint é X”, até pois não há garantias que esse dado não seja adulterado na matéria depois. Title: Re: Como Verificar Assinatura de Software no Linux Post by: joker_josue on September 05, 2023, 07:02:07 AM Obrigado pelo tutorial, acho que nunca fiz essa verificação. Vou tentar ver como funciona em Windows, e depois experimentar.
Após realizar o download através do site oficial a verificação de assinatura é o passo final para verificar a integridade de um software, simplesmente baixar um software do site oficial não garante a sua legitimidade pois o site pode ter sido invadido e o seu conteúdo alterado... Esse tipo de verificação se torna ainda mais importante quando o software em questão se trata de uma Wallet de Bitcoin. ~~ 3° Então vamos lá, nesse terceiro passo vamos fazer a importação da chave publica disponibilizada pelo ThomasV: Agora, fiquei com uma questão. Nos queremos verificar, para ver se o software que fizemos download (no site oficial) é o original. E depois vamos buscar a chave publica ao site oficial? Ela também pode ter sido adulterada. Não faz muito sentido... Você pode importar a key diretamente no GPG Suite (esse bloco gigante que você postou, que também pode ser encontrado no repo do Electrum: https://github.com/spesmilo/electrum/blob/master/pubkeys/ThomasV.asc) E conferir que o fingerprint da chave bate com o divulgado pelo site (0x2bd5824b7f9470e6). Mas, como é que se transforma o bloco gigante, na fingerprint tão curta? Title: Re: Como Verificar Assinatura de Software no Linux Post by: tg88 on September 05, 2023, 09:58:27 PM Agora, fiquei com uma questão. Eu também não sou um expert no assunto, mas no próprio site da Electrum eles deixam claro que só disponibilizam os executáveis para download no site... Desta forma não é possível alguém alterar os arquivos e a assinatura continuar sendo válida. Mas ai chegamos a um ponto que eu acabei deixando passar no meu tutorial que é o caso de substituírem os executáveis e a assinatura por outros arquivos.Nos queremos verificar, para ver se o software que fizemos download (no site oficial) é o original. E depois vamos buscar a chave publica ao site oficial? Ela também pode ter sido adulterada. Não faz muito sentido... Após baixar o arquivo ThomasV.asc eu deveria ter verificado a "finger print" usando fontes independentes. Assim que eu tiver um tempo eu faço o processo e atualizo aqui. Title: Re: Como Verificar Assinatura de Software no Linux Post by: TryNinja on September 05, 2023, 11:12:52 PM Mas, como é que se transforma o bloco gigante, na fingerprint tão curta? O próprio programa te mostra o fingerprint. É matemática.É só primeiro importar a key literalmente colando essa key no campo designado ou criando um arquivo e depois importando ele… enfim, não vou conseguir falar desse software especifico pois não o uso, mas a lógica é a mesma. https://en.m.wikipedia.org/wiki/Public_key_fingerprint Title: Re: Como Verificar Assinatura de Software no Linux Post by: joker_josue on September 06, 2023, 06:59:02 AM O próprio programa te mostra o fingerprint. É matemática. É só primeiro importar a key literalmente colando essa key no campo designado ou criando um arquivo e depois importando ele… enfim, não vou conseguir falar desse software especifico pois não o uso, mas a lógica é a mesma. Entendido! ;) Mas agora surge outra pergunta: E conferir que o fingerprint da chave bate com o divulgado pelo site (0x2bd5824b7f9470e6). Se alguém pode ter mudado o ficheiro para download, e até mesmo o ficheiro da key. Quem garante que ele não mudou o figerprint divulgado no site? Existe forma do utilizador aceder a essa informação, que esteja localizada em um local com 99% de certeza que não foi alterada? Eu estou a colocar num cenário, em que é a primeira vez que o utilizador lida com o software, e quer validar tudo. Title: Re: Como Verificar Assinatura de Software no Linux Post by: TryNinja on September 06, 2023, 01:09:16 PM Se alguém pode ter mudado o ficheiro para download, e até mesmo o ficheiro da key. Quem garante que ele não mudou o figerprint divulgado no site? Ninguém.O cara pode verificar em vários lugares para garantir que a key não foi adulterada, afinal é mais dificil hackear 10 sites diferentes ao mesmo tempo. A principal questão é confiar uma vez e depois verificar sempre. Você garante que a key é a correta uma vez e depois pode usá-la para verificar o software que está atualizando toda semana, todo mês, etc… |