Sarah Jamie Lewis
4f6cba2900
Add Content Addressing to Timeline
...
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
In order to implement features like quoting/reply-to we need a way
to reference messages that have been previously sent in a way that
is compatible across domains (i.e. p2p and groups).
For groups we could use signature as a universal identifier, but we have
no such analog in p2p - (note that adding a signature to p2p would compromise the
deniability properties of that protocol and as such wasn't considered.)
This PR creates a new index in Timeline that allows messages to be looked
up by their sender + message body. GetMessagesByHash returns a list of
matching messages that can then be used for a variety of applications
e.g. reply-to or duplicate detection.
Implementing reply-to would then be as simple as including the
content-hash of the replied to message in the overlay envelope, looking
up that hash in the timeline and finding the most recent message that
predates the index of the current message.
2021-07-02 12:06:44 -07:00
Sarah Jamie Lewis
a3665af870
Fixes to enable more efficient message syncing / storage
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-06-23 18:30:40 -07:00
Dan Ballard
940fb81a96
Storage v1 massively increase storage capacity
continuous-integration/drone/pr Build is passing
Details
2021-06-21 16:28:47 -07:00
Sarah Jamie Lewis
78ee588538
More test fixes
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-06-09 14:00:34 -07:00
Sarah Jamie Lewis
b4b2b15e76
Fix IsServer check in Invite
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is failing
Details
2021-06-09 13:38:11 -07:00
Sarah Jamie Lewis
aa6f2499b9
reject group invites without a corresponding key bundle
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is failing
Details
2021-06-09 13:26:19 -07:00
Sarah Jamie Lewis
28fd9372de
BUGFIX: reference group contact when updating timeline
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-06-09 11:03:10 -07:00
Sarah Jamie Lewis
c2ab6af7b8
Allow Updating of Message Flags
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is failing
Details
2021-06-08 15:35:50 -07:00
Sarah Jamie Lewis
d5024e2bd3
a few select staticcheck fixes
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-06-02 12:09:15 -07:00
Sarah Jamie Lewis
fbd1f98b65
Refine Start Group Event + Auto Accept Self-created Groups
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-05-28 01:47:37 -07:00
Sarah Jamie Lewis
b847fc42b8
Add IndexedError for Peer Messages
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-05-26 10:07:08 -07:00
Sarah Jamie Lewis
95f288bac5
Save Group Name from Invite
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-05-18 16:05:20 -07:00
Sarah Jamie Lewis
780357a6ac
Fix minor comments
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-05-18 12:23:13 -07:00
Sarah Jamie Lewis
967c04f9cf
Fix up documentation
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-05-18 12:11:00 -07:00
Sarah Jamie Lewis
511a737c5d
Update iteration counter
2021-05-18 12:09:11 -07:00
Sarah Jamie Lewis
08bb2f907f
Replace old GroupID with new Dervied GroupID
...
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
As we move towards a group model that allows for different management
constitutions we need to deprecate our old group security model that relied
on "owners" and transitive signing/verification checks.
This new model derives GroupID from the GroupKey and the GroupServer
binding it both. This allows participants to know if a message was
intended for the same group they are apart of (as GroupID is included
in every encrypted/signed message to Groups) while allowing more dynamic
management protocols to be built on top of the (now agnostic) group protocols.
This PR also adds more validation logic to invites and provides the ValidateInvite
function to allow the UI to validate invites separately from processing them.
2021-05-14 11:26:04 -07:00
Sarah Jamie Lewis
00dc2e60e5
Wire up SendMessageToGroupError
...
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
(Also makes this flow much more efficient by including groupId in the round trip)
2021-05-08 12:04:06 -07:00
Sarah Jamie Lewis
0075d1cd05
Store Server Key Bundle + a few stricter checks
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-05-06 17:15:33 -07:00
Sarah Jamie Lewis
eec933c197
Fix Invite Formatting
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-05-04 12:00:06 -07:00
Sarah Jamie Lewis
bea58b5ba4
Groups Cleanup
2021-05-04 12:00:06 -07:00
erinn
c340167b35
add indexed acknowledgements
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-05-03 11:35:35 -07:00
Sarah Jamie Lewis
b4f9decdf2
Upgrade Tapir, Log, Connectivity
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is failing
Details
2021-04-08 18:23:26 -07:00
Dan Ballard
d06b2e1241
store acks; group ack messages
2020-12-18 17:07:30 -08:00
Sarah Jamie Lewis
a1b2d8530f
Integrate Group Name into Invite
2020-12-16 21:41:24 -08:00
Sarah Jamie Lewis
b3ba23992e
Clean up some older TODOs
2020-11-05 14:44:27 -08:00
erinn
bd3c032ea6
bugfix
2020-10-22 16:03:46 -07:00
erinn
4d6112f28c
bugfix
2020-10-22 16:03:46 -07:00
erinn
913f43f699
unackd messages to timeline instead of separate map
2020-10-22 16:03:46 -07:00
erinn
7b98e214e6
UnackdMessages to public
2020-10-22 16:03:46 -07:00
Sarah Jamie Lewis
b8d308763c
Sign and Check ToFU Server Bundle
2020-10-01 14:06:30 -07:00
Sarah Jamie Lewis
3f522d4d23
Remove any dependence on protobufs of libricochet
2020-09-28 15:09:25 -07:00
Sarah Jamie Lewis
e5d21b25a3
Assume Invites are v2 Groups
2020-09-28 14:13:30 -07:00
Sarah Jamie Lewis
6739df68c3
Group V2 Logic
2020-09-28 11:18:18 -07:00
Sarah Jamie Lewis
8ed7dd471a
Small Fixes
2020-09-21 14:41:40 -07:00
Sarah Jamie Lewis
f74e8647ef
Fixup APIs, Error handling and formatting
2020-09-21 14:41:40 -07:00
Sarah Jamie Lewis
0550a71244
Tapir Server Refactor
2020-09-21 14:41:40 -07:00
Sarah Jamie Lewis
422b0d5deb
Allow Peers to Store History
2020-07-08 15:25:19 -07:00
Dan Ballard
e91e892eef
Adding new authorization level to peers; porting Blocked status to authorization; removing trusted; securing engine/peerapp message processing around authoriztion
2020-06-16 11:34:15 -07:00
Dan Ballard
dc3df531dd
peer getVal/retVal messages and functions and handling
2020-03-27 11:51:52 -07:00
Dan Ballard
12089d9fa4
migrate to stand alone log and connectivity packages
2020-02-10 18:36:28 -05:00
Dan Ballard
4ecc7c0f2b
Change password on a peer and it's storage
2019-12-12 13:36:04 -08:00
Sarah Jamie Lewis
8f85f49404
Initial pass at race condition fixes
2019-11-08 13:25:13 -08:00
Dan Ballard
b42baef6c5
add get/set attribute for profile/contact/group to cwtch_peer that does the action and emits an event; rename profile.GetGroupByGroupID to GetGroup for consitency
2019-10-31 14:39:31 -07:00
Dan Ballard
77d26d3877
profile and peer messaging refactor. Profiles once again store timelines for peers, should be used as canonical timeline by frontend UI
2019-10-21 13:56:07 -07:00
Dan Ballard
df420034ea
make contact retry plugin acn connection state aware; make contact retry plugin do groups; remove connectionManager bad retry logic; allow querringing of ACN status
2019-09-27 15:29:19 -07:00
Dan Ballard
15582c7e79
Rework group invite workflow: delete cwtchPacket references as no longer needed. Remove more events from being default handled by Peer (but allow them for some usecases still (testing, simple apps).
2019-09-20 11:06:05 -07:00
Sarah Jamie Lewis
3c67c47bb0
Add support for unblocking peers
2019-08-07 12:07:57 -07:00
Dan Ballard
695a622963
adding delete contact and group support
2019-08-07 11:35:08 -07:00
Dan Ballard
0465973a78
add app level functionality to reload from service
2019-07-19 20:08:00 -07:00
Dan Ballard
0c4bbe9ad1
Refactor: engine and peer decoupled, engine and eventbus now per peer
...
and stored top level in app. Storage has read only mode. Peer and group
state now event based and stored in profiles.
2019-05-22 12:54:47 -07:00