Skip to content
This repository has been archived by the owner on Sep 11, 2024. It is now read-only.

Add option to persist security key on platform #11776

Closed

Conversation

Nils1729
Copy link

@Nils1729 Nils1729 commented Oct 20, 2023

This PR adds a feature_persist_ssss_key feature flag. When enabled, element-desktop tries to save any generated security key in the login keyring, similar to pickle keys. It automatically uses them for unlocking the backup. See also element-hq/element-web#26405 and element-hq/element-desktop#1286.

Goals

With this PR, we try to work towards user-friendly encryption key backups while preserving e2ee security. In our small/medium non-profit org, many members lack a technical background. Using element as-is without losing keys would be quite a challenge for them.

Since we might not be the only org struggling with secure backup/key management in practice (https://github.com/vector-im/element-web/issues/20046), we would like to contribute to Element.

This PR and the whole feature are experimental and we would love to receive comments or feedback.

Checklist

  • Tests written for new code (and old code if feasible)
  • Linter and other CI checks pass
  • Sign-off given on the changes (see CONTRIBUTING.md)

Notes: none
element-web notes: none
element-desktop notes: Add option to persist security key

Type: enhancement


This change has no change notes, so will not be included in the changelog.

@github-actions github-actions bot added Z-Community-PR Issue is solved by a community member's PR T-Enhancement New features, changes in functionality, performance boosts, user-facing improvements labels Oct 20, 2023
@Nils1729 Nils1729 force-pushed the feature/persist-ssss-key branch from 398b4e3 to 2234120 Compare November 18, 2023 10:45
@thoraj
Copy link
Contributor

thoraj commented Mar 15, 2024

I'll chime in here:
We had a similar requirement a couple of years back (and we still have) which was solved by the introduction of SecurityCustomisations. This customisation mechanism is now deprecated in favor of module api.

Therefore we are in the process supporting the requirements through the introduction of CryptoSetupExtensions. The PR for module-api was merged and released recently. The PR for react-sdk is in draft, and will be submitted shortly.

Not sure if this is relevant for this PR, but looks like there is at least some overlap in the requirements this PR will solve

@Nils1729 Nils1729 closed this Apr 29, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
T-Enhancement New features, changes in functionality, performance boosts, user-facing improvements Z-Community-PR Issue is solved by a community member's PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants