<div dir="ltr">maybe this [0] could give u ideas on how to wrap keys in a way that
provides forward secrecy. The paper comes up with a certain graph with
nice properties so that wrapped keys cannot compromise both last and
future (session) keys... it is applied to secure deletion in the paper
though. It may be possible to cherry-pick certain key ideas - i forgot
the details but off the top of my head there seems to be a common theme
with ur pb.<br><br>[0] <a href="http://www.syssec.ethz.ch/people/reardonj/btree">http://www.syssec.ethz.ch/people/reardonj/btree</a></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Oct 31, 2014 at 3:50 PM, Moxie Marlinspike <span dir="ltr"><<a href="mailto:moxie@thoughtcrime.org" target="_blank">moxie@thoughtcrime.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br>
<br>
On 10/31/2014 08:00 AM, Ximin Luo wrote:<br>
> But if you want a scheme where any device that you might want to<br>
> connect to your account (in the future) can decrypt old history, then<br>
> I don't think you can get true forward secrecy, since this would<br>
> likely involve storing the history somewhere with a key that doesn't<br>
> get destroyed. There's no impossibility result that I know of, but no<br>
> "breakthrough" yet either..<br>
<br>
</span>The way we handle multi-device for TextSecure is this:<br>
<br>
1) You have an existing device 'A'.<br>
<br>
2) You 'provision' an additional device 'B' using an authorization<br>
process that involves scanning a QR code. This securely communicates<br>
the identity key to the new device using a PFS scheme.<br>
<br>
3) The server now knows there are two physical devices registered for<br>
the same logical user. Each device has its own set of prekeys, but the<br>
same identity key.<br>
<br>
4) Device 'A' can use a regular axolotl session to transmit existing<br>
message history to device 'B'.<br>
<br>
5) The server enforces that new incoming messages are encrypted to both<br>
devices. Both devices essentially have their own axolotl session with<br>
the sender.<br>
<br>
6) Each device sends the other device a copy of outgoing messages using<br>
a regular axolotl session.<br>
<br>
This way all new incoming messages are naturally synchronized across<br>
devices, since each device will get their own copy. Outgoing messages<br>
are visible across all devices. And existing message history can be<br>
synchronized across all devices during the provisioning process.<br>
<br>
Everything sits on top of axolotl under the hood, so everything is<br>
transmitted with the properties that axolotl gets you.<br>
<span class="HOEnZb"><font color="#888888"><br>
- moxie<br>
<br>
--<br>
<a href="http://www.thoughtcrime.org" target="_blank">http://www.thoughtcrime.org</a><br>
</font></span><div class="HOEnZb"><div class="h5">_______________________________________________<br>
Messaging mailing list<br>
<a href="mailto:Messaging@moderncrypto.org">Messaging@moderncrypto.org</a><br>
<a href="https://moderncrypto.org/mailman/listinfo/messaging" target="_blank">https://moderncrypto.org/mailman/listinfo/messaging</a><br>
</div></div></blockquote></div><br></div>