[noise] Protocol Names

Alex alex at centromere.net
Tue May 30 15:07:05 PDT 2017

On Tue, 30 May 2017 16:59:52 +0000
Trevor Perrin <trevp at trevp.net> wrote:

> I think your argument is becoming clearer, though:  Are you thinking
> of including the explicit pattern in the JSON test vector format, so
> that modifiers that only rearrange patterns can be added without
> needing changes to the testing code, by separately specifying the
> pattern name and the explicit pattern?

I don't have a concrete answer, but adding the pattern explicitly is one

> That's worth discussing, though at the moment we have names for the
> patterns people want to use, and it's not hard to name other patterns
> that become important, so I'm not sure how useful that is.

I have no problem with there being some naming scheme. I fully support
the idea of some set of rules that, given an explicit *pattern*, will
output a *name*. However what I see unfolding in this discussion is a
set of rules that, given a *name* will output a *pattern*, and that such
rules will be normative -- i.e. if your implementation doesn't parse
the name and construct the pattern, you're violating the spec. That
causes me distress.

*From the implementation's (e.g. cacophony's) point of view* it is my
intention to declare the handshake name to be an opaque value that is
set by the author of the pattern, with the library providing a set of
off-the-shelf (name, pattern) pairs so that hopefully the end-user will
rarely have to define their own. I think this design decision leads to
a far more simpler and more elegant implementation, and I would hate
for the spec to be defined in such a way where this behavior is
considered a violation.


More information about the Noise mailing list