tigase / siskin-im

(M) Public Project of Tigase Messenger for iOS devices based on Tigase Swift XMPP library.
GNU General Public License v3.0
175 stars 37 forks source link

7.1 (4) breaks encryption in MUC #164

Open jtmaston opened 2 years ago

jtmaston commented 2 years ago

Describe the bug Not sure why, but updating to 7.1(4) on Testflight breaks encryption in MUC. Avatars are not displayed, only the first letter and messages all read "message decryption failed". Outgoing messages are unaffected, they get sent correctly.

To Reproduce Steps to reproduce the behavior: Update Go to MUC ??? Not profit

Expected behavior Messages should be sent, avatars shown. Screenshots Don't think these are needed...

Details (please complete the following information):

Additional context Add any other context about the problem here.

licaon-kter commented 2 years ago

Is 4 the latest build? Try to update, retest...

jtmaston commented 2 years ago

I should have mentioned, the bug persists even in 7.1(7), which is the latest.

hantu85 commented 2 years ago

The version which was released around 20 minutes ago?

Also, please keep in mind that the issue you are reporting is with other clients sending messages to Siskin which is unable to decode.

What clients are being used for sending those messages? Are you using other clients on the same account? If you are using other clients, is your SiskinIM-OMEMO key enabled?

jtmaston commented 2 years ago

Yes, both the latest version ( the one from half an hour ago ) and the one before it have this issue.

We have a MUC hosted on a Prosody server.

I can send messages to private convos without issues.

My friends are both using Blabber.im clients.

I use BeagleIM as my other client, and it works without issue. Of note is that messages I send from Beagle are readable in siskin and vice versa.

I have my keys trusted.

hantu85 commented 2 years ago

SiskinIM and BeagleIM both are using the same library for OMEMO encryption which was tested against Monal and Conversations and was working fine. Actually, after changes in version 7.1 (b1-b7), it is even more stable than it was before.

I cannot comment on Blabber.IM as I'm not using it (no Android device laying around), but you've mentioned that you are not seeing their avatars. That would mean, that either their presence is not forwarded properly or there is some issue with iq forwarding between Blabber.IM clients and your clients (iq forwarding done by MUC in Prosody).

jtmaston commented 2 years ago

Hm is there any chance I might find something in the app logs?

Update: looked into the logs using console on my mac, nothing useful... I'll try to see if prosody is logging anything

centertivevier commented 2 years ago

Hi,

a friend from me with the following device:

has the same problem. Sending in Mucs with Omemo is all fine, but when they receiving messages with Omemo, he can´t read it. We have tested with Dino 0.3 and Conversations 2.9.10. The problem is since update to the new version. Anyone a idea?

They would be update in first step the IOS Version and give you an update, if they help.

jtmaston commented 2 years ago

Yeah, I've tried changing server's ( using the tigase xmpp server also doesn't seem to solve the issue ), it's still there...

hantu85 commented 2 years ago

@jtmaston What you have actually changed? used new account? or created a new room on Tigase XMPP Server MUC?

centertivevier commented 2 years ago

@hantu85. a little more information from my side. We used a Ejabberd 21.12 and i have create a new muc with my friend, but there is the same problem. He can send with omemo, but received can't read "message decryption failed".

Update: The change to IOS Version 15.3 are not solved the problem.

hantu85 commented 2 years ago

Unfortunately, I cannot fix this issue as there were almost no changes in message decoding and none of the changes can be pinpointed as the source of this problem.

I've added additional debug information (error code) which will be displayed to the user if decoding will fail. This should allow us to know what actually is failing and then apply a fix.

This change will be part of the first build of SiskinIM 7.w which should be released soon.

jtmaston commented 2 years ago

Thanks, I'll have a look when that drops. Sadly it's been pretty hectic on my end so I haven't had more time to test.

When I deployed tigase I made a whole new user, new MUC, had a friend create a user and join the MUC from his client and the issue was still there.

I'll come back with more testing soon

sokai commented 2 years ago

Just another one … #sry

.oO(Has someone maybe verified that issue doesn't exists with BeagleIM …)

KR

hantu85 commented 2 years ago

Could someone check if the issue happens (recipient not able to decrypt) when the sender is in the room or only when the sender of the encrypted message is not in the room when the recipient actually received this message?

sokai commented 2 years ago

Could someone check if the issue happens (recipient not able to decrypt) when the sender is in the room or only when the sender of the encrypted message is not in the room when the recipient actually received this message?

@hantu85 I had the situation (while writing the last comment) that all Siskin users (and me, Conversations + writing test messages ;-)) were in the room.

licaon-kter commented 2 years ago

As said in the support channel, my users see the same. Conversations users are always online, as usual.

ejabberd almost HEAD

hantu85 commented 2 years ago

Did anyone check when this error message occurs, if on the list of occupants in the room in SiskinIM senders for which decryption of messages fails are visible as available?

hantu85 commented 2 years ago

Newly released beta build 7.2-b1 (on TestFlight), contains a fix on recently reported issue with participant status presentation in MUC rooms. This may be cause of this issue as well.

If possible, please try new build and check if it solved the issue. If not, please report error code presented in the error message, which will help us fix the issue.

sokai commented 2 years ago

@hantu85 I got positve feedback (and self-experience with Conversations) from 2 iOS users that the recent TestFlight version is working (again)! #thanks!

So can you please publish the TestFlight version as the current/stable release.(?)

sokai commented 2 years ago

@jtmaston Is the problem fixed, now with 7.2? 🤔 Thanks + KR!

jtmaston commented 2 years ago

@jtmaston Is the problem fixed, now with 7.2? 🤔

Thanks + KR!

Sadly, I have no means to test it now. Xmpp proved to be too unreliable for our application so we switched to something else.