Commit Graph
100 Commits
Author SHA1 Message Date
PapaTutuWawa 8f50f54638 chore: Remove trailing dot from shortdesc
ci/woodpecker/manual/woodpecker Pipeline failed
2023-08-11 01:12:03 +02:00
PapaTutuWawa fac23cc4e7 fix: Remove wrong support chat 2023-08-10 15:02:12 +02:00
PapaTutuWawa 9eabb35157 chore: Create a DOAP file 2023-08-10 14:52:03 +02:00
PapaTutuWawa 49c7e114e6 feat: Track new/replaced ratchets in the results 2023-06-20 16:27:24 +02:00
PapaTutuWawa 3c20d8ac56 release: Release 0.5.0 2023-06-18 21:27:40 +02:00
PapaTutuWawa 96ca643d26 Merge pull request #32 from PapaTutuWawa/rework
Rework omemo_dart to finally enable (hopefully) stable E2EE in Moxxy.
2023-06-18 21:25:36 +02:00
PapaTutuWawa f54a90d5bb docs: Add a reference to moxxmpp's OMEMO example 2023-06-18 21:24:50 +02:00
PapaTutuWawa 9214e964df test: Test receiving an empty OMEMO message 2023-06-18 20:51:49 +02:00
PapaTutuWawa 8b91c07fb8 feat: Changes based on integration issues 2023-06-18 20:44:05 +02:00
PapaTutuWawa 499817313d docs: Add missing note about OmemoDevice 2023-06-18 12:44:09 +02:00
PapaTutuWawa b4241db9b6 fix: Remove unused imports 2023-06-17 23:31:16 +02:00
PapaTutuWawa 7f60140583 fix: Expose EncryptToJidError 2023-06-17 23:30:52 +02:00
PapaTutuWawa ddb4483d4a feat: Remove unused helper functions 2023-06-17 23:27:10 +02:00
PapaTutuWawa c086579b57 feat: Minor changes 2023-06-17 23:23:41 +02:00
PapaTutuWawa b986096aa0 feat: Take care of publishing 2023-06-17 23:14:00 +02:00
PapaTutuWawa bb5ef414f2 feat: Removing ratchets also removed trust 2023-06-17 21:24:51 +02:00
PapaTutuWawa 207215cc5f feat: Move the result type into moxlib 2023-06-17 21:22:16 +02:00
PapaTutuWawa 3829c6c11b feat: Move all constants into their own file 2023-06-17 21:05:26 +02:00
PapaTutuWawa 4baf8187e1 feat: Remove the KEX timestamp from the double ratchet data 2023-06-17 21:02:03 +02:00
PapaTutuWawa fe2b090ea0 feat: Replace isSuccessful with canSend 2023-06-17 20:58:33 +02:00
PapaTutuWawa 65c0975a77 feat: Each OPK now gets it's own unique id 2023-06-17 20:50:01 +02:00
PapaTutuWawa 234fee167f fix: Fix some issues found by integrating 2023-06-17 20:32:06 +02:00
PapaTutuWawa ed0701bdcd feat: Remove locking from the BTBV trust manager 2023-06-17 17:47:07 +02:00
PapaTutuWawa dad85b8467 feat: Implement deferred loading of ratchet data 2023-06-17 16:15:09 +02:00
PapaTutuWawa 4fb25a3ab7 feat: Stop overriding the BTBV manager 2023-06-17 15:21:11 +02:00
PapaTutuWawa 28e7ad59b0 feat: Remove events from the OmemoManager 2023-06-16 20:44:37 +02:00
PapaTutuWawa e6c792a8ac feat: DeviceListModifiedEvent now contains a delta 2023-06-16 20:13:30 +02:00
PapaTutuWawa 0b2d6f0a97 docs: Update example 2023-06-16 00:18:14 +02:00
PapaTutuWawa 4ed2d3dec3 docs: Improve docstrings 2023-06-15 22:46:37 +02:00
PapaTutuWawa 3d953f0acb test: Test receiving a non-KEX message from an unknown device 2023-06-15 21:47:04 +02:00
PapaTutuWawa b0bba4fe82 fix: Fix style issues 2023-06-15 21:20:24 +02:00
PapaTutuWawa da11e60f79 feat: Re-introduce locking the ratchet map/device list
This makes the locking much more intelligent, allowing us
to encrypt to/decrypt from groups while still being able to
bypass the lock for unaffiliated JIDs.
2023-06-15 21:02:53 +02:00
PapaTutuWawa 6e734ec0c3 feat: Remove serialization code 2023-06-15 18:11:35 +02:00
PapaTutuWawa 6c301ab88f feat: Guard against malformed ciphertext 2023-06-15 16:42:17 +02:00
PapaTutuWawa f1ec8d1793 feat: Implement getting fingerprints 2023-06-15 16:18:45 +02:00
PapaTutuWawa af33ed51d1 feat: Guard against invalid X3DH signatures 2023-06-15 16:07:23 +02:00
PapaTutuWawa c7ded4c824 fix: Pass all tests 2023-06-15 15:54:32 +02:00
PapaTutuWawa 87a985fee0 fix: Fix ratchets going out of sync 2023-06-15 01:26:49 +02:00
PapaTutuWawa c483585d0b fix: Get basic tests working 2023-06-14 21:59:59 +02:00
PapaTutuWawa f6f0e145cc feat: Rework the double ratchet 2023-06-14 19:55:47 +02:00
PapaTutuWawa d2558ea9fa test: Test something with protobuf 2023-06-14 14:03:11 +02:00
PapaTutuWawa 50f6513c6f feat: Remove custom protobuf parsing 2023-06-12 23:39:08 +02:00
PapaTutuWawa 0ffc0b067a docs: Migrate the example to the "new" OmemoManager
Fixes #30.
2023-06-12 19:37:51 +02:00
PapaTutuWawa 3376929c24 style: Formattiing issues 2023-06-12 19:37:45 +02:00
PapaTutuWawa 3783ec6f13 feat: Remove OmemoSessionManager 2023-06-12 19:21:07 +02:00
PapaTutuWawa 65f1daff55 style: Format using dart format 2023-06-12 19:20:43 +02:00
PapaTutuWawa f2ec7bd759 fix: Initial receiving ratchet has no trust data 2023-06-12 19:13:38 +02:00
PapaTutuWawa 04bb70d657 release: Tag 0.4.3
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/tag/woodpecker Pipeline was successful
2023-01-22 19:13:56 +01:00
PapaTutuWawa 3fb5fd7eb8 style: Cleanup 2023-01-22 19:08:06 +01:00
PapaTutuWawa a97f8bc372 fix: Fix ratchet null issue
Fixes #26.
2023-01-22 19:07:29 +01:00
PapaTutuWawa e29ee07015 release: Tag 0.4.2
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/tag/woodpecker Pipeline was successful
2023-01-07 22:16:15 +01:00
PapaTutuWawa cc31475671 fix: Ratchets are not removed when using removeAllRatchets
ci/woodpecker/push/woodpecker Pipeline was successful
2023-01-07 22:14:10 +01:00
PapaTutuWawa de85ab7955 chore: Bump version
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/tag/woodpecker Pipeline was successful
2023-01-02 13:57:15 +01:00
PapaTutuWawa a08c654295 feat: Do not fetch bundles for our own device 2023-01-02 13:56:22 +01:00
PapaTutuWawa 3825232ebe Merge pull request #24 from PapaTutuWawa/feat/omemomanager
ci/woodpecker/push/woodpecker Pipeline is pending
OmemoManager.
2023-01-01 16:59:00 +01:00
PapaTutuWawa 32c0c5a4f0 feat: Update CHANGELOG and README 2023-01-01 16:55:15 +01:00
PapaTutuWawa 092ce36410 feat: Add last features for use in moxxmpp 2023-01-01 16:49:19 +01:00
PapaTutuWawa 4085631804 fix: Make logging less verbose 2022-12-27 12:49:11 +01:00
PapaTutuWawa 6a9e98665d fix: Track new KEX entries using a ratchet key 2022-12-27 12:47:45 +01:00
PapaTutuWawa 5f844dafda feat: Add getDeviceId 2022-12-27 12:43:50 +01:00
PapaTutuWawa 480de1ce8f test: Port the sending/receiving for the OmemoManager 2022-12-27 12:43:50 +01:00
PapaTutuWawa 5e6b54aab5 feat: Better guard against failed lookups 2022-12-27 12:43:50 +01:00
PapaTutuWawa 6c4dd62c5a feat: _decryptMessage explicitly tells us that a ratchet was created 2022-12-27 12:43:50 +01:00
PapaTutuWawa 54eeb816eb feat: Export OmemoManager 2022-12-27 12:43:50 +01:00
PapaTutuWawa e35f65aff9 style: Fix style issues 2022-12-27 12:43:50 +01:00
PapaTutuWawa 4dc3cfb2b1 feat: Deprecate OmemoSessionManager 2022-12-27 12:43:50 +01:00
PapaTutuWawa bca4840ca6 test: Add a test to ensure the library cannot get stuck 2022-12-27 12:43:50 +01:00
PapaTutuWawa caf841c53e feat: Add more documentation 2022-12-27 12:43:50 +01:00
PapaTutuWawa 5bc1136ec0 feat: Implement getting fingerprints 2022-12-27 12:43:50 +01:00
PapaTutuWawa d37a4bd719 chore: Bump version 2022-12-27 12:43:50 +01:00
PapaTutuWawa b48665c357 feat: Begin work on the OmemoManager interface 2022-12-27 12:43:50 +01:00
PapaTutuWawa 06707d1a34 feat: Compute the fingerprint of a bundle 2022-12-27 12:43:18 +01:00
PapaTutuWawa 4346b31637 feat: Add funding
ci/woodpecker/push/woodpecker Pipeline was successful
2022-12-27 01:47:08 +01:00
PapaTutuWawa fe1ba99b14 feat: Indicate whether a ratchet has been created or not
ci/woodpecker/push/woodpecker Pipeline was successful
2022-12-09 20:41:53 +01:00
PapaTutuWawa 797bf69856 fix: Crash when calling getDevicesTrust for unknown Jid
ci/woodpecker/push/woodpecker Pipeline was successful
2022-12-09 18:42:23 +01:00
PapaTutuWawa afad5056c0 release: Bump version to 0.3.2
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/tag/woodpecker Pipeline was successful
2022-11-05 13:50:45 +01:00
PapaTutuWawa c68471349a fix: Reuse old key exchange when the ratchet is unacked
ci/woodpecker/push/woodpecker Pipeline was successful
2022-10-22 12:41:41 +02:00
PapaTutuWawa 1472624b1d fix: Use stanza receival timestamps to guard against stale kex messages
ci/woodpecker/push/woodpecker Pipeline was successful
2022-10-02 19:23:58 +02:00
PapaTutuWawa 0826d043d5 feat: Attempt to detect already decrypted messages 2022-10-02 17:03:39 +02:00
PapaTutuWawa 2aa3674c4b fix: Fix receiving an old key exchange breaking decryption
This was mostly caused by Dart not copying values but referencing
them. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA.

We know make some assumptions about received key exchanges, so this
needs some field testing.
2022-10-02 14:56:20 +02:00
PapaTutuWawa 7c3a9a75df chore: Let pub ignore the protobuf build artifacts
ci/woodpecker/push/woodpecker Pipeline was successful
2022-09-29 15:24:33 +02:00
PapaTutuWawa bc6f98bcd8 release: Version 0.3.1
ci/woodpecker/tag/woodpecker Pipeline was successful
2022-09-29 15:24:33 +02:00
PapaTutuWawa a107dfad87 ci: Fix issue with duplicate naming
ci/woodpecker/push/woodpecker Pipeline was successful
2022-09-28 13:18:39 +02:00
PapaTutuWawa 96771cf317 feat: Allow getting the device's fingerprint 2022-09-25 12:50:59 +02:00
PapaTutuWawa bea433e377 fix: React to all decryption errors with ratchet restoration 2022-09-25 11:35:12 +02:00
PapaTutuWawa 47948fa6ea build: Add Woodpecker CI 2022-09-22 21:33:22 +02:00
PapaTutuWawa a23dd30eee chore: Commit the protobuf artifacts 2022-09-18 15:56:09 +02:00
PapaTutuWawa b4c14a9769 fix: Guard against a crash in the critical section 2022-09-15 23:33:07 +02:00
PapaTutuWawa b69acdd936 fix: Fix replaceOnetimePrekey mutating the device's id 2022-09-15 23:31:56 +02:00
PapaTutuWawa 3d8c82fe5b docs: Update README 2022-09-15 13:52:29 +02:00
PapaTutuWawa 1e7f66ccc3 release: Bump to 0.3.0 2022-09-15 13:51:18 +02:00
PapaTutuWawa 0480e9156f fix: Fix occurence of not using synchronized's return 2022-09-15 13:46:52 +02:00
PapaTutuWawa 96d9c55c87 fix: Make fromJson* functions work when reading JSON from a String 2022-09-15 13:41:33 +02:00
PapaTutuWawa 49c847a96b feat: Remove toJson and fromJson from OmemoSessionManager 2022-09-15 13:22:50 +02:00
PapaTutuWawa cf5331a026 feat: Introduce logging for logging purposes 2022-09-15 13:17:30 +02:00
PapaTutuWawa c1d8073af0 refactor: Remove BTBV's loadState method 2022-09-15 13:06:14 +02:00
PapaTutuWawa 438012d8f8 fix: Hopefully fix all tests being flaky
It seems that the varint encoding function would not work for
some integers as input. This should in theory fix this issue. Since
the SPK IDs are randomly between 0 and 2**32 - 1, it makes sense that
the tests fail only sometimes.
2022-09-14 23:50:54 +02:00
PapaTutuWawa 79704da99c fix: Fix issues with the maps being unmodifiable 2022-09-14 22:02:50 +02:00
PapaTutuWawa 4341797f14 fix: Commit the restored ratchet 2022-09-14 22:02:35 +02:00
PapaTutuWawa c5c579810e fix: Restore the ratchets in case of an error
This means that if the ratchet fails to decrypt a message, from the
outside it will be as if that one message had never been received.
Thus, the ratchet can be used normally. This is to guard against
messages that are received again.
2022-09-14 21:58:41 +02:00