Commit Graph

818 Commits (ac61190bb3fae3fa2d143443ed5c97553cc324ed)

Author SHA1 Message Date
Matthew Hodgson c1e87973b9 empscripten example 2015-06-27 04:35:07 +02:00
Matthew Hodgson 09d4125ff1 Rename axolotlpp as olm to avoid confusion with Axolotl-the-spec and Axolotl-the-OWS-libraries at moxie's request 2015-06-27 01:15:23 +02:00
Matthew Hodgson fe95847245 fix citation 2015-06-26 19:26:01 +02:00
Mark Haines 86d0b80bea Add a README explaining how to build the library 2015-06-26 17:55:32 +01:00
Mark Haines 8b29bd4193 Make sure the build dir exists 2015-06-26 17:15:24 +01:00
Mark Haines e28f0989ad Add a demo for the javascript bindings 2015-06-26 16:23:31 +01:00
Mark Haines f2168004a1 Fix javascript bindings to correctly pass the random buffer 2015-06-26 16:16:34 +01:00
Mark Haines 84d6fbb0dc Add some tests which advance the ratchet on both sides a few times 2015-06-26 14:42:24 +01:00
Mark Haines 0083a07345 Throw an Error object rather than a string in the javascript bindings. 2015-06-24 10:32:51 +01:00
Mark Haines 07072912cd Add javascript bindings using emscripten 2015-06-23 17:50:30 +01:00
Mark Haines f10c04d62d reduce the number of one time keys that get generated when we create an account 2015-06-23 17:49:04 +01:00
Mark Haines 8bf32c3248 Fix bug encoding integers larger than 128 2015-06-23 17:47:48 +01:00
Mark Haines 10e7e8123d Add missing include, fix bug in handling unknown message fields 2015-06-23 15:15:18 +01:00
Mark Haines 39a0873309 This field isn't being used anywhere so don't bother including it in the messages 2015-06-23 10:03:41 +01:00
Mark Haines 3f475ab2f8 Note that the input buffers are destroyed by some of the account and session methods 2015-06-22 18:00:34 +01:00
Mark Haines 043bc43716 Copyright Notices 2015-06-22 17:50:56 +01:00
Mark Haines 492dc1ab58 Add API docs for the axolotl.hh methods 2015-06-22 17:44:56 +01:00
Mark Haines 408530adf9 Add API for removing used one time keys 2015-06-22 11:02:42 +01:00
Mark Haines fb980849c4 Add gdb script and psuedo-call graph generator python script for tracing calls to crypto primitives 2015-06-21 18:47:06 +01:00
Mark Haines 0ca3797d2d Make the 'random' numbers different for each key in the tests 2015-06-21 18:33:46 +01:00
Mark Haines 9cd53394e7 Fix a few valgrind warnings in the tests 2015-06-20 20:13:31 +01:00
Mark Haines 499f680f5b Add python ctypes bindings and a command line script using them 2015-06-16 18:13:04 +01:00
Mark Haines 76f49cf177 Add a test for the axolotl API 2015-06-16 15:15:40 +01:00
Mark Haines 11861404e4 script for building a shared library 2015-06-15 17:49:43 +01:00
Mark Haines 4abead9e9e Add c interface which wraps the cpp classes 2015-06-15 17:49:20 +01:00
Mark Haines 7cdde73560 Add base64 encoders and decoders 2015-06-15 17:48:09 +01:00
Mark Haines 026e4394bb Implement creating a new account 2015-06-15 17:47:22 +01:00
Mark Haines 6fe3b7eb73 Move utils for pickling into a separate file 2015-06-12 16:15:37 +01:00
Mark Haines 28541dd82a Implement the session key exchange 2015-06-22 14:30:46 +01:00
Mark Haines 6ecea67718 Implement the session key exchange 2015-06-12 14:09:41 +01:00
Mark Haines 08a7e44a96 Pass the message body to decrypt_max_plaintext_length so we can get a more accurate estimate, rename encrypt_max_output_length to encrypt_output_length and change the api to return the exact number of bytes needed to hold the message 2015-06-12 09:08:15 +01:00
Mark Haines 793b9b910a Start writing the interfaces for session and the account objects 2015-06-11 18:03:22 +01:00
Mark Haines bcb05d1a99 rename Session to Ratchet 2015-06-11 16:10:55 +01:00
Mark Haines e44c82a7b4 Add encoder and decoder for PreKey messages 2015-06-11 15:57:45 +01:00
Mark Haines 816435a860 Move AES specific details behind a cipher interface 2015-06-11 14:20:35 +01:00
Mark Haines 8161b56ff0 Move diagram to docs 2015-06-10 11:14:46 +01:00
Mark Haines a08d706366 Add methods for pickling and unpickling sessions 2015-06-09 18:03:01 +01:00
Mark Haines 8123ce6209 Constant time comparison for mac 2015-03-03 15:08:56 +00:00
Mark Haines 2f2e0340ae const on right hand side 2015-03-03 15:08:26 +00:00
Mark Haines a0e9065f1f Rename the ratchet source and include files from axolotl to ratchet 2015-03-03 11:50:17 +00:00
Mark Haines 315caaba7e Add functions for signing and verifying messages using curve25519 keys 2015-03-03 11:18:07 +00:00
Mark Haines 3ce450fc19 Merge commit '498dfabf9848286be003b42941c323a045d9fa46' as 'lib/ed25519' 2015-03-03 11:14:50 +00:00
Mark Haines 498dfabf98 Squashed 'lib/ed25519/' content from commit 1fc4a2f
git-subtree-dir: lib/ed25519
git-subtree-split: 1fc4a2ff69fe111875bd5efcc8523e40b18cf673
2015-03-03 11:14:50 +00:00
Mark Haines 8bf9954416 Add picture showing the guts of the ratchet 2015-03-02 01:13:25 +00:00
Mark Haines c7419e7cdf Try to ensure the compiler cannot optimise away attempts to erase secrets from memory 2015-02-27 16:11:30 +00:00
Mark Haines b3496b0aa1 More comments 2015-02-27 15:07:45 +00:00
Matthew Hodgson 65bb5d4e5b if you type axolotl a lotl you get it wrong 2015-02-27 13:09:17 +01:00
Mark Haines a98acb8f0d Test out of order delivery of messages 2015-02-27 11:36:58 +00:00
Mark Haines ea1ace8e1e Put the #! in the right place 2015-02-26 17:10:43 +00:00
Mark Haines be70fb986e add a gitignore 2015-02-26 16:58:08 +00:00