Commit graph

14 commits

Author SHA1 Message Date
Daniel Gultsch aecb771ab5 use 16 byte IVs for http upload files larger than 768KiB
Ever since Android 9+ switched to Conscrypt we can no longer efficiently
encrypt (and decrypt) large files with AES-GCM. We did’t notice this before
because when using 16 byte IVs even modern Androids will fall back to bouncy
castle. However the 'bug'/'feature' in Conscrypt surfaced when we switched over
to 12 byte IVs (which uses Conscrypt on Android 9+)
Switching back entirely to 16 byte IVs is undesirable as this would break
compatibility with Monal. So we end up with a weird compromise where we use
12 byte for normale plain text OMEMO messages and 'small' files where the
inefficiencies aren’t a problem.

The result of this commit is that Monal won’t be able to receive our files
larger than 768KiB. However the alternative is that Conversations would always
OOM when attempting to send larger files (where large depends on the available
RAM.)

fixes #3653
2020-03-08 13:13:19 +01:00
Daniel Gultsch f4ff644338 reintroduced fixed IV mode for OTR file transfer. fixes #2595 2017-08-23 22:37:13 +02:00
moparisthebest 197352b669 Read support for 12-byte IVs in addition to 16-byte IVs 2017-08-09 23:42:35 -04:00
Daniel Gultsch 995d975127 removed support for fixed IV mode in otr jingle file transfer that hasn't been used since v0.4 or something 2017-08-09 09:43:12 +02:00
Daniel Gultsch f47cf7ae67 make jingle implementation send file hash when using ft5 2017-05-03 11:03:04 +02:00
Daniel Gultsch 343a6b4e6b made setting aes keys in DownloadableFile more readable 2016-03-31 13:55:25 +02:00
Daniel Gultsch 60cd307f73 enable axolotl encryption for jingle supported file transfers 2015-08-01 01:19:16 +02:00
Daniel Gultsch 58d80f58be use gcm for file encryption over http 2015-07-29 23:45:37 +02:00
Andreas Straub 012f036840 Optimize imports 2015-07-20 14:26:29 +02:00
Daniel Gultsch c20a088ea8 changed mime type handling 2015-07-01 16:01:18 +02:00
Daniel Gultsch be7de054be record voice and attachment refactor 2015-01-03 16:06:59 +01:00
iNPUTmice e7a70a46e0 some mime and pgp fixes for file transfer 2014-11-15 15:34:12 +01:00
iNPUTmice 7a90ca429b basic arbitrary file transfer 2014-11-15 15:34:11 +01:00
Sam Whited 281ce3105f Make conversations the root project 2014-10-22 15:47:11 -04:00
Renamed from conversations/src/main/java/eu/siacs/conversations/entities/DownloadableFile.java (Browse further)