diff --git a/Transport-Key-Agreement-Client.md b/Transport-Key-Agreement-Client.md new file mode 100644 index 0000000..477a6ab --- /dev/null +++ b/Transport-Key-Agreement-Client.md @@ -0,0 +1,7 @@ +A sync client to establish keys for newly added transports. + +It establishes transport keys with each contact for any transports that were added more recently than the contact was added. + +The `ACTIVATED` state lets us know that we already completed a session, so we don't create a new session if we receive another key message from the contact. Otherwise a malicious contact could cause us to create an unlimited number of key sets and run out of memory. + +TODO document the rest including state machine diagram \ No newline at end of file