Cannot add multiple PGP keys (Base64 error)
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 9.2k
- Forks
- 1.3k
- Avg merge
- 12h 58m
- Merged PRs (30d)
- 56
Description
What is the correct process for adding another PGP key? (on website with command line commands)
I tried to just select "update my key" paste my current key and the public key of another key.
I could continue and got this command:
curl \
--data-urlencode sig="`\
echo '{"body":{"key":{"eldest_kid":"0101f8e0993c69511b515baf988e36c1a20db7cd576710e3c1dcab335a6ecded58370a","fingerprint":"7046c1b286449eaf9f3ff5c18f162ae44088f1be","host":"keybase.io","key_id":"8f162ae44088f1be","kid":"0101f8e0993c69511b515baf988e36c1a20db7cd576710e3c1dcab335a6ecded58370a","uid":"b9ac048da91260baa2c4db3a53747f19","username":"rugk"},"pgp_update":{"fingerprint":"7046c1b286449eaf9f3ff5c18f162ae44088f1be","full_hash":"6ca6609adef46260d41b6b702fed947077b4d26ce318fe40f41e5edda3f45682","kid":"0101f8e0993c69511b515baf988e36c1a20db7cd576710e3c1dcab335a6ecded58370a"},"type":"pgp_update","version":1},"ctime":1507023806,"expire_in":157680000,"prev":"d8b69e80e84cd17efd281b13c6f253a10447ba0d99f81dbb475122dd247c63cb","seqno":5,"tag":"signature"}' | \
gpg2 -u '7046c1b286449eaf9f3ff5c18f162ae44088f1be' -a --sign`" \
--data-urlencode type="pgp_update" \
--data-urlencode session="lgHZIGI5YWMwNDhkYTkxMjYwYmFhMmM0ZGIzYTUzNzQ3ZjE5zlnTVufOAeEzgNkgZTFlODMzYzVlNjliM2U5YmZlOGM1YmFkYTI5MmI0MDLEILVRHi/lfRNZx1HukL48A+AMpxsgNtxMIYLuDPm7ov8t" \
--data-urlencode csrf_token="lgHZIGI5YWMwNDhkYTkxMjYwYmFhMmM0ZGIzYTUzNzQ3ZjE5zlnTVrTOAAFRgMDEIOWY5s8t64wZ/1OblfOv0dWlKEJDdo++RJJBCF6nMY4x" \
--data-urlencode plain_out="1" \
--data-urlencode signing_kid="0101f8e0993c69511b515baf988e36c1a20db7cd576710e3c1dcab335a6ecded58370a" \
--data-urlencode public_key="-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=5UHP
-----END PGP PUBLIC KEY BLOCK-----
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
6A==
=C/5x
-----END PGP PUBLIC KEY BLOCK-----
" \
--data-urlencode is_update="true" \
--data-urlencode sig_required="true" \
https://keybase.io/_/api/1.0/key/add.json
However, it ends with a Base64 error.
Error in your post
-------------------
Code: 100
Name: INPUT_ERROR
Description: bad base 64 string
Fedora 26
curl 7.53.1
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the website-generated curl request against https://keybase.io/_/api/1.0/key/add.json with the two PGP public keys and the shown gpg2 signing command. Investigate the key-add API entry point and the handling of the public_key or signature fields; done means adding multiple PGP keys no longer returns the bad base 64 string error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- shell
- Domain
- cli, cryptography
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100