Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-09-23 | set their_key_set flag explicitly on init | Hubert Chathi | |
2020-09-23 | SAS: add olm_sas_is_their_key_set | Saúl Ibarra Corretgé | |
Also make olm_sas_generate_bytes fail if their key wasn't set. | |||
2020-09-16 | fix style | Hubert Chathi | |
2020-08-14 | add support for fallback keys | Hubert Chathi | |
2019-10-08 | check return value of snprintf, fix typo, add clarification | Hubert Chathi | |
2019-10-04 | Pass in a buffer to olm_session_describe | David Baker | |
instead of having a static one, as that could end up taking up a lot of memory if your app keeps olm sessions hanging about. | |||
2019-10-01 | Add olm_session_describe | David Baker | |
As a way to dump the state of an olm session, ie. the chain indicies, so we can debug why olm sessions break and get out of sync. | |||
2019-05-14 | add more consts and comments | Hubert Chathi | |
2019-05-14 | add comment about input buffers being overwritten | Hubert Chathi | |
also make some params const where possible | |||
2019-04-02 | add support for an incorrect KDF that snuck into Riot 1.0 | Hubert Chathi | |
2019-03-13 | rename functions to be more consistent | Hubert Chathi | |
2019-02-01 | call the right function and remove unnecessary include | Hubert Chathi | |
2019-01-29 | Add signing class to the pk module | David Baker | |
2019-01-21 | initial implementation of short authentication string generation | Hubert Chathi | |
2018-10-15 | use the correct error code | Hubert Chathi | |
2018-10-11 | Add aliases for deprecated functions | David Baker | |
2018-10-05 | Merge branch 'master' into dbkr/pk_private_export_import | Hubert Chathi | |
2018-10-05 | fix some code style issues and typos | Hubert Chathi | |
2018-10-02 | Work with PkDecryption keys by their private keys | David Baker | |
Change interface to allow the app to get the private part of the key and instantiate a decryption object from just the private part of the key. Changes the function generating a key from random bytes to be initialising a key with a private key (because it's exactly the same thing). Exports & imports private key parts as ArrayBuffer at JS level rather than base64 assuming we are moving that way in general. | |||
2018-09-19 | Fix output buffer length check | David Baker | |
...when generating a key in PkDecryption. The pubkey is base64ed on the output, so will be longer. | |||
2018-06-28 | use void in type signatures for functions with no arguments | Hubert Chathi | |
2018-06-28 | add functions for pickling/unpickling a decryption object | Hubert Chathi | |
2018-06-27 | add initial implementation of basic private key encryption functionality | Hubert Chathi | |
2018-06-27 | Fix warnings reported by LLVM | manuroe | |
2018-06-27 | fix a length check and add some missing length checks | Hubert Chathi | |
2017-09-29 | Drop unused #include | Alexey Rusakov | |
Signed-off-by: Alexey Rusakov <ktirf@users.sf.net> | |||
2017-09-29 | Avoid C99 inside C++ code | Alexey Rusakov | |
This disrupts building at least with Visual Studio. Signed-off-by: Alexey Rusakov <ktirf@users.sf.net> | |||
2017-01-10 | Add some tests for inbound session import/export | Richard van der Hoff | |
2017-01-10 | Store a flag indicating if the sender key is verified | Richard van der Hoff | |
2017-01-09 | Implement importing group session data | Richard van der Hoff | |
olm_import_inbound_group_session, which reads the format written by olm_export_inbound_group_session to initialise a group session. | |||
2017-01-06 | Enable exporting inbound group session keys | Richard van der Hoff | |
A pair of functions which allow you to export the megolm keys for an inbound group session, so that an application can save/restore them. | |||
2016-10-24 | Return the base64-encoded length of pickles | Richard van der Hoff | |
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-21 | Clear random buf in olm_init_outbound_group_session | Richard van der Hoff | |
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 | Merge pull request #31 from matrix-org/markjh/groupmessageindex | Mark Haines | |
Return the message index when decrypting group messages. | |||
2016-10-20 | Add NULL check for message_index pointer | Mark Haines | |
2016-10-20 | Return the message index when decrypting group messages. | Mark Haines | |
Applications can use the index to detect replays of the same message. | |||
2016-10-19 | Fix a buffer bounds check when decoding group messages | Richard van der Hoff | |
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-09-13 | Merge pull request #23 from matrix-org/markjh/remove_message_index | Mark Haines | |
Remove the messsage index from olm_init_inbound_group_session | |||
2016-09-13 | Remove the messsage index from olm_init_inbound_group_session since it is ↵ | Mark Haines | |
read from the session_key | |||
2016-09-13 | Add a olm_inbound_group_session_id method | Mark Haines | |
2016-09-13 | ``if`` is not the same as ``for`` | Mark Haines | |
2016-09-13 | Comment on the encoding of the message counter. | Mark Haines | |
2016-09-13 | Use the ed22519 public key as the group session id. | Mark Haines | |
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-06 | Sign megolm messages | Richard van der Hoff | |
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-05 | Convert ed25519 pickling functions to C | Richard van der Hoff | |
... so that I can use them from the group session bits. | |||
2016-09-05 | Convert AES functions to plain C | Richard van der Hoff | |
2016-09-05 | Convert Ed25519 and Curve25519 functions to plain C | Richard van der Hoff | |
2016-09-05 | Merge pull request #15 from matrix-org/rav/has_received_message | Richard van der Hoff | |
OlmSession.has_received_message | |||
2016-09-04 | OlmSession.has_received_message | Richard van der Hoff | |
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-02 | Create new constants for key lengths, etc | Richard van der Hoff | |
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). |