mirror of
https://github.com/cs01/termpair.git
synced 2026-04-26 21:15:55 +03:00
[PR #16] [MERGED] add end-to-end encryption #39
Labels
No labels
good first issue
help wanted
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/termpair#39
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/cs01/termpair/pull/16
Author: @cs01
Created: 2/9/2020
Status: ✅ Merged
Merged: 2/9/2020
Merged by: @cs01
Base:
master← Head:cs01/e2ee📝 Commits (1)
cb8bccfadd end-to-end encryption📊 Changes
15 files changed (+349 additions, -136 deletions)
View changed files
➕
CHANGELOG.md(+8 -0)📝
README.md(+21 -8)➕
docs/CHANGELOG.md(+1 -0)📝
docs/contributing.md(+1 -1)📝
mkdocs.yml(+1 -0)📝
noxfile.py(+1 -0)📝
setup.py(+3 -3)➕
termpair/encryption.py(+27 -0)📝
termpair/frontend_src/package.json(+1 -0)📝
termpair/frontend_src/public/index.html(+4 -1)📝
termpair/frontend_src/src/App.js(+98 -65)➕
termpair/frontend_src/src/encryption.js(+88 -0)📝
termpair/main.py(+15 -18)📝
termpair/server.py(+8 -4)📝
termpair/share.py(+72 -36)📄 Description
This PR adds AES-GCM 128 bit end-to-end encryption for all terminal input and output such that the server and third parties cannot view the terminal data being transmitted (inspired by https://github.com/excalidraw/excalidraw/pull/642). Since termpair has a Python server and a JavaScript client, two crypto libraries had to be used.
When sharing the terminal, the
cryptographylibrary from PyPI was used (https://cryptography.io/en/latest/)In the browser the JavaScript library SubtleCrypto was used, since it is built into browsers.
fixes #15
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.