<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Sun, Jan 7, 2018 at 5:41 PM, John Gilmore <span dir="ltr"><<a href="mailto:gnu@toad.com" target="_blank">gnu@toad.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Am I confused?  Doing Diffie-Hellman requires talking with another<br>
party.  For data-at-rest, who is the other party?  And how does your<br>
library communicate with that other party?</blockquote><div><br></div><div>XSTREAM encryption performs Diffie-Hellman with a static public key and an ephemeral private key. You can still think of these as a recipient and a sender respectively, but if the recipient's public key is known in advance, the sender can simply generate a random private key, perform Diffie-Hellman with it completely offline, and then throw it away after encryption, "stapling" the ephemeral public key to the resulting ciphertext.</div><div><br></div><div>This also has the interesting property that if the sender erases the private scalar and shared secret, they will no longer be able to decrypt a ciphertext they generated themselves, and is generally referred to as "sealing"</div><div><br></div></div>-- <br><div class="gmail_signature">Tony Arcieri<br></div>
</div></div>