End to End Encryption #205
Replies: 5 comments 4 replies
-
I had some plans for that, but maybe it is worth to think about implementing extensions first? There's also a possibility to use SimpleDiscordCrypt in WebCord as it supports loading some unpacked Chrome extensions (i.e. it may or may not work based if Electron supports all APIs used in the extension). Please refer to the documentation (
I don't think so... Maybe it could be done in some tricky way like encrypting and decrypting audio input and output in a way they still remain understandable by the encoders/decoders (i.e. it still follows the specific encoding/decoding format of the stream like You should also know WebCord uses standard WebRTC implementation from Chromium browser, so it has similar limitations and probably can't be tinkered with that much. |
Beta Was this translation helpful? Give feedback.
-
IMO the transparent encryption of everything from files to WebRTC would be a godsend. I shouldn't have to put any thought into passing data through Discord's servers being unsafe in the slightest if all works well. SDC also encrypts all files and images uploaded. SimpleDiscordCrypt is very good to use however when used it complains that 'Webpack' is missing and the extension doesn't load. Would love to use SDC between me and my friends if you could point me in the direction of enabling Webpack for extensions in your electron build. |
Beta Was this translation helpful? Give feedback.
-
Key exchange is handled automatically in most cases but a comm channel hard to fake like VoIP can be used to relay a visual signature. Telegram for instance uses emojis so you can verify with the other party the channel is untampered. As long as the initial key exchange is done in a secure fashion you can check for any identity changes and warn the e2e end user. I believe SDC did have a mechanism for visual identity built in and verification when I used it... so long as you utilize an offline or hard to spoof sidechannel to confirm your identities. Perhaps one of those lower chat toast messages on init of encrypted channel strongly prompting the user to verify their identity signatures until dismissed or manually confirmed by typing in proof of the other key's visual client identity. The solution as is for SDC as it stands, is workable, but has known attack surface. |
Beta Was this translation helpful? Give feedback.
-
Got questions for you, assuming this can be done cleanly in a native modestly portable TS tree within the src. Will this violate CSP? Willing to merge if it's quality? |
Beta Was this translation helpful? Give feedback.
-
Thankyou! This is a much better bridge for quite a number of addons I had a liking for too |
Beta Was this translation helpful? Give feedback.
-
Is there any point in implementing end to end layer before FOSScord has properly settled on a battle tested solution?
(Other than using discord safely in the immediate term)
There are already some end to end modifications of the official client if adaptations of the following src repos are an option.
https://github.com/leogx9r/DiscordCrypt
https://gitlab.com/An0/SimpleDiscordCrypt
(How might I go about adapting these for personal use if not desireable for mainline? I'm not exactly a webdev)
Is an end to end webRTC channel a possibility on top of this, using some kind of handshake?
Beta Was this translation helpful? Give feedback.
All reactions