* Add timings, so logs can be replayed. * potential DOS where developer sends Activity Entered that all refer back to the first Activity Seen. This requires the user side to keep a Backlog containing all later Activity Seen, so uses up a lot of memory. For this to work, the developer would need to include in their Activity Entered echoData anticipating all the Activity Seen that they have generated. This is doable; for example the developer can send a stream of A's, and then needs to only include the right amount in the echoData. Should probably cap the BackLog to some maximum size to prevent this kind of DOS. Dropping old items from the BackLog after some amount of time would also work; after eg 10 seconds it's very unlikely that a Activity Entered will legitimately refer to an old backlog item. * Encryption! * Add random nonce to start message, to avoid replay issues. (Or perhaps the encryption derives a RSA key in a way that avoids replay..) * Network! * Server! * gpg key downloading, web of trust checking, prompting