Commit Graph
89 Commits
Author SHA1 Message Date
PapaTutuWawa 3a7489a9c3 feat: Make most methods of the SessionManager private 2022-08-05 16:53:31 +02:00
PapaTutuWawa 62fdf568aa feat: Notify the user of a modified device 2022-08-05 16:52:02 +02:00
PapaTutuWawa 30e3bd78cd feat: Allow initiating multiple sessions for a message 2022-08-05 16:05:05 +02:00
PapaTutuWawa b5d39339d1 feat: Allow building a session when receiving 2022-08-05 13:34:42 +02:00
PapaTutuWawa ff7cc8e95a fix: Migrate more from protobuf 2022-08-05 13:02:44 +02:00
PapaTutuWawa 9ed94c8f3a fix: Migrate to custom protobuf 2022-08-05 12:59:10 +02:00
PapaTutuWawa 5c3cc424de feat: Implement all protobuf messages 2022-08-05 12:28:46 +02:00
PapaTutuWawa b8d70f1b88 feat: Add helper functions for field Ids 2022-08-04 23:08:02 +02:00
PapaTutuWawa a82b5d0990 feat: Reimplement the OMEMOMessage protobuf schema 2022-08-04 22:55:47 +02:00
PapaTutuWawa 08ec093675 fix: Track device Ids as integers 2022-08-04 16:57:12 +02:00
PapaTutuWawa 31ee61a5cd feat: Add convenience functions 2022-08-04 16:42:12 +02:00
PapaTutuWawa b745973188 fix: Make decryption work 2022-08-04 16:30:09 +02:00
PapaTutuWawa 31d3897995 fix: Migrate Double Ratchet to the helper functions 2022-08-04 14:10:08 +02:00
PapaTutuWawa 4d6dbef549 feat: Add a untest decrypt function 2022-08-04 14:01:50 +02:00
PapaTutuWawa e34e0cc7fb feat: Add managing our own keys 2022-08-04 13:19:27 +02:00
PapaTutuWawa 27b1931629 feat: Add a basic OMEMO session manager 2022-08-04 12:50:19 +02:00
PapaTutuWawa 713ea8e1b1 refactor: Rename key.dart to keys.dart 2022-08-03 17:18:14 +02:00
PapaTutuWawa 749e2e1a0a refactor: Move OmemoBundle into omemo/ 2022-08-03 17:16:40 +02:00
PapaTutuWawa 55979fcbbe refactor: Move the implementations into their own directory 2022-08-03 17:15:08 +02:00
PapaTutuWawa 1349df9274 refactor: Move the DH function into its own file 2022-08-03 16:55:56 +02:00
PapaTutuWawa e11baabfa0 feat: Remove the identityKey == 3 case 2022-08-03 16:52:42 +02:00
PapaTutuWawa f897431692 docs: Improve documentation 2022-08-03 16:50:27 +02:00
PapaTutuWawa 45d0c57305 fix: Throw a custom exception 2022-08-03 16:44:18 +02:00
PapaTutuWawa 8d222a160f feat: Check the HMAC during decryption 2022-08-03 16:41:33 +02:00
PapaTutuWawa 6d8238475c refactor: Remove pkcs7padding function 2022-08-03 16:38:04 +02:00
PapaTutuWawa 2fc2623092 docs: I meant 0.8.3, not 0.8.0 2022-08-03 16:32:22 +02:00
PapaTutuWawa 1a0f470ada feat: IMPLEMENT THE DOUBLE RATCHET WITH X3DH 2022-08-03 15:29:13 +02:00
PapaTutuWawa 4e3e20f08c ???: Move code around 2022-08-03 15:13:03 +02:00
PapaTutuWawa d3c8d813a9 wip: Add the basics for the Double Ratchet 2022-08-02 18:13:14 +02:00
PapaTutuWawa 56ae882aa0 style: Fix linter warning 2022-08-02 15:44:31 +02:00
PapaTutuWawa 26019ac704 style: Move the X3DH info string into a constant 2022-08-02 15:43:39 +02:00
PapaTutuWawa 4211775c90 feat: Add signature validation 2022-08-02 15:40:26 +02:00
PapaTutuWawa fc43655956 feat: Calculate the Appended Data 2022-08-02 15:26:00 +02:00
PapaTutuWawa 15df3b7f6b fix: Remove TODO
The X3DH spec says that salt (presumably the nonce) is supposed
to be [0, 0, ..., 0] with the length of the hash. I seem to have
skipped over that.

From Section 2.2:
"HKDF salt = A zero-filled byte sequence with length equal to the
hash output length."
2022-08-02 15:17:07 +02:00
PapaTutuWawa 566cb1b0ec style: Lint using very_good_analysis 2022-08-02 15:10:31 +02:00
PapaTutuWawa d86e7f5963 refactor: Clean up the X3DH implementation 2022-08-02 15:03:58 +02:00
PapaTutuWawa 34df73c929 ENABLE X3DH WITH ED25519 KEYS 2022-08-01 23:20:31 +02:00
PapaTutuWawa 0565cdef81 IMPLEMENT X3DH (without OMEMO) 2022-08-01 22:08:38 +02:00
PapaTutuWawa 18c6fdb54e Initial commit 2022-06-30 14:00:18 +02:00