How can I retrieve original data from a signature with GnuPG?
Se o conteúdo original estiver contido (ou seja, você não criou uma assinatura separada), poderá exportar os dados assinados usando a opção --output
.
gpg --output file.txt --verify file.txt.asc
O GnuPG está adivinhando que você quer fazer exatamente o mesmo quando não está passando nenhum comando:
gpg file.txt.asc
If the original data is irretrievable, then what is the point of having the signature, since all it shows is the date it was signed and who it was signed by? If I were a MITM, couldn't I just copy that signature and pretend that I'm the sender, even if the date was a little off?
A assinatura é sempre emitida em uma soma de hash da mensagem original. Ao criar uma assinatura separada (que não contém toda a mensagem original), ela ainda contém a soma de hash. Dessa forma, a implementação do OpenPGP pelo destinatário pode alterar a hash da mensagem e verificar se esse hash também está contido na assinatura e se a assinatura está correta.