[PR #200] [MERGED] Encryption #326

Closed
opened 2026-05-05 22:16:54 -06:00 by gitea-mirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/feschber/lan-mouse/pull/200
Author: @feschber
Created: 9/14/2024
Status: Merged
Merged: 11/9/2024
Merged by: @feschber

Base: mainHead: encryption


📝 Commits (10+)

📊 Changes

38 files changed (+4002 additions, -1373 deletions)

View changed files

📝 .gitignore (+4 -1)
📝 Cargo.lock (+1002 -35)
📝 Cargo.toml (+11 -1)
📝 README.md (+23 -20)
📝 config.toml (+6 -1)
📝 lan-mouse-cli/src/lib.rs (+11 -0)
lan-mouse-gtk/resources/fingerprint_window.ui (+101 -0)
lan-mouse-gtk/resources/key_row.ui (+16 -0)
📝 lan-mouse-gtk/resources/resources.gresource.xml (+2 -0)
📝 lan-mouse-gtk/resources/window.ui (+63 -12)
lan-mouse-gtk/src/fingerprint_window.rs (+18 -0)
lan-mouse-gtk/src/fingerprint_window/imp.rs (+64 -0)
lan-mouse-gtk/src/key_object.rs (+25 -0)
lan-mouse-gtk/src/key_object/imp.rs (+24 -0)
lan-mouse-gtk/src/key_row.rs (+48 -0)
lan-mouse-gtk/src/key_row/imp.rs (+68 -0)
📝 lan-mouse-gtk/src/lib.rs (+12 -0)
📝 lan-mouse-gtk/src/window.rs (+110 -3)
📝 lan-mouse-gtk/src/window/imp.rs (+42 -7)
📝 lan-mouse-ipc/src/lib.rs (+28 -5)

...and 18 more files

📄 Description

encrypt traffic through dtls using the webrtc dtls implementation
(#104)

Todos

  • Sign certificates using the server (CA = Server?) instead of selfsigned certs. Implement fingerprint based authenticity verification
  • Properly close unresponsive connections
  • Release capture when remote host is not responding to pings
  • Release capture, when a new client connects
  • Only send input events when the connection is acknowledged
  • Release keys, when client does not send pings
  • implement cursor leave logic for one-way control
  • save authenticated keys in config file
  • fix capture release when incoming & outgoing at the same position
  • Fix ping logic for active capture
  • Reinstantiate support for changing ports

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/feschber/lan-mouse/pull/200 **Author:** [@feschber](https://github.com/feschber) **Created:** 9/14/2024 **Status:** ✅ Merged **Merged:** 11/9/2024 **Merged by:** [@feschber](https://github.com/feschber) **Base:** `main` ← **Head:** `encryption` --- ### 📝 Commits (10+) - [`79bc64e`](https://github.com/feschber/lan-mouse/commit/79bc64e56ed504925963517fc9952fed453eba7c) start working on encryption - [`e7166d4`](https://github.com/feschber/lan-mouse/commit/e7166d43734ed4254e8d90a22d7fb62be53de551) test selfsigned - [`4c000fa`](https://github.com/feschber/lan-mouse/commit/4c000fa6d44f4d6c60eb499ec4dc38da68ece349) test fix port - [`9056174`](https://github.com/feschber/lan-mouse/commit/90561744a0693c5c1a9ae6783440353da80b5a9b) asdf - [`b62540d`](https://github.com/feschber/lan-mouse/commit/b62540d9bea86bf497ab98da3376f8ebaa738e30) asdf - [`28e4895`](https://github.com/feschber/lan-mouse/commit/28e489541865afd05fad5393c40bcf279e3145fd) impl emulation stuff - [`e4a7f0b`](https://github.com/feschber/lan-mouse/commit/e4a7f0b4fc605cf1504c69faa7368c089e4e23ca) connection things - [`ad8c92c`](https://github.com/feschber/lan-mouse/commit/ad8c92cfbe421374f089bfcae4e21f84abd7a479) capture stuffs - [`937652a`](https://github.com/feschber/lan-mouse/commit/937652ac449e13a21d1ca264375f75f2aaf2fd03) finish up server - [`0fe5416`](https://github.com/feschber/lan-mouse/commit/0fe5416ac5badb9ae4e0b1630793cae68356f448) dont use remote_addr ### 📊 Changes **38 files changed** (+4002 additions, -1373 deletions) <details> <summary>View changed files</summary> 📝 `.gitignore` (+4 -1) 📝 `Cargo.lock` (+1002 -35) 📝 `Cargo.toml` (+11 -1) 📝 `README.md` (+23 -20) 📝 `config.toml` (+6 -1) 📝 `lan-mouse-cli/src/lib.rs` (+11 -0) ➕ `lan-mouse-gtk/resources/fingerprint_window.ui` (+101 -0) ➕ `lan-mouse-gtk/resources/key_row.ui` (+16 -0) 📝 `lan-mouse-gtk/resources/resources.gresource.xml` (+2 -0) 📝 `lan-mouse-gtk/resources/window.ui` (+63 -12) ➕ `lan-mouse-gtk/src/fingerprint_window.rs` (+18 -0) ➕ `lan-mouse-gtk/src/fingerprint_window/imp.rs` (+64 -0) ➕ `lan-mouse-gtk/src/key_object.rs` (+25 -0) ➕ `lan-mouse-gtk/src/key_object/imp.rs` (+24 -0) ➕ `lan-mouse-gtk/src/key_row.rs` (+48 -0) ➕ `lan-mouse-gtk/src/key_row/imp.rs` (+68 -0) 📝 `lan-mouse-gtk/src/lib.rs` (+12 -0) 📝 `lan-mouse-gtk/src/window.rs` (+110 -3) 📝 `lan-mouse-gtk/src/window/imp.rs` (+42 -7) 📝 `lan-mouse-ipc/src/lib.rs` (+28 -5) _...and 18 more files_ </details> ### 📄 Description encrypt traffic through dtls using the webrtc dtls implementation (#104) ### Todos - [x] ~Sign certificates using the server (CA = Server?) instead of selfsigned certs.~ Implement fingerprint based authenticity verification - [x] Properly close unresponsive connections - [x] Release capture when remote host is not responding to pings - [x] Release capture, when a new client connects - [x] Only send input events when the connection is acknowledged - [x] Release keys, when client does not send pings - [x] implement cursor leave logic for one-way control - [x] save authenticated keys in config file - [x] fix capture release when incoming & outgoing at the same position - [x] Fix ping logic for active capture - [x] Reinstantiate support for changing ports --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
gitea-mirror 2026-05-05 22:16:54 -06:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/lan-mouse#326
No description provided.