keybase-issues icon indicating copy to clipboard operation
keybase-issues copied to clipboard

issue with re adding device

Open aoyawale opened this issue 7 years ago • 8 comments

somehow my keybase app logged out and when I try to log-in it forces me to re-add my device. But, i'm on the same device and cannot login to approved the device again.

aoyawale avatar Nov 02 '17 05:11 aoyawale

I had something similar happen. I ended up with a "Laptop2" instead of the original "Laptop"

ghost avatar Nov 09 '17 19:11 ghost

Are you using a different user of the OS?

junderw avatar Nov 13 '17 08:11 junderw

No using the same user

aoyawale avatar Mar 11 '18 03:03 aoyawale

I see you are using Fedora, which is Linux...

The Linux version comprises of three main files:

/home/${LINUX_USER}/.config/keybase/secretkeys.jlozadad.mpack
/home/${LINUX_USER}/.config/keybase/config.json
/home/${LINUX_USER}/.local/share/keybase/jlozadad.ss

If you can find the mpack file, your device keys are safe....

If secretkeys.jlozadad.mpack is nowhere in your system... (I see you have no other devices) then your last device key is lost and you must log into the website and reset all keys (all proofs will be reset and all followers reset.)

If you find the mpack file, place it in the folder path above (the ss file is just your login session, so as long as you have the mpack it should let you login without asking to add device.)

Also I think the config.json has a key called "users" which contains a "salt" value for your device... perhaps that salt is needed for decrypting mpack with your login password...

@strib Anyone have an idea?

@jlozadad Try to find the mpack file, if it is nowhere you need to reset. If you find it, try to find the config.json...

junderw avatar Mar 12 '18 02:03 junderw

I found the config.json but, not the mpack

aoyawale avatar Mar 12 '18 14:03 aoyawale

This seems like an issue I'm having, but on MacOS. in ~/Library/Application Support/Keybase I don't have either mpack or config.json. I setup my account with CLI Keybase on MacOS with version 1.x, and use PGP keys, and hadn't touched things since.

I have all my PGP keys, passwords, and access to all the accounts linked and verified, but unable to use Keybase apps at all.

I don't really want to wipe out everything ... but I only have a single device registered, so I'm unable to re-install the software on the only device registered. I don't need to be cryptographically a new identify ... I just need Keybase to acknowledge this device is registered.

daviddpd avatar Mar 04 '19 23:03 daviddpd

This seems like an issue I'm having, but on MacOS. in ~/Library/Application Support/Keybase I don't have either mpack or config.json. I setup my account with CLI Keybase on MacOS with version 1.x, and use PGP keys, and hadn't touched things since.

I was able to pull these files out of a backup ... but it's kind of odd they disappeared, and everything back, and got a second device registered now.

daviddpd avatar Mar 04 '19 23:03 daviddpd

Hi, I'm adding here my experience if anyone is having the same problem: I needed to login but I've lost access to any other device, but I've found an old backup of a windows machine.

If you're restoring on a new windows machine, probably the following steps are not required, you just need to copy both config.json and secretkeys.<username>.mpack from the backup to the new machine (both in C:\Users\<username>\AppData\Local\Keybase) and login your device.

I've instead installed Keybase on a Linux host, so I merged the original config.json to the one I've found on my backup, basically adding these two lines I've found in /home/nnsense/.config/config.json:

    "mountdir": "/home/nnsense/.config/keybase/kbfs",
    "mountdirdefault": "/home/nnsense/.config/keybase/kbfs",

to the restored config.json, the final file looks like this:

{
    "current_user": "nnsense",
    "mountdir": "/home/nnsense/.config/keybase/kbfs",
    "mountdirdefault": "/home/nnsense/.config/keybase/kbfs",
    "users": {
        "nnsense": {
            "device": "1234567890123456789012345678901",
            "id": "1234567890123456789012345678901",
            "name": "nnsense",
            "salt": "12345678901234567890123456789012"
        }
    }
}

I've then copied the modified config.json and the secretkeys.nnsense.mpack (nnsense is my keybase username) from C:\Users\<username>\AppData\Local\Keybase to the path mentioned above on Linux:

/home/${LINUX_USER}/.config/keybase/secretkeys.nnsense.mpack
/home/${LINUX_USER}/.config/keybase/config.json

Finally I've logged in the device with

keybase device login

Now this Linux machine will basically pretend to be my old windows installation.

I've then installed the app back to the phone, at login I've used the above linux keybase (pretending to be the old Windows installation) to authorize the new device. I've then cleaned up the old devices, including the Win one, and authorised the new linux machine as a new device.

I hope it helps someone else.

nnsense avatar May 07 '23 11:05 nnsense