<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Jul 25, 2014 at 9:51 AM, Tom Ritter <span dir="ltr"><<a href="mailto:tom@ritter.vg" target="_blank">tom@ritter.vg</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

On 24 July 2014 16:01, Joseph Bonneau <<a href="mailto:jbonneau@gmail.com">jbonneau@gmail.com</a>> wrote:<br>
> Thoughts?<br>
<br>
This assumes Earl and Layton have a perfect record of all emails<br>
between them. In practice, I remove sensitive emails from the server<br>
to prevent an attacker who compromises the server from retroactively<br>
getting all the good stuff[0]. Also in practice, my parents use POP3<br>
instead of IMAP[1]. Also in practice, companies have a policy of<br>
archiving emails after N months into long-term difficult-to-access<br>
storage. By hearsay, I think some people aggressively delete emails<br>
instead of filing them away somewhere.<br></blockquote><div><br></div><div>I agree these are challenges. There are also many ways to add robustness around this-for example every month Earl uploads a new key, so you only need emails from the past month.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
But it occurs to me the SMTP message-id approach is not completely<br>
sunk because of the assumptions - we just need to open it up to lots<br>
more messages.  This problem is essentially trying to perform set<br>
intersection.  I have a bunch of 'secret' bitstrings I think you share<br>
some of, let's figure out if we do in fact share some. If we do, that<br>
bitstring can be used as keying material to authenticate a longer-term<br>
key.<br></blockquote><div><br></div><div>I was thinking of the problem a little differently, with it explicitly being a one-shot non-interactive protocol using a server because Earl won't be online when Layton decides to join. This seems to be a usability constraint in the case of people installing a new app on their phone and wanting to immediately discover which friends are using the same service (otherwise they may drop the app forever).</div>

<div><br></div><div>If Earl and Layton are both online (at which point they're Alice and Bob) a protocol like this sounds promising. Maybe it's possible to do it in an asynchronous manner?</div></div></div></div>