go icon indicating copy to clipboard operation
go copied to clipboard

E2EE Example

Open owwk opened this issue 3 years ago • 5 comments

It would be good to have another example showing how encryption is used.

After many hours of trial and error along with looking through the gomuks source code I have got basic E2EE working with this library, but am unsure if I am doing it the right way.

I also can't figure out to keep E2EE working across restarts, even when I persist the crypto store, token and device id I am just met with "no session with given id found" errors.

A code example showing the right way to get encryption working with this library would really help me.

Alternatively a high-level "checklist" of everything that needs to be set up would be equally useful, e.g. what event listeners need to be set up, what functions need to be called, what data needs to be persisted etc.

owwk avatar Oct 28 '20 15:10 owwk

Here's a quick example for sending/receiving, no persistence though: https://mau.dev/-/snippets/6

tulir avatar Jan 26 '21 17:01 tulir

Hi, same request here. I can't get my session to be verified in Element with your code (thank you for it btw).

Oyabi avatar Feb 04 '21 00:02 Oyabi

I bump this thread since I cannot keep a session open. If my bot crash or a problem occur on server, how can I keep my session and not create another? image

Here you can see that many sessions with name Example are created. How to use only one session with the name Example? And how to authenticate them with max security settings?

Oyabi avatar Jul 26 '21 23:07 Oyabi

Please add some documentation and examples. It really is a blind trial and error what I am doing currently.

CubicrootXYZ avatar Nov 06 '21 12:11 CubicrootXYZ

You can take a look at some of these projects:

  • https://gitlab.com/beeper/matrix-vacation-responder
  • https://gitlab.com/beeper/chatwoot/
  • https://gitlab.com/beeper/standupbot

I'd look at the vacation responder first, since it's the most barebones one.

sumnerevans avatar Nov 08 '21 15:11 sumnerevans