Daniel Gultsch
ce46b36c33
go back to 16 byte IVs for OMEMO
...
clients like Dino can’t handle 12 byte IVs
2018-10-04 22:32:42 +02:00
Daniel Gultsch
4c08ba8d03
use 12 byte IV for omemo and http upload
2018-10-03 17:44:48 +02:00
Daniel Gultsch
67e7d2cf9e
do not use BC provider on android 22+
2018-09-17 17:47:36 +02:00
Daniel Gultsch
18a8a6e5ac
make session completion work with untrusted devices as well
2018-05-09 09:24:31 +02:00
Daniel Gultsch
85caaf084b
create dedicated exception for not encrypted for this device
2018-04-04 09:11:53 +02:00
Daniel Gultsch
dccd3f1c8e
figure out fallbacks with omemo source id
2018-03-22 13:26:35 +01:00
Daniel Gultsch
1accf9d961
migrate to xmpp-addr
2018-03-07 22:30:36 +01:00
Daniel Gultsch
036dd82698
properly handle key transport messages. use prekeyparsing only when that attribute is set
2018-01-18 20:58:55 +01:00
Daniel Gultsch
8f39a594ff
partially improved logging for receiving omemo messages
2017-01-14 18:10:04 +01:00
Daniel Gultsch
2c1d3ef968
fixed avatar republish missing the mime type
2017-01-12 12:20:10 +01:00
Daniel Gultsch
f0c3b31a42
treat omemo keys >= 32 bytes as containing auth tag. add config flag to put auth tag in key
2017-01-09 21:47:07 +01:00
Daniel Gultsch
a1cb855739
adding prekey='true' to omemo messages if applicable
2017-01-09 20:20:02 +01:00
Daniel Gultsch
e5fff42b10
added omemo padding but disabled by Config.java flag
2016-12-20 16:12:12 +01:00
Daniel Gultsch
ad9a8c2281
use base64.nowrap for omemo keys
2016-11-17 10:58:44 +01:00
Daniel Gultsch
0af13fc746
be more careful parsing integers in omemo
2016-10-06 22:05:18 +02:00
Daniel Gultsch
f7933c26d7
don't crash on broken base64 in omemo messages. fixes #1934
2016-06-29 17:18:57 +02:00
Sebastian
544e1dee65
Remove copy of innerkey
...
The line overwrites this.innerkey with the value that was already there.
2016-05-05 17:09:01 +02:00
Andreas Straub
6059b96456
Provide process function for key transport message
2015-07-31 23:28:09 +02:00
Andreas Straub
909f761ca1
Refactor axolotl message processing workflow
...
XmppAxolotlMessage is now entirely responsible for handling encryption
and decryption of messages, only leveraging XmppAxolotlSession as a
packing/unpacking primitive for payload keys.
Removed pseudo-dead session generation code step from prepareMessage
function, as sessions have been created by invoking the
TrustKeysActivity for a while now.
Added prepareKeyTransportMessage function, which creates a message with
no payload. The key that is packed into the header keyElements can then
be used for other purposes (e.g. encrypted file transfer).
2015-07-31 21:31:45 +02:00
Andreas Straub
50b14434ee
Reformat code
2015-07-31 21:31:45 +02:00
Andreas Straub
5c421da1e1
Change to new wire protocol version
2015-07-31 21:31:45 +02:00
Andreas Straub
efcefc2e63
Refactor out inner classes, cache trust store
...
Moves SQLiteAxolotlStore and XmppAxolotlSession into proper classes.
IdentityKeys trust statuses are now cached in an LruCache to prevent
hammering the database when rendering the UI.
2015-07-29 02:59:26 +02:00
Andreas Straub
122bc97ce2
Switch payload encryption to AES-GCM
...
This also ensures that the IV is generated with proper randomness.
2015-07-21 01:17:14 +02:00
Andreas Straub
ab2d114bbc
Add purge axolotl key option
...
Can now long-press a key to permanently purge it.
2015-07-20 22:18:24 +02:00
Andreas Straub
012f036840
Optimize imports
2015-07-20 14:26:29 +02:00
Andreas Straub
d173913eba
Overhauled Message tagging
...
Messages are now tagged with the IdentityKey fingerprint of the
originating session. IdentityKeys have one of three trust states:
undecided (default), trusted, and untrusted/not yet trusted.
2015-07-19 22:17:58 +02:00
Andreas Straub
ec6870307e
Properly track message sender
...
Previously, the sender was assumed to be the conversation counterpart.
This broke carboned own-device messages. We now track the sender
properly, and also set the status (sent by one of the own devices vs
received from the counterpart) accordingly.
2015-07-19 21:32:27 +02:00
Andreas Straub
1b0596d574
Tag messages with originating session
...
This can be used later in order to display trust status of messages, as
well as for potential resending of messages in case of preKey conflicts.
2015-07-19 21:32:26 +02:00
Andreas Straub
299bbdf27f
Reformat code to use tabs
...
This really sucks to do it like this. Sorry. :(
2015-07-19 21:32:26 +02:00
Andreas Straub
f73aa1a200
Reworked axolotl protocol layer
...
Numerous fixes
2015-07-19 21:32:25 +02:00
Andreas Straub
b8048a5538
CryptoNext persistance layer mockup
...
Initial sketch of the peripheral storage infrastructure for the new
axolotl-based encryption scheme.
2015-07-19 21:32:21 +02:00