[noise] Key exchange and DuplexWrap-like protocols [xpost messaging]
Michael Hamburg
mike at shiftleft.org
Wed Feb 18 11:38:00 PST 2015
> On Feb 15, 2015, at 12:10 AM, Trevor Perrin <trevp at trevp.net> wrote:
>
> On Thu, Feb 12, 2015 at 3:03 PM, Michael Hamburg <mike at shiftleft.org> wrote:
>>
>> Trevor redirected me to here after posting on Messaging. I wonder what you think of the following design for a simpler Noise-like key exchange and messaging protocol.
> [...]
>>
>> Thoughts?
>
>
> The Axolotl spec I'm writing is going to use the notion of a "PRF
> chain", a sequence of keys defined by:
>
> (K[i], output) = PRF(K[i-1], input)
>
> So Axolotl is basically a PRF "root chain" that takes DH secrets as
> inputs and produces new sending and receiving chains as outputs. The
> sending and receiving chains process constant inputs and produce
> message keys. The argument is that these chains have good properties:
>
> * One-way: An attacker with knowledge of all inputs and some later
> keys can't "reverse" the PRF to derive earlier keys.
>
> * Secrecy-preserving: An attacker with control of all inputs but
> without knowledge of earlier keys can't learn any information about
> later keys.
>
> * Entropy-accumulating: An attacker with knowledge of earlier keys
> and some inputs can't compute later keys, provided the unknown inputs
> add sufficient entropy.
>
> It seems like DuplexWrap has the same or similar properties?
Similar. It’s not one-way, unfortunately, and so needs careful application of the “forget” call. But since its block function is intended to be stronger than a PRF, it also acts as a hash function and KDF. That said, you can probably use more aggressive parameters with a keyed sponge construction than in an unkeyed one.
> ---
>
> You're right that this is also similar to how Noise uses its KDF.
>
> Anyways, I'm less interested in the particulars of Keyak or
> DuplexWrap, more interested in how powerful this abstraction seems for
> protocol design. I think it's worth considering whether Noise should
> be more explicitly designed around this sort of notion, I'll say more
> about that in Kenton's thread.
>
> Trevor
Yeah, I agree that Keyak and DuplexWrap themselves are less interesting than the overall idea of a chain like this.
— Mike
More information about the Noise
mailing list