keybase / keybase/client

Can't login twice from the same device?

Open
#4,600 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
9.2k
Forks
1.3k
Avg merge
12h 58m
Merged PRs (30d)
56

Description

Sorry, I may be being very stupid here. I got my invitation to join the alpha today, and went onto the website to start to set up my profile. I identified the machine I am working from as Fletcher, because that is its name. I uploaded a GPG public key, and was then challenged to prove it was my key. One option was to upload my private key to your website, and frankly I'm not prepared to do that. The other was to verify my key from the command shell on my local machine.

I made a number of attempts, as follows:

(1) First I copied and pasted the curl recipe provided by the website. I got:

You need a passphrase to unlock the secret key for
user: "Simon Brooke (Stultus in monte) <simon@journeyman.cc>"
2048-bit RSA key, ID 1D4DF987, created 2012-11-12

Error in your post
-------------------

Code: 908
Name: KEY_NEED_REVOKE
Description: You need to delete your active key before uploading a new one

(2) So I reset my account via the website, re-uploaded my public key, and tried again using your command line client:

simon@fletcher:~/Downloads$ keybase pgp select 824E695A58F5BEF4DB7D6099A7A4F18D1D4DF987
#    Algo    Key Id             Created   UserId
=    ====    ======             =======   ======
1    2048R   A7A4F18D1D4DF987             Simon Brooke <simon@journeyman.cc>
Choose a key: 1
▶ WARNING error getting TTY for GPG: No Context provided for this call
▶ WARNING (CONN keybase service e391b48c) Connection: error calling OnConnect handler: EOF
▶ INFO Bundle unlocked: A7A4F18D1D4DF987
▶ ERROR key generation error: k.ToLksSKB() error: Login required: your session has expired.
simon@fletcher:~/Downloads$ keybase pgp select 824E695A58F5BEF4DB7D6099A7A4F18D1D4DF987
▶ ERROR Login required

(3) So I understood I needed to login from the command line client:

simon@fletcher:~/Downloads$ keybase login
Your keybase username or email address: simon@journeyman.cc
 ▶ WARNING (CONN keybase service e391b48c) Connection: error dialing transport: context canceled
 ▶ WARNING push handler: error in ping loop: context canceled
Enter a public name for this device: Fletcher
▶ ERROR device name already in use

(4) I wondered whether the WARNINGs had anything to do with the fail, and tried again:

simon@fletcher:~/Downloads$ keybase login
Your keybase username or email address: simon@journeyman.cc
Enter a public name for this device: Fletcher
▶ ERROR device name already in use

(5) I wondered whether the fact that I had an open login on the website from Fletcher was preventing the command line client from logging in as Fletcher, so I logged out from the website and tried again, but with the same result.

As an aside, I don't like the fact that keybase pops up its own window to prompt for my passphrase; I'd greatly prefer to see the operating system's passphrase prompt. I know that typing a passphrase into any software that you haven't personally audited is a security risk, but I'm more confident that the Ubuntu/Gnome passphrase prompt system has been adequately security audited.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files or tests are named in the report. Reproduce the command-line login flow after a device named Fletcher already exists, then trace handling of “device name already in use,” KEY_NEED_REVOKE, and the expired-session error across the CLI and website flows. Done means repeated login works or the recovery path clearly explains how to resolve the existing device.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
authentication, cli, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.