Richard van der Hoff
6449c90d81
More review feedback
2016-09-22 18:23:43 +01:00
Richard van der Hoff
97c991ffee
Merge branch 'rav/python_fixes'
2016-09-22 16:54:29 +01:00
Richard van der Hoff
b411f07df9
InboundGroupSession.init no longer requires a separate message_index
2016-09-22 16:24:03 +01:00
Richard van der Hoff
cfcee54a81
Handle non-base64 chars in pickle files
2016-09-22 15:09:40 +01:00
Richard van der Hoff
fc6688c4c8
megolm.rst: review feedback
...
Split ratchet algorithm out to a separate section.
Also clean up some phrasing and correct a typo or two.
2016-09-22 13:32:03 +01:00
Richard van der Hoff
182eccc624
megolm.rst: linkify Ed25519
2016-09-22 11:38:33 +01:00
Richard van der Hoff
ec91dd4570
Megolm.rst: add Background and footer
2016-09-22 11:35:23 +01:00
Richard van der Hoff
c07444d3e6
First stab at a megolm spec
2016-09-22 11:04:19 +01:00
Mark Haines
4106767fd0
Merge pull request #25 from matrix-org/markjh/fix_jenkins
...
Fix jenkins.sh
2016-09-16 17:38:18 +01:00
Mark Haines
8acf8fd367
Fix jenkins.sh
2016-09-16 17:34:21 +01:00
Richard van der Hoff
4ff663a0ae
Merge pull request #24 from matrix-org/rav/one_time_keys_comment
...
Update comment on olm_account_one_time_keys
2016-09-16 14:21:15 +01:00
Richard van der Hoff
76aad9d9c3
Update comment on olm_account_one_time_keys
...
Document what it actually returns.
2016-09-16 14:05:48 +01:00
Mark Haines
047927d822
Fix the release instructions
2016-09-14 14:16:51 +01:00
Mark Haines
ec7d968623
Changelog and version bump for 1.3.0
2016-09-14 13:55:54 +01:00
Mark Haines
7647555fc7
Make release instructions more C+Pable
2016-09-14 11:48:15 +01:00
Mark Haines
6dfa64342a
Fix the group javascript demo
2016-09-14 11:10:05 +01:00
Mark Haines
f274adfe24
Merge remote-tracking branch 'matrix/master'
2016-09-13 17:55:21 +01:00
Mark Haines
d7bc00c81d
Merge pull request #23 from matrix-org/markjh/remove_message_index
...
Remove the messsage index from olm_init_inbound_group_session
2016-09-13 17:54:14 +01:00
Mark Haines
1a50a4b3a0
Merge pull request #22 from matrix-org/markjh/inbound_group_session_id
...
Add a olm_inbound_group_session_id method
2016-09-13 17:54:07 +01:00
Mark Haines
a628ef41bd
Remove the messsage index from olm_init_inbound_group_session since it is read from the session_key
2016-09-13 17:51:02 +01:00
Mark Haines
71bcaa5d45
Add a test to check the equivalence of session ids for inbound and outbound sessions
2016-09-13 17:15:28 +01:00
Mark Haines
6971f54fea
Add a olm_inbound_group_session_id method
2016-09-13 17:02:36 +01:00
Mark Haines
e0b51971b7
Merge pull request #21 from matrix-org/markjh/fix_session_ids
...
Use the ed25519 public key as the group session id.
2016-09-13 17:02:12 +01:00
Mark Haines
a89a169c89
`if
is not the same as
for
`
2016-09-13 17:00:54 +01:00
Mark Haines
5926a8fd29
Comment on the encoding of the message counter.
2016-09-13 16:45:54 +01:00
Mark Haines
d62e344db7
Use the ed22519 public key as the group session id.
...
Some clients expect the session id to be globally unique,
so allowing the end devices to pick the session id will cause
problems.
Include the current ratchet index with the initial keys, this decreases
the risk that the client will supply the wrong index causing problems.
Sign the initial keys with the ratchet ed25519 key, this reduces the
risk of a client claiming a session that they didn't create.
2016-09-13 15:42:47 +01:00
Matthew Hodgson
576c6ad292
call double ratchet what it is
2016-09-06 22:46:58 +01:00
Richard van der Hoff
49ca6aca98
Bump version numbers to 1.2.0
2016-09-06 22:26:24 +01:00
Richard van der Hoff
976495e0ac
Merge pull request #20 from matrix-org/rav/prep_v1.2.0
...
Prepare changelog for v1.2.0
2016-09-06 22:22:46 +01:00
Richard van der Hoff
b5c65bed0a
Prepare changelog for v1.2.0
2016-09-06 17:04:37 +01:00
Richard van der Hoff
79485b2230
Merge pull request #19 from matrix-org/rav/megolm_signing
...
Sign megolm messages
2016-09-06 15:53:06 +01:00
Richard van der Hoff
2fc83aa9ac
Sign megolm messages
...
Add ed25519 keys to the inbound and outbound sessions, and use them to sign and
verify megolm messages.
We just stuff the ed25519 public key in alongside the megolm session key (and
add a version byte), to save adding more boilerplate to the JS/python/etc
layers.
2016-09-06 15:26:26 +01:00
Richard van der Hoff
50cd2b2a43
Clean up some typos
...
Remove redundant args from some js funcs, and fix a comment typo
2016-09-06 14:06:43 +01:00
Richard van der Hoff
7c84ce8098
Merge pull request #18 from matrix-org/rav/pickle_ed25519_in_c
...
Convert ed25519 pickling functions to C
2016-09-06 11:08:04 +01:00
Richard van der Hoff
8912d13b0b
Merge pull request #17 from matrix-org/rav/group_session_error_handling
...
Fix error handling for group sessions
2016-09-06 11:07:53 +01:00
Richard van der Hoff
c2b51207ee
Fix error handling for group sessions
...
Fix a couple of places where we were using the wrong method to get the last
error.
2016-09-05 19:42:04 +01:00
Richard van der Hoff
617f9b1696
remove js package before building
2016-09-05 18:42:18 +01:00
Richard van der Hoff
e7996e5984
pack the js after building
2016-09-05 18:40:37 +01:00
Richard van der Hoff
099757dc8f
Build the JS wrappers on jenkins
2016-09-05 16:35:22 +01:00
Richard van der Hoff
833ecd3c73
Convert ed25519 pickling functions to C
...
... so that I can use them from the group session bits.
2016-09-05 12:59:12 +01:00
Richard van der Hoff
c09aa77c4a
Avoid ldconfig in the Makefile
...
... because OSX doesn't support it.
2016-09-05 11:56:53 +01:00
Richard van der Hoff
057ab15c1a
Merge pull request #14 from matrix-org/rav/convert_crypto_to_c
...
Convert crypto.hh into C-compatible interface
2016-09-05 10:42:09 +01:00
Richard van der Hoff
69f269ffaf
Convert AES functions to plain C
2016-09-05 10:40:39 +01:00
Richard van der Hoff
f0acf6582f
Convert Ed25519 and Curve25519 functions to plain C
2016-09-05 10:40:39 +01:00
Richard van der Hoff
2aad4cfa86
Merge pull request #15 from matrix-org/rav/has_received_message
...
OlmSession.has_received_message
2016-09-05 10:38:41 +01:00
Richard van der Hoff
fee1748c60
Merge pull request #16 from matrix-org/rav/fix_megolm_utf8
...
Fix megolm decryption of UTF-8
2016-09-05 10:37:55 +01:00
Richard van der Hoff
9d16d82089
Merge pull request #13 from matrix-org/rav/split_out_key_lengths
...
Create new constants for key lengths, etc
2016-09-05 10:36:43 +01:00
Richard van der Hoff
1d4c13c798
Fix megolm decryption of UTF-8
...
Repeat the fix from b10f90d for megolm messages.
It turns out that the 'length' argument to 'Pointer_stringify' doesn't work if
the input includes characters >= 128.
Rather than try to figure out which methods can return UTF-8, and which always
return plain ascii, replace all uses of Pointer_stringify with a 'length'
argument with the version that expects a NULL-terminated input, and extend the
buffer by a byte to allow space for a null-terminator.
In the case of decrypt, we need to add the null ourself.
Fixes https://github.com/vector-im/vector-web/issues/2078 .
2016-09-05 00:49:36 +01:00
Richard van der Hoff
2e9021c2e7
OlmSession.has_received_message
...
I find myself wanting to know if an OlmSession is in the pre-key state or not,
to help debugging at the application level.
2016-09-04 23:41:10 +01:00
Richard van der Hoff
39212987bd
Create new constants for key lengths, etc
...
We were using olm::KEY_LENGTH for everything under the sun which happened to be
32 bytes long, and making a bunch of assumptions in the process. Create a bunch
of new constants (as C #defines rather than C++ consts so that I can use them
in another forthcoming refactor).
2016-09-02 15:11:14 +01:00