session-android/src/org/thoughtcrime/securesms/crypto
Moxie Marlinspike 926d3c929f Handle simultaneous initiate protocol case.
1) Modify SessionRecord to store a list of "previous" sessions
   in addition to the current active session.  Previous sessions
   can be used for receiving messages, but not for sending
   messages.

2) When a possible "simultaneous initiate" is detected, push the
   current session onto the "previous session" stack instead of
   clearing it and starting over.

3) Additionally, mark the new session created on a received
   possible "simultaneous initiate" as stale for sending.  The
   next outgoing message would trigger a full prekey refresh.

4) Work to do: outgoing messages on the SMS transport should
   probably not use the existing session if it's marked stale
   for sending.  These messages need to fail and notify the user,
   similar to how we'll handle SMS fallback to push users before
   a prekey session is created.
2014-04-02 22:10:50 -07:00
..
protocol Support for Axolotl protocol. 2014-01-06 14:37:52 -08:00
AsymmetricMasterCipher.java Migrate to Curve25519. 2014-01-06 14:36:22 -08:00
AsymmetricMasterSecret.java Migrate to Curve25519. 2014-01-06 14:36:22 -08:00
DecryptingPartInputStream.java collection of fixes based on comments/small aesthetic stuff // FREEBIE 2014-02-18 16:42:44 -08:00
DecryptingQueue.java Handle simultaneous initiate protocol case. 2014-04-02 22:10:50 -07:00
EncryptingPartOutputStream.java Move common crypto classes into TextSecureLibrary. 2014-01-06 14:35:51 -08:00
IdentityKeyUtil.java Support for Axolotl protocol. 2014-01-06 14:37:52 -08:00
InvalidPassphraseException.java Initial Project Import 2011-12-20 10:20:44 -08:00
KeyExchangeInitiator.java Handle simultaneous initiate protocol case. 2014-04-02 22:10:50 -07:00
KeyExchangeProcessor.java Support for an 'end session' protocol message. 2014-02-19 13:50:32 -08:00
KeyExchangeProcessorV1.java Support for an 'end session' protocol message. 2014-02-19 13:50:32 -08:00
KeyExchangeProcessorV2.java Handle simultaneous initiate protocol case. 2014-04-02 22:10:50 -07:00
MasterSecretUtil.java Migrate to Curve25519. 2014-01-06 14:36:22 -08:00
PRNGFixes.java Update PRNG fix code sample. 2013-10-13 04:06:58 -07:00
PublicKeyAndVersion.java Move common crypto classes into TextSecureLibrary. 2014-01-06 14:35:51 -08:00