[noise] Protocol Names

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


On Tue, 30 May 2017 05:23:42 +0000
Trevor Perrin <trevp at trevp.net> wrote:

> Here are some benefits to having a single representation for a Noise
> protocol, instead of two:
> 
>  * We don't have to maintain two grammars, one for JSON and one for
> protocol names.  For example, consider the current JSON for test
> vectors:
> 
> https://github.com/noiseprotocol/noise_wiki/wiki/Test-vectors
> 
> We'd have to extend this for additional modifiers, e.g. for "noidh",
> or "sig", and depending on how we do that, the library might have to
> figure out the order of modifiers itself.
> 
> That seems like a lot of redundant specification effort, considering
> we're encoding this information unambiguously in the protocol name.
> 

The handshake pattern naming scheme as defined is not capable of
expressing perfectly valid patterns like the following:

Noise_???(s, rs):
   <- s
   ...
   -> e, es, s, ss
   <- e, psk, ee, se

> 
>  * Focusing on the protocol name I think would encourage an ecosystem
> of interoperable tools (like code generators, test generators,
> security analyzers), since people would be steered towards a single
> format for describing Noise protocols, instead of having to convert
> between multiple formats.
> 

I too would like to see an ecosystem of interoperable tools, however
the usefulness of these tools is limited inherently by the
expressiveness of the pattern naming scheme.

-- 
Alex


More information about the Noise mailing list