mirror of
https://github.com/RedWizardsLab/EchoHub.git
synced 2026-09-04 00:26:07 +02:00
feat: Update encryption documentation with mermaid sequence diagram for clarity
This commit is contained in:
+17
-13
@@ -4,19 +4,23 @@ EchoHub uses application-layer AES-256-GCM encryption to protect message content
|
|||||||
|
|
||||||
## How It Works
|
## How It Works
|
||||||
|
|
||||||
```text
|
```mermaid
|
||||||
TUI Client Server TUI Client
|
sequenceDiagram
|
||||||
│ │ │
|
participant Sender as TUI Client (Sender)
|
||||||
│ encrypt(plaintext) │ │
|
participant Server
|
||||||
│ ──── $ENC$v1$... ──────────────► │ │
|
participant Receiver as TUI Client (Receiver)
|
||||||
│ │ decrypt → validate/sanitize │
|
participant IRC as IRC Client
|
||||||
│ │ fetch embeds on plaintext │
|
|
||||||
│ │ encrypt(plaintext) │
|
Sender->>Sender: encrypt(plaintext)
|
||||||
│ │ ──── $ENC$v1$... ──────────────► │
|
Sender->>Server: $ENC$v1$... (SignalR)
|
||||||
│ │ │ decrypt → display
|
Server->>Server: decrypt → validate/sanitize
|
||||||
│ │ │
|
Server->>Server: fetch embeds on plaintext
|
||||||
│ │ (optional) encrypt for DB │
|
Server->>Server: (optional) encrypt for DB storage
|
||||||
│ │ store to SQLite │
|
Server->>Server: encrypt(plaintext) with fresh nonce
|
||||||
|
Server->>Receiver: $ENC$v1$... (SignalR broadcast)
|
||||||
|
Receiver->>Receiver: decrypt → display
|
||||||
|
Server->>Server: decrypt for IRC
|
||||||
|
Server->>IRC: plaintext (IRC PRIVMSG)
|
||||||
```
|
```
|
||||||
|
|
||||||
1. **Client encrypts** the message before sending it over SignalR
|
1. **Client encrypts** the message before sending it over SignalR
|
||||||
|
|||||||
Reference in New Issue
Block a user