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
PapaTutuWawa
8991599a0b
feat: Allow removing all ratchets for a given Jid
2022-09-11 17:26:54 +02:00
PapaTutuWawa
dad938b0e1
feat: Allow initializing the BTBV trust manager in the constructor
2022-09-11 13:43:07 +02:00
PapaTutuWawa
ff52c82039
feat: Help with serializing and deserializing the BTVT manager
2022-09-11 13:33:45 +02:00
PapaTutuWawa
12e09947f6
feat: Implement enabling and disabling devices
2022-09-11 12:34:31 +02:00
PapaTutuWawa
d530358359
chore: Lower meta's minimum version
2022-09-09 17:40:16 +02:00
PapaTutuWawa
0e370a8e19
refactor: Use synchronized's return
2022-09-09 17:39:28 +02:00
PapaTutuWawa
b6aa28e1ee
release: Bump version
2022-08-19 17:00:44 +02:00
PapaTutuWawa
2e10842c54
feat: Make accepted ratchets unacknowledged by default
2022-08-19 16:59:24 +02:00
PapaTutuWawa
0e2af1f2a3
feat: Add a function to check if a ratchet is acknowledged
2022-08-19 16:58:23 +02:00
PapaTutuWawa
80e1b20f27
fix: Fix crash when calling getUnacknowledgedRatchets for a new Jid
2022-08-18 16:21:53 +02:00
PapaTutuWawa
f68e45af26
docs: Update README
2022-08-18 15:35:07 +02:00
PapaTutuWawa
345596923e
release: Bump version to 0.2.0
2022-08-18 15:33:49 +02:00
PapaTutuWawa
d5d4aa9014
feat: Add getDeviceId and getDeviceBundle
2022-08-18 15:30:31 +02:00
PapaTutuWawa
ee7b09bdb0
feat: Ratchets should overwrite each other
2022-08-18 15:20:32 +02:00
PapaTutuWawa
73613e266f
feat: Allow regerating a device's id
2022-08-18 15:08:05 +02:00
PapaTutuWawa
0a03483aaf
feat: Allow regenerating one's device identity
2022-08-18 15:02:17 +02:00
PapaTutuWawa
fda06cef55
feat: Implement acknowledging ratchet sessions
2022-08-16 14:02:04 +02:00
PapaTutuWawa
800b53b11f
style: Fix linter warnings
2022-08-16 13:46:08 +02:00
PapaTutuWawa
5a097e4d2a
feat: Allow removing a ratchet session
2022-08-16 13:27:21 +02:00
PapaTutuWawa
710b3c9497
feat: Allow serialising and deserialising without the ratchets
2022-08-16 12:57:16 +02:00
PapaTutuWawa
f540a80ec2
docs: Remove trust manager serialization from OmemoSessionManager
2022-08-16 12:54:15 +02:00
PapaTutuWawa
44ab31aebb
release: Bump version to 0.1.3
2022-08-11 12:06:02 +02:00
PapaTutuWawa
e4f1d7d4b0
docs: Fix indent in README
2022-08-11 12:04:40 +02:00
PapaTutuWawa
7600804aa1
test: Uncomment those tests
2022-08-11 12:02:33 +02:00
PapaTutuWawa
a4589b6e09
feat: Allow access to the device map
2022-08-11 12:02:21 +02:00
PapaTutuWawa
d0986a4608
fix: Fix ratchet only working for one message
2022-08-11 11:57:33 +02:00
PapaTutuWawa
683a76cc80
test: Add test for sending multiple OMEMO messages
2022-08-10 17:24:35 +02:00
PapaTutuWawa
dad707f71d
release: Sigh, bump to 0.1.2
2022-08-09 16:40:41 +02:00
PapaTutuWawa
419be8af4d
Revert "meta: Lower Dart SDK requirement"
...
This reverts commit fafc4f2320 .
2022-08-09 16:40:19 +02:00
PapaTutuWawa
fafc4f2320
meta: Lower Dart SDK requirement
2022-08-09 16:32:59 +02:00
PapaTutuWawa
fc842fe000
docs: Add note about using omemo_dart
2022-08-09 16:05:05 +02:00
PapaTutuWawa
e3de50e0c7
release: Make pub happy
2022-08-09 16:02:20 +02:00
PapaTutuWawa
234c2088b9
docs: Add notes on protobuf
2022-08-09 16:00:12 +02:00
PapaTutuWawa
ad3f1d4579
release: Publish to polynom.me
2022-08-09 15:51:22 +02:00
PapaTutuWawa
5bec3b4587
docs: Add note about events to the example
2022-08-09 15:49:40 +02:00
PapaTutuWawa
6e7b8e3905
docs: Add an example
2022-08-09 15:48:26 +02:00
PapaTutuWawa
cb43bbb112
fix: Allow empty OMEMO messages to bypass trust
2022-08-09 14:45:04 +02:00
PapaTutuWawa
fa16f97113
refactor: Move events to lib/src/omemo
2022-08-08 19:11:27 +02:00
PapaTutuWawa
5158c32c3d
feat: Make BlindTrustBeforeVerificationTrustManager abstract
2022-08-08 18:58:53 +02:00
PapaTutuWawa
c1fb79a20f
feat: Implement a BTBV TrustManager
2022-08-08 18:47:43 +02:00
PapaTutuWawa
dafd0af1e5
feat: Add a base trust manager class
2022-08-08 18:03:05 +02:00
PapaTutuWawa
e9f190036c
refactor: Move data classes into their own files
2022-08-08 17:43:15 +02:00
PapaTutuWawa
5b739aaf1a
fix: Do not keep the old SPK signature
2022-08-08 15:50:00 +02:00
PapaTutuWawa
1bcbf27c83
feat: Make any SPK survive exactly one rotation
2022-08-08 15:48:12 +02:00
PapaTutuWawa
b8b6bbf800
feat: Track the old Signed Prekey after rotation
2022-08-08 15:32:08 +02:00
PapaTutuWawa
9c23721904
docs: Add documentation string to Device.toBundle()
2022-08-08 15:11:15 +02:00
PapaTutuWawa
9626763b44
feat: Make the replacement functions internal
2022-08-08 15:10:36 +02:00
PapaTutuWawa
43080d2ba0
feat: Expose rotating our own bundle's SPK
2022-08-08 15:09:44 +02:00
PapaTutuWawa
9f986c3369
feat: Handle empty OMEMO messages
2022-08-08 14:59:46 +02:00
PapaTutuWawa
8c1a78e360
feat: Allow encrypting to multiple Jids
2022-08-08 14:44:05 +02:00
PapaTutuWawa
5a187bae97
docs: Add documentation string for EncryptedKey
2022-08-08 14:28:52 +02:00
PapaTutuWawa
9a9c9f064b
feat: Make RatchetMapKey internal
2022-08-08 14:28:02 +02:00
PapaTutuWawa
dd96e840d4
feat: Allow calculating fingerprints
2022-08-08 14:26:25 +02:00
PapaTutuWawa
70ab74b8dc
docs: Add protobuf as a dev dependency
2022-08-07 17:02:06 +02:00
PapaTutuWawa
be239fdb43
feat: Add events for commiting the device map and ratchet
2022-08-06 13:51:07 +02:00
PapaTutuWawa
859f25d867
feat: Allow serialising and deserialising OmemoSessionManager
2022-08-06 12:24:26 +02:00
PapaTutuWawa
3b8ccfaccf
docs: Add gitlint to README
2022-08-06 11:26:47 +02:00
PapaTutuWawa
189d823c87
fix: Track ratchet sessions using the (jid, device) tuple
2022-08-06 11:25:41 +02:00
PapaTutuWawa
f8830b974b
chore: Implement gitlint
2022-08-06 11:19:26 +02:00
PapaTutuWawa
70d0391020
docs: Fix sentence in README
2022-08-05 18:36:37 +02:00
PapaTutuWawa
1a672677e0
docs: Update README
2022-08-05 18:26:20 +02:00
PapaTutuWawa
fdc3985a8d
feat: Serialise the Double Ratchet
2022-08-05 18:14:10 +02:00
PapaTutuWawa
cd77996db4
feat: Allow serialising Device to Json
2022-08-05 17:32:59 +02:00
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
399f8033a3
test: Test the response to the new session
2022-08-05 15:53:16 +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