Cum se generează un fișier .asc din cheia publică pgp? (Unix, Debian, Criptare, Gpg)

shirish a intrebat.

Din puținul pe care îl știu, în openpgp ai o cheie privată pe care o ții încuiată sau ascunsă undeva și o cheie publică pe care o poți împărtăși liber cu oricine.

Acum am văzut mulți oameni care atașează fișierul .asc. Dacă dau click pe el, se dezvăluie cheia publică a celeilalte persoane.

Faptul că am un fișier .asc nu este altceva decât utilizarea cheii publice și redenumirea acestuia în ceva de genul signature.asc sau mai este implicat și altceva? Fișierul .asc pare a fi un fișier de arhivă (ca un fișier .rar sau zip).

$ cat shirish-public-key.txt
-----BEGIN PGP SIGNATURE-----
publickeystring$
-----END PGP SIGNATURE-----

Cum îl pot transforma într-un fișier .asc ?

Aș putea face doar –

$ mv shirish-public-key.txt shirish.asc

dar nu știu dacă acesta este lucrul corect sau nu.

Actualizare – am încercat, dar nu funcționează 🙁

$ gpg --armor export shirish-public-key.txt > pubkey.asc
gpg: WARNING: no command supplied.  Trying to guess what you mean ...
usage: gpg [options] [filename]

Update 2 – Tot nu funcționează –

$ gpg --armor --export shirish-public-key.txt > pubkey.asc 
gpg: WARNING: nothing exported

se pare că nu-și poate da seama că cheia publică este într-un fișier text .

Actualizare 3 –

Iată cum arată conținutul fișierului

Vezi http://paste.debian.net/1022979/

Dar dacă execut –

 $ 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

Se pare că ceva nu este în regulă undeva.

FWIW gpg este versiunea 2.2.5 de la Debian testing (rulează testul cu toate actualizările).

$ 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

2 răspunsuri
Stephen Kitt

De obicei, un .asc fișier este o reprezentare în format ASCII-armat a materialului cheie (sau a unei semnături). Adresa dvs. shirish-public-key.txt pare să fie exact asta, așa că, dacă ești sigur că conține informațiile corecte, ai putea pur și simplu să-l redenumești, așa cum sugerezi. (Mă îndoiesc totuși că acesta conține cheia dvs. publică – care ar trebui să înceapă cu -----BEGIN PGP PUBLIC KEY BLOCK-----.) Dacă un fișier conține date „binare” (ceea ce bănuiesc că vreți să spuneți când spuneți că arată ca o arhivă), nu este un fișier ASCII și, de obicei, nu ar trebui să fie numit cu un .asc extensie.

Pentru a exporta cheia în acest format, din breloc și nu dintr-un fișier existent (asigurându-vă astfel că acesta conține datele corecte), rulați

gpg --armor --export YOUR_FINGERPRINT > pubkey.asc

Pentru a face lucrurile mai ușoare, fișierele sunt adesea denumite după ID-ul cheii; în cazul meu:

gpg --armor --export "79D9 C58C 50D6 B5AA 65D5  30C1 7597 78A9 A36B 494F" > 0x759778A9A36B494F.asc

Există diverse opțiuni pe care le puteți utiliza pentru a modifica datele exportate; de exemplu, --export-options export-minimal va elimina majoritatea semnăturilor din cheie, reducând foarte mult dimensiunea acesteia (dar și utilitatea sa pentru persoanele cărora le pasă de rețeaua de încredere).

Comentarii

  • nu a putut să funcționeze, vezi mai sus. –  > Por shirish.
  • Observați liniuțele înainte de export, sunt necesare… Și nu puteți exporta fișierul existent, trebuie să dați ID-ul de cheie sau amprenta digitală. –  > Por Stephen Kitt.
  • bună, mulțumesc pentru feedback, am actualizat din nou întrebarea mea, de data aceasta primesc avertismentul gpg: nimic exportat. –  > Por shirish.
  • Tot nu specificați amprenta dvs. digitală. Amprenta dvs. este o serie de cifre hexazecimale, asemănătoare cu cea dată în exemplul meu; nu este shirish-public-key.txt. –  > Por Stephen Kitt.
  • Sunteți sigur că conține cheia dumneavoastră publică? Are gpg --import shirish-public-key.txt funcționează? –  > Por Stephen Kitt.
anonim

nu poți doar să copiezi și să lipești textul cheii publice PGP în texteditor și apoi să-l salvezi ca .txt și apoi să redenumești fișierul ca .asc ?

acest lucru funcționează pe Windows

Comentarii

  • „dacă sunteți sigur că acesta conține informațiile corecte, puteți pur și simplu să-l redenumiți, așa cum sugerați.” – din răspunsul acceptat –  > Por muru.