pgp 공개 키에서 .asc 파일을 생성하는 방법은 무엇입니까?

pgp 공개 키에서 .asc 파일을 생성하는 방법은 무엇입니까?

내가 아는 한, openpgp에는 어딘가에 잠그거나 숨길 수 있는 개인 키와 누구와도 자유롭게 공유할 수 있는 공개 키가 있습니다.

이제 .asc 파일을 첨부하는 사람들이 많이 보입니다. 클릭하면 상대방의 공개키가 표시됩니다.

.asc 파일이 있으면 공개 키를 가져와 Signature.asc와 같은 이름으로 이름을 바꾸는 것입니까, 아니면 더 관련된 것이 있습니까? .asc 파일이 아카이브 파일(예: .rar 또는 zip 파일)인 것 같습니다.

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

이것을 .asc 파일로 만들거나 변환하려면 어떻게 해야 합니까?

나는 이것을 할 수 있다 -

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

하지만 이것이 옳은 일인지는 모르겠습니다.

업데이트 - 시도해 보았으나 작동하지 않습니다 :(

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

업데이트 2 - 여전히 작동하지 않습니다 -

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

공개 키가 텍스트 파일의 어디에 있는지 알아낼 수 없는 것 같습니다.

업데이트 3 -

파일 내용은 이렇습니다

바라보다http://paste.debian.net/1022979/

하지만 내가 달리면 -

 $ 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

뭔가 잘못된 것 같았습니다.

FWIW gpg는 Debian 테스트의 버전 2.2.5입니다(업데이트된 모든 테스트가 실행 중입니다).

$ 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

답변1

일반적으로 .asc파일은 키 자료(또는 서명)를 ASCII로 보호한 표현입니다. 귀하의 정보 shirish-public-key.txt는 다음과 같습니다. 따라서 정보가 정확하다고 확신한다면 제안한 대로 이름을 바꾸면 됩니다. (공개 키가 포함되어 있는지 의심스럽습니다. 로 시작해야 합니다 -----BEGIN PGP PUBLIC KEY BLOCK-----.) 파일에 "바이너리" 데이터가 포함되어 있으면(아카이브처럼 보인다는 의미인 것 같습니다) 이는 ASCII 파일이 아니며 일반적으로 그렇지 않습니다. .asc확장자로 이름을 붙였습니다.

이 형식으로 키를 내보내려면 기존 파일 대신 키링에서(따라서 올바른 데이터가 포함되어 있는지 확인) 다음을 실행하세요.

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

작업을 더 쉽게 하기 위해 내 경우에는 일반적으로 키 ID로 파일 이름을 지정합니다.

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

내보낸 데이터를 조정하는 데 사용할 수 있는 몇 가지 옵션이 있습니다. 예를 들어 --export-options export-minimal대부분의 서명이 키에서 제거되어 크기가 크게 줄어듭니다(그러나 네트워크 신뢰에 관심이 있는 사람들에게도 유용합니다).

답변2

PGP 공개 키의 텍스트를 복사하여 텍스트 편집기에 붙여넣고 .txt로 저장한 다음 파일 이름을 .asc로 바꿀 수는 없나요?

이것은 Windows에서 작동합니다

관련 정보