Difference between revisions of "Np1sec/incremental consistency"

m (Definitions: make more precise, in the section below explicit-acks might bundle extra crypto material)
Dmitri (Talk | contribs)
m (Dmitri moved page MpOTR/incremental consistency to Np1sec/incremental consistency: protocol renamed)
 
(One intermediate revision by one other user not shown)
Line 39: Line 39:
 
Case '''(b)''': when a member ''u'' wants to part, they send a "farewell" message ''m'':
 
Case '''(b)''': when a member ''u'' wants to part, they send a "farewell" message ''m'':
  
* Everyone should explicit-ack this message ASAP
+
* Everyone should explicit-ack ''m'' as soon as they receive it from the server.
** This message should contain the next-sender-key, to be used after u leaves, encrypted to everyone except u. This ensures old members can't read new messages even if they eavesdrop.
+
** This ack may also bundle any cryptographic material needed for other members to agree on a key or keys that exclude ''u''. For example, in the SenderKeys scenario, this would contain the next sender-key, encrypted to everyone except ''u''.
** (We could probably do something similar for group keys.)
+
* When ''m'' is fully-acked, ''u'' reaches consistency for all previous messages up to ''m'', and may leave.
* When this message is fully-acked, u gains consistency for all previous messages up to m, and may leave.
+
* Messages that others send to ''u'' that are echoed back after ''m'', will not be acked by ''u''.
** Other messages should be probably be discarded - u won't have a chance to verify their consistency.
+
** ''u'' won't have a chance to reach consistency for these messages, even if ''u'' receives them.
 +
** Others won't have a chance to check that ''u'' read them, though they may be able to check that everyone else did. But ''u'' may still read them in theory, since they were encrypted to ''u''.
 +
** In either case, communicating this meaning to the user, should be already covered by the same UI as for case (a). In the first case, ''u'' may shortcut the timeout and just issue the warning straight away, or alternatively not display those messages to the user at all.
 
* TBD: need to think about simultaneous parts
 
* TBD: need to think about simultaneous parts
 
Messages that others send to ''u'' that are echoed back after "farewell" will not be acked by ''u'', therefore should not be shown as "seen/acked by u". However, ''u'' may still read them in theory, since they were encrypted to ''u''. Communicating this meaning should be already covered by the same thing as for case (a), though.
 
  
 
=== Parameters and properties ===
 
=== Parameters and properties ===

Latest revision as of 18:47, 2 December 2014

Background

Definitions

Consistency

Relative ordering

Last modified 10 years ago
Cancel

Help improve this page!

Cancel

Keep track of this page and all changes to it.