[FEAT]: Server: device registry and per-device key bundles

Offen
#195 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
30/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Aktiv
Tech-Stack
go, postgresql

Rechercherichtung

Start with server/migrations/010_create_e2ee_keys_up.sql, then trace key storage and bundle handling through server/repository/e2ee.go and server/controllers/e2ee.go; read server/services/ws.go for connection tracking. The issue calls for coordinated changes across device registration, encryption bundles, WebSocket connections, and message delivery. Done means devices can be registered, listed, revoked, and receive messages addressed to their device.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

area: e2ee area: server difficulty: hard enhancement

Part of the multi-device epic.

What to do

  • Register devices with their own device_id, keys and prekeys. List and revoke them (GET/DELETE /api/users/me/devices).
  • GET /api/e2ee/bundle/{userId} returns a bundle per device (or a new endpoint does).
  • The WebSocket hub tracks connections per device, not per user.
  • Messages carry a target device_id. Store and deliver per device.

Where to look

server/migrations/010_create_e2ee_keys_up.sql, server/repository/e2ee.go, server/controllers/e2ee.go, server/services/ws.go.

Vorherrschende Sprache
Dart
Sterne
9
Forks
5
Ø Merge
49 Min.
Gemergte PRs (30 T.)
34

Entwicklungsumgebung

  • Enthält ein Dockerfile oder eine Docker-Compose-Datei
  • Keine Pull-Request-Vorlage
  • Kein Beitragsleitfaden

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus CommandLineCoding/Elephant

Alle Issues in CommandLineCoding/Elephant

Ähnliche Issues

Weitere Issues zu Dart

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.