cleodora-forecasting / cleodora-forecasting/cleodora

[Idea] Central instance with end to end (E2E) encryption

Open
#841 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
24
Forks
1
PR merge metrics
No merged PRs in 30d

Description

Instead of focusing on running Cleodora locally for privacy reasons it would be possible to have a central Cleodora server where user data is end to end encrypted i.e. nobody on the server side could read it.

The reasons for not pursuing this at least initially are:

* I did not find simple and good JavaScript libraries for end to end encryption. They are needed for creating the default web client.
* Running a central instance would generate costs that I would have to cover myself. That's a big commitment to start out with.
* Running a central instance would mean making user management part of the MVP (minimum viable product).
* Getting data encryption wrong would be catastrophic because it would give users a false sense of security and privacy. If problems were revealed at some point it would lead to lack of trust. If this is done it needs to be done properly.
* End to end encryption slightly reduces usability because users who misplace their password would no longer be able to recover their data in any way.
* The question of which data (metadata?) to encrypt would have to be solved. The more is encrypted, the more difficult it might be to implement. Encrypting less might leak information. Possibly this is not an issue, but possibly some people care strongly.

Contributor guide

Open the contributing guide

Research direction

No files, tests, or entry points are named. Start by researching suitable JavaScript end-to-end encryption libraries and the requirements for encrypting user data and metadata, then consider user management and password-loss recovery. Done would require a complete, trustworthy design and implementation rather than a single isolated change.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
backend, security, web-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.