element-hq / element-hq/element-ios
E2EE corrupts when a user restores their phone from backup
- Dominant language
- Swift
- Stars
- 1.8k
- Forks
- 544
- PR merge metrics
- PR metrics pending
Description
as the olm ratchets in the backup will no longer be in sync with the other participants in the ratchets. it doesn't look as if olm ratchet unwedging is sufficient to catch this, so either we need to improve the unwedging behaviour somehow or we need to store something in secure storage which deliberately isn't restored alongside a backup (just as Google Authenticator doesn't restore secrets across backups), which we can use to detect when we've been restored from backup and force the user to log back in to restore their E2E state
Contributor guide
Research direction
Start by investigating how iOS backup restoration affects the Olm ratchets and secure storage. Compare whether unwedging can recover synchronization or whether restored state must be detected and E2E state reset; done means restored devices no longer corrupt E2EE and users can recover by logging in again.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- swift
- Domain
- cryptography, mobile, security
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100