[noise] Protocol Names

Trevor Perrin trevp at trevp.net
Wed May 31 13:11:34 PDT 2017


On Wed, May 31, 2017 at 6:52 AM, Alex <alex at centromere.net> wrote:
> On Wed, 31 May 2017 05:13:19 +0200
> "Jason A. Donenfeld" <Jason at zx2c4.com> wrote:
>
>> On Wed, May 31, 2017 at 4:32 AM, Alex <alex at centromere.net> wrote:
>> > How we deal with the test vector file format is still an unresolved
>> > challenge though. One solution would be to openly declare that the
>> > format is incapable of representing certain valid but uncommon
>> > patterns, such as those with multiple PSK tokens, possibly contained
>> > within the same message sequence. This would lead to a far simpler
>> > format at the cost of functionality. Do you think the trade-off is
>> > worth it?

Yeah, I think that's probably a good tradeoff.  Couple reasons:

 * Our current approach is to have separate fields for dh, cipher,
hash, hybrid, fallback, fallback_pattern.  As we continue to add
modifiers I think it will get more and more unwieldy to define all
these JSON fields and their relationships.  Since we're already
committed to encoding an unambiguous protocol description in the
protocol name, it will be easier to just use that.

 * The alternative seemingly requires encoding handshake patterns into
test vectors, which is even more complicated than parsing the name,
and requires the library to accept explicit patterns, which not all
libraries will have APIs for.

Trevor


More information about the Noise mailing list