JC Brand
1d5cf8eb7c
Fix AES-GCM encryption/decryption so that it works with Conversations
...
Fixes #497
2018-08-31 21:13:33 +02:00
JC Brand
dd71d6ee9b
Fix failing omemo tests due to mock
2018-08-31 18:49:47 +02:00
JC Brand
c2184ce8e1
Always create a new session
2018-08-31 18:44:24 +02:00
JC Brand
fc6982ce08
Merge branch 'omemo-debug'
2018-08-31 18:39:01 +02:00
JC Brand
bd1fd7eef1
Key should be AES-128, not AES-256
2018-08-31 18:33:03 +02:00
JC Brand
c2f1b2543f
Pass array buffer to libsignal decrypt
2018-08-31 18:24:08 +02:00
JC Brand
c8211085fd
Pass array buffer to libsignal encrypt/decrypt methods
2018-08-31 18:10:09 +02:00
JC Brand
6a061b4525
Use raw
key format and not jwk
. Set correct key size.
2018-08-31 17:15:03 +02:00
JC Brand
ed9afe9afb
Only include key and not whole payload from libsignal
2018-08-31 13:57:49 +02:00
JC Brand
18c7ba4ad8
Bugfix. Need to first create bookmark
...
Otherwise we don't include it in the stanza.
So if an error occurs, remove the bookmark again.
2018-08-31 11:24:05 +02:00
JC Brand
bb6d4f75bf
Fade out enter/leave messages sooner and add check
2018-08-31 10:36:51 +02:00
JC Brand
86a0fa280b
Call clearSession
when disconnecting
...
So that the chatboxes get closed/removed.
Also, don't render the login form when we're just reconnecting.
2018-08-31 10:17:24 +02:00
JC Brand
38bfbbf61f
New builds
2018-08-30 23:14:23 +02:00
JC Brand
1294d682e1
Automatically remove leave/enter and enter/leave messages
...
after 10 seconds.
2018-08-30 23:13:28 +02:00
JC Brand
4b5b517390
Update bookmark form with proper bootstrap markup
2018-08-30 22:32:16 +02:00
JC Brand
a44f38329c
Only create bookmark after succesfully setting it on the server
2018-08-30 13:39:50 +02:00
JC Brand
34541d6410
Add check before resetting
2018-08-30 13:39:33 +02:00
JC Brand
3ecb906dbd
New builds
2018-08-29 13:56:23 +02:00
JC Brand
f947bcc4b1
Also notify if the chat is not visible in the page.
2018-08-29 13:56:18 +02:00
JC Brand
33c2d4614f
Remove unused method
2018-08-29 10:33:43 +02:00
JC Brand
f72ace506f
Replace the onChatBoxAdded override with event handlers
2018-08-28 15:08:38 +02:00
JC Brand
934e86536e
Remove another vestige of OTR
2018-08-28 14:58:07 +02:00
JC Brand
21178add98
Remove converse-otr
2018-08-27 22:09:22 +02:00
JC Brand
4f8b5a4022
Use built-in crypto instead of CryptoJS
2018-08-27 21:54:29 +02:00
JC Brand
11cc41d3a3
Merge branch 'converse-omemo'
2018-08-27 21:14:03 +02:00
JC Brand
da68ea9c9f
New build
2018-08-27 21:02:31 +02:00
JC Brand
1dc1c1f98a
Properly generate and render fingerprints
2018-08-27 21:02:31 +02:00
JC Brand
c142437320
Create new message for correction if the original is not available
...
Fixes #1172
2018-08-27 21:02:31 +02:00
JC Brand
3e7c8655ad
Add a <store>
hint to OMEMO messages.
...
updates #497
2018-08-27 16:44:19 +02:00
JC Brand
15a4bcd11e
Add method to generate missing prekeys
...
When receiving a PreKeySignalMessage, then a prekey has been chosen and
should now be removed from the list of available prekeys in the bundle,
so that a different device doesn't choose it as well.
AFAICT, libsignal removes the prekey, so it's then up to us to
regenerate it and republish our bundle.
updates #497
2018-08-27 16:43:58 +02:00
JC Brand
3d015c787f
Extract common code into helper functions
2018-08-27 10:41:54 +02:00
JC Brand
ea5144c7e5
Refactor the OMEMOStore to not duplicate prekeys
...
Before these changes, prekeys were stored in two places, one place that
converse-omemo accessed and one that libsignal accessed and when
libsignal deleted a prekey the other store wasn't updated.
Now we let the methods called by libsignal store/remove prekeys (and the
signed_prekey) in the same place as used by the code in converse-omemo.
2018-08-25 23:22:18 +02:00
JC Brand
5406e9739c
Trying to fix timing issue on Travis
2018-08-25 01:04:17 +02:00
JC Brand
9e240c5647
Increase timeouts to try and avoid timing issues on Travis
2018-08-25 00:43:05 +02:00
JC Brand
7959855891
Move publishBundle
to OMEMOStore
...
updates #497
2018-08-24 16:32:40 +02:00
JC Brand
71e418fab6
Bugfix. Not stored as base64
2018-08-24 16:27:37 +02:00
JC Brand
d784e4a73a
Show an icon to indicate that a message is encrypted
...
updates #497
2018-08-24 16:26:54 +02:00
JC Brand
4c5ea34acf
New build
2018-08-24 15:39:14 +02:00
JC Brand
3eb5e93f81
Finally able to send a message and decrypt it on the other side
...
Updates #497
2018-08-24 14:40:48 +02:00
JC Brand
2dd5976f65
Fix bugs in the OMEMO store and in the decrypt
method.
...
Updates #497
2018-08-24 13:17:32 +02:00
JC Brand
9e56858aae
Remove unnecessary promise wrapper
2018-08-24 10:51:59 +02:00
linkmauve
5693350883
Keep multiple whitespace characters as is
...
Currently multiple consecutive spaces or tabs were being transformed into a single space, rendering some ASCII art unreadable. This patch fixes it by giving each message text the CSS behaviour of <pre/>.
2018-08-24 09:36:00 +02:00
JC Brand
7bb7f8f4dc
Can now successfully send an encrypted stanza
...
updates #497
2018-08-23 14:03:16 +02:00
JC Brand
c1123fd6a0
Used wrong registration id and identity key when building a session
...
updates #497
2018-08-23 14:03:12 +02:00
JC Brand
058905134e
Serialize all array buffers to base64 before storing
...
Array Buffers can't be JSON serialized as is.
updates #497
2018-08-23 14:03:09 +02:00
JC Brand
d4ccf20e7f
Update modals when devices get added
...
updates #497
2018-08-23 14:03:06 +02:00
JC Brand
b17579501f
Provide error output to user when encrypted message can't be sent
...
updates #497
2018-08-23 14:03:00 +02:00
JC Brand
7692a46e17
Nonsencical to wrap a promise in try/catch
2018-08-23 14:02:53 +02:00
JC Brand
069d4a9fae
Remove unnecessary promise wrapper
...
updates #497
2018-08-23 14:02:50 +02:00
JC Brand
fd639e2da6
Remove the active
flag for devices.
...
Instead of setting `active` to `false`, we remove the device entirely
(unless its the current device).
Doing it this way means more fetching of bundles for devices that
disappear and then reappear from a user's devicelist.
However, there might be caching invalidation concerns with just reusing
a cached bundle for a device id that disappeared and then reappears.
Additionally this change simplifies the showing of a contact's device
fingerprints in the modal, since we don't have to take active/inactive
into consideration.
updates #497
2018-08-23 14:02:43 +02:00