Commit graph

414 commits

Author SHA1 Message Date
pedroGitt
3ec91b849b Add possibility to define NDK_DEBUG flag 2016-10-24 16:51:03 +02:00
Richard van der Hoff
807fec2ebf double_ratchet.svg 2016-10-24 15:17:27 +01:00
pedroGitt
c485bf1d53 Update comments 2016-10-24 15:31:59 +02:00
pedroGitt
3f60e62827 Add missing account releaseAccount for test01VerifyEd25519Signing() 2016-10-24 15:30:55 +02:00
Richard van der Hoff
d8136096c0 Merge pull request #33 from matrix-org/rav/pickle_length
Return the base64-encoded length of pickles
2016-10-24 10:43:43 +01:00
Mark Haines
8de0f1fbb3 Merge pull request #32 from matrix-org/markjh/replay
Document the potential for message replays and possible mitigations
2016-10-24 10:28:54 +01:00
Richard van der Hoff
a7310c5821 Return the base64-encoded length of pickles
make olm_pickle_* return the lengths of the base64-encoded pickles, rather than
the raw pickle. (From the application's POV, the format of the pickle is
opaque: it doesn't even know that it is base64-encoded. So returning the length
of the raw pickle is particularly unhelpful.)
2016-10-24 10:06:06 +01:00
pedroGitt
332d9d0c09 Add serialization for inbound group session
- remove compiler warnings when logs are not enabled
- new getInstanceId() function to refactor code
2016-10-23 23:55:45 +02:00
pedroGitt
fae857582c Add serialization for outbound group session 2016-10-21 19:05:20 +02:00
pedroGitt
71f57b79e5 Update android platform to 16 2016-10-21 19:03:18 +02:00
pedroGitt
700b02589c Add getRandomKey() 2016-10-21 19:00:46 +02:00
Richard van der Hoff
d1a535861d Merge branch 'rav/clear_random_bufs' 2016-10-21 17:36:06 +01:00
Richard van der Hoff
21ce3491dd Clear random buf in olm_init_outbound_group_session
All the other methods clear their random inputs. This one needs to do the same,
to reduce the risk of the randomness being used elsewhere and leaking key info.
2016-10-21 17:19:59 +01:00
pedroGitt
fb87d8feee Serialization for OlmAccount and OlmSession OK 2016-10-21 18:09:20 +02:00
Mark Haines
884ad02413 Spelling 2016-10-21 17:07:26 +01:00
Mark Haines
092bf880f5 s/they've/they have/ 2016-10-21 15:45:33 +01:00
Mark Haines
0a7d4e35cc Reword and s/message index/ratchet index/ 2016-10-21 15:44:53 +01:00
Mark Haines
8c4a11a92d Document the potential for message replays and possible mitigations 2016-10-21 15:13:20 +01:00
Mark Haines
5a98012c0d Merge pull request #31 from matrix-org/markjh/groupmessageindex
Return the message index when decrypting group messages.
2016-10-21 09:57:42 +01:00
pedroGitt
1511962df1 Add serialization feature to OlmAccount
- new JNI API: serializeDataWithKeyJni() and initWithSerializedDataJni()
- update account unit test
- modify OlmAccount constructor API: an exception may be thrown
2016-10-20 17:42:57 +02:00
pedroGitt
8b050e5e1e Local variable renaming 2016-10-20 17:40:20 +02:00
pedroGitt
50bf60499a Update verifyEd25519Signature() to fix error message processing 2016-10-20 17:39:09 +02:00
pedroGitt
09fd7246ea Format update 2016-10-20 17:36:53 +02:00
pedroGitt
0cb45abdf3 Update logs 2016-10-20 17:36:20 +02:00
pedroGitt
867ef94ced First update with serialization mechanism 2016-10-20 14:40:59 +02:00
pedroGitt
250af95330 First update with serialization mechanism 2016-10-20 14:40:10 +02:00
Mark Haines
9a8d2d15d9 Check the message index in the tests 2016-10-20 11:51:56 +01:00
Richard van der Hoff
65b3345317 Merge branch 'master' 2016-10-20 11:43:41 +01:00
Richard van der Hoff
68d98234e1 Merge pull request #30 from matrix-org/rav/misc_docs
Add notes on limitations to megolm spec
2016-10-20 11:42:09 +01:00
Mark Haines
3091dc2b1d Add NULL check for message_index pointer 2016-10-20 11:35:45 +01:00
Mark Haines
653790eacb Return the message index when decrypting group messages.
Applications can use the index to detect replays of the same message.
2016-10-20 09:58:55 +01:00
Richard van der Hoff
5f1b93bd0f s/ephemeral/one-time/ in olm spec
We're standardising on 'one-time keys' as a term for the thing that Bob uploads
for prekey messages.
2016-10-19 19:18:58 +01:00
Richard van der Hoff
df04cd509a Add notes on limitations to megolm spec 2016-10-19 19:16:23 +01:00
Richard van der Hoff
23fdc0b0f9 Link to the megolm spec 2016-10-19 19:14:18 +01:00
Richard van der Hoff
d48dc81976 Document the unknown key-share attacks and mitigation (#29) 2016-10-19 17:27:24 +01:00
pedroGitt
e45c03c9e0 Add new exception message for deserialization 2016-10-19 18:18:12 +02:00
Richard van der Hoff
351b26fa6e Merge pull request #28 from matrix-org/rav/fix_megolm_segfault
Fix a buffer bounds check when decoding group messages
2016-10-19 15:21:07 +01:00
Richard van der Hoff
780203b054 Merge pull request #27 from matrix-org/rav/fuzzers_readme
Add a README for the fuzzers
2016-10-19 15:20:54 +01:00
Richard van der Hoff
1ff64391ed Fix a buffer bounds check when decoding group messages
Fixes a segfault when a group message had exactly the length of the mac +
signature.

Also tweak skipping of unknown tags to avoid an extra trip around the loop.
2016-10-19 15:03:40 +01:00
Richard van der Hoff
cada801de5 Add a README for the fuzzers 2016-10-19 14:59:50 +01:00
pedroGitt
5b524efc44 Update due to the de/serialization API 2016-10-19 15:23:19 +02:00
pedroGitt
26d9934fc8 Fix verifyEd25519Signature() API to properly return the error message in case signature verification failed
- update unit tests
2016-10-18 19:02:18 +02:00
pedroGitt
a6913c49c2 Fix javadoc header comment 2016-10-18 19:00:23 +02:00
pedroGitt
139402611a Add OlmUtility class
- add unit tests for OlmUtility
- rename OlmGroupTest to OlmGroupSessionTest
- update OlmException
2016-10-18 16:05:28 +02:00
pedroGitt
034fa6be40 - Add new API for OlmUtility
- Introducing namespace AndroidOlmSdk
- Fix logs (function names mixed up)
- Add new check based on the calling java object instance type (IsInstanceOf())
- Fix return value for getXXXInstanceId() in case of failure. Now 0 is returned.
2016-10-18 15:59:36 +02:00
pedroGitt
4ccc45ab0a - Update Javadoc for keys constants definitions
- change return code from removeOneTimeKeysForSession() (direct value from JNI is now returned)
2016-10-17 16:58:19 +02:00
pedroGitt
b6cf3f1eec Update Javadoc method headers with direct link to PRE_KEY definition 2016-10-17 16:55:14 +02:00
pedroGitt
4545b7bc19 Fix "invalid address or address of corrupt passed to dlfree" in 32bits platform devices 2016-10-17 16:53:36 +02:00
pedroGitt
7e69d96afc Add extra tests to check if the calling JAVA instance is the expected one 2016-10-17 16:48:29 +02:00
pedroGitt
ebfcd03ce5 - Add in/outbound group unit test OK 2016-10-14 18:43:57 +02:00