matrix-org / gomatrix

A Golang Matrix client
Apache License 2.0
285 stars 53 forks source link

Add olm encryption #31

Open NotAFile opened 7 years ago

NotAFile commented 7 years ago

As noted in #15 olm/megolm encryption should be added to gomatrix

I have started bindings at https://github.com/NotAFile/libolm-go

This currently only supports olm, but adding megolm support should not be hard.

The big disadvantage of this is that there is a runtime dependency on libolm.so.2 being available on the system. However I think this is a lot better than reimplementing olm.

I'm pretty new to go, so I'm not sure if perhaps e2e support could be enabled or disabled at compile time, or perhaps a different way could be found to integrate it with gomatrix. I'm thinking of something like the python ssl module which you can import separately to add TLS support to many python libraries.

gsantner commented 6 years ago

has something happened regarding this or in that direction since issue creation?

NotAFile commented 6 years ago

@gsantner no, not really. My bindings should be usable though.

ara4n commented 6 years ago

hm, i totally missed these bindings existed - thanks @notafile for hacking on them

r3k2 commented 5 years ago

is OLM fully working? looking for go libs to create a go bot for matrix but since most channels are encrypted I need it to support OLM for e2ee. does gomatrix supports this as of today? thanks.

ordinarygulp commented 5 years ago

Following up on this as well for bot support in encrypted channels

hook-s3c commented 5 years ago

Why has nobody solved this problem yet? Seems like only the official client supports e2ee

r3k2 commented 5 years ago

@hook-s3c weechat works good with e2ee also nheko https://hispagatos.org/blog/2019-04-27-weechat-for-matrix-with-e2ee/

AlexGreason commented 4 years ago

Is there any ETA, or any change to the status or prioritization of this issue since May?

EDIT: never mind, looked at the rest of the project and nothing's happened to anything since may, looks to be probably dead.

ara4n commented 4 years ago

We're not working on E2E in gomatrix currently - instead we put the effort into building github.com/matrix-org/pantalaimon which takes any client and allows it to speak E2EE. The likelihood is that the core team won't work on this until E2EE is on by default - and even then, we might end up working on MLS rather than olm/megolm at that point. The more independent Olm/Megolm implementations we have to implement, audit, maintain and keep secure the more time it stops us from working on next-gen stuff like MLS.

EDIT: no, the project isn't dead, it's just stable :/

tulir commented 4 years ago

mautrix-go has basic e2ee support now

TheHolyRoger commented 4 years ago

Thanks @tulir , sad the official client is dead