Pelo pouco que sei, no openpgp você tem uma chave privada que você mantém trancada ou escondida em algum lugar e uma chave pública que você pode compartilhar livremente com qualquer pessoa.
Agora tenho visto muitas pessoas anexando arquivos .asc. Se eu clicar nele, ele revela a chave pública da outra pessoa.
Ter um arquivo .asc nada mais é do que colocar sua chave pública e, em seguida, renomeá-la como algo como signature.asc ou há algo mais envolvido também? O arquivo .asc parece ser um arquivo compactado (como um arquivo .rar ou zip)
$ cat shirish-public-key.txt
-----BEGIN PGP SIGNATURE-----
publickeystring$
-----END PGP SIGNATURE-----
Como posso fazer/transformar em um arquivo .asc?
Eu poderia apenas fazer -
$ mv shirish-public-key.txt shirish.asc
mas não sei se é a coisa certa a fazer ou não.
Atualização - tentei mas não funcionou :(
$ gpg --armor export shirish-public-key.txt > pubkey.asc
gpg: WARNING: no command supplied. Trying to guess what you mean ...
usage: gpg [options] [filename]
Atualização 2 - Ainda não funciona -
$ gpg --armor --export shirish-public-key.txt > pubkey.asc
gpg: WARNING: nothing exported
parece que não consegue descobrir que a chave pública está em um arquivo de texto.
Atualização 3 -
É assim que o conteúdo do arquivo se parece
Veja http://paste.debian.net/1022979/
Mas se eu correr -
$ gpg --import shirish-public-key.txt
gpg: invalid radix64 character 3A skipped
gpg: invalid radix64 character 2E skipped
gpg: invalid radix64 character 2E skipped
gpg: invalid radix64 character 2E skipped
gpg: invalid radix64 character 3A skipped
gpg: invalid radix64 character 3A skipped
gpg: invalid radix64 character 2E skipped
gpg: CRC error; 1E6A49 - B36DCC
gpg: [don't know]: invalid packet (ctb=55)
gpg: read_block: read error: Invalid packet
gpg: import from 'shirish-public-key.txt' failed: Invalid keyring
gpg: Total number processed: 0
Parece que algo está errado em algum lugar.
FWIW gpg é a versão 2.2.5 do teste Debian (estou executando o teste com todas as atualizações)
$ gpg --version
gpg (GnuPG) 2.2.5
libgcrypt 1.8.2
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Home: /home/shirish/.gnupg
Supported algorithms:
Pubkey: RSA, ELG, DSA, ECDH, ECDSA, EDDSA
Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH,
CAMELLIA128, CAMELLIA192, CAMELLIA256
Hash: SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
Compression: Uncompressed, ZIP, ZLIB, BZIP2
Normalmente, um
.asc
arquivo é uma representação blindada em ASCII do material da chave (ou uma assinatura).shirish-public-key.txt
Parece que é apenas isso, portanto, se tiver certeza de que contém as informações corretas, basta renomeá-lo, conforme sugerido . (Duvido que contenha sua chave pública - que deve começar com-----BEGIN PGP PUBLIC KEY BLOCK-----
.) Se um arquivo contém dados "binários" (o que eu acho que é o que você quer dizer quando diz que parece um arquivo), não é um arquivo ASCII e normalmente não seria nomeado com uma.asc
extensão.Para exportar sua chave neste formato, de seu chaveiro em vez de um arquivo existente (garantindo assim que contenha os dados corretos), execute
Para facilitar as coisas, os arquivos geralmente são nomeados por seu ID de chave; No meu caso:
Existem várias opções que você pode usar para ajustar os dados exportados; por exemplo,
--export-options export-minimal
removerá a maioria das assinaturas da chave, reduzindo bastante seu tamanho (mas também sua utilidade para pessoas que se preocupam com a rede de confiança).você não pode simplesmente copiar e colar o texto de sua chave pública PGP no editor de texto, salvá-lo como .txt e renomear o arquivo como .asc?
isso funciona no windows