keybase / keybase/client

Disconnect at beginning of chat forced rekey; only fixed by restarting

Open
#5,972 13 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

I initiated a chat with someone, turned off my computer, and when I came back the chat was borked -- they couldn't read any new messages from me. Exact sequence follows:

  1. run_keybase
  2. Follow a person
  3. Initiate chat with person (send a "testing" message) -- I've never used chat before
  4. Edit that message
  5. Turn off computer
  6. Chat partner sees message, including edit, but also sees an indicator that I need to rekey
  7. I come back online and try to send a second message, and partner sees that I have sent a message, but it won't display because I still need to rekey
  8. I restart the app and we are able to chat [EDITED]
  9. They never received that second message, though [ADDED]

I'm using keybase 1.0.18-20170220171343+19c204b on Debian Linux 8 (Jessie).

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

Use the numbered reproduction in this issue to investigate chat behavior across a computer shutdown and restart, focusing on rekey handling and the lost second message. First reproduce the disconnect/reconnect sequence, then trace the relevant Go chat and rekey paths; done means the partner can read messages sent after reconnect without restarting and no message is lost.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.