mirror of
https://github.com/RedWizardsLab/EchoHub.git
synced 2026-09-04 08:36:11 +02:00
deploy: 4d25458717
This commit is contained in:
@@ -129,6 +129,13 @@ so messages are encrypted end-to-end between client and server.</p>
|
||||
<dd><p>Reads file paths that live on the OS clipboard as a <em>file list</em> (e.g. after copying a file in
|
||||
Explorer/Finder/Nautilus), which terminals do not paste as text. Lets Ctrl+V attach a copied
|
||||
file directly instead of requiring the user to paste a raw path.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="EchoHub.Client.Services.ClipboardImage.html">ClipboardImage</a></dt>
|
||||
<dd><p>Reads raw image data from the OS clipboard (e.g. an image copied from a browser, or a
|
||||
Win+Shift+S screenshot), which terminals cannot paste as text. Always returns PNG bytes:
|
||||
clipboard PNG data is passed through, clipboard bitmaps (CF_DIB) are re-encoded.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
@@ -168,13 +175,34 @@ For normal channels only <a class="xref" href="EchoHub.Client.Services.OutgoingA
|
||||
<dt><a class="xref" href="EchoHub.Client.Services.PathSetup.html">PathSetup</a></dt>
|
||||
<dd><p>Ensures the application's directory is on the system PATH so users
|
||||
can run 'echohub' from any terminal session.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="EchoHub.Client.Services.RoomKeyProtector.html">RoomKeyProtector</a></dt>
|
||||
<dd><p>Encrypts cached room content keys at rest so the client config never holds them as
|
||||
plain base64. Windows uses DPAPI (current-user scope, format prefix "dp1:"). On other
|
||||
platforms the keys are AES-GCM encrypted with a per-user master key file stored next
|
||||
to the config with 0600 permissions (prefix "k1:") — without an OS keychain that is
|
||||
file-permission-level protection, not zero-knowledge: anyone who can read both the
|
||||
config and the key file can recover the room keys. Values with no recognized prefix
|
||||
are legacy plain-base64 keys from older clients; they load once and are re-encrypted.
|
||||
The room passphrase itself is never stored in any form.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="EchoHub.Client.Services.RoomKeyStore.html">RoomKeyStore</a></dt>
|
||||
<dd><p>Holds room content keys for end-to-end encrypted channels: in-memory for the
|
||||
active session, persisted per-server in the client config (like saved sessions)
|
||||
so users don't retype the passphrase every launch. Keys never leave this machine.</p>
|
||||
so users don't retype the passphrase every launch. Keys never leave this machine
|
||||
and are encrypted at rest by <a class="xref" href="EchoHub.Client.Services.RoomKeyProtector.html">RoomKeyProtector</a>. Also tracks which
|
||||
channels are known to be end-to-end encrypted, so senders can refuse to emit
|
||||
plaintext into a room whose key isn't cached yet.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="EchoHub.Client.Services.RoomLockedException.html">RoomLockedException</a></dt>
|
||||
<dd><p>Thrown when sending into an end-to-end encrypted channel whose room key isn't cached:
|
||||
without the key the message would leave the client as plaintext, which must never happen.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
|
||||
Reference in New Issue
Block a user