<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Sun, Oct 2, 2016 at 2:35 PM, Brian Smith <span dir="ltr"><<a href="mailto:brian@briansmith.org" target="_blank">brian@briansmith.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Trevor brought up the good point that Noise tries to do something like this, and it might be good to define that things as an instance of a Noise protocol. However, it isn't obvious that Noise covers all the same use cases as crypto_box and crypto_secretbox. Also, Noise has a lot of options, and it isn't clear exactly which combinations of Noise options are most directly replacements for crypto_box and crypto_secretbox. It might be the case that there isn't a 1-to-1 mapping but I'm looking for a very small set (say 2 to 4 elements) of concrete Noise protocols that people would agree could serve as replacements.</div></blockquote><div><br></div><div>crypto_box looks to me like the one-way Noise_K pattern with the public keys exchanged out of band.  Noise_X could be used too.<br><br></div></div></div><div class="gmail_extra">crypto_secretbox appears to be symmetric encryption for transport-level message security rather than public-key.  The CipherState API post-handshake is the closest match.<br><br></div><div class="gmail_extra">I'm not too familiar with NaCl's primitives, so it may help if there was more information.  Are these typically used on their own or as building blocks in a larger application protocol?<br></div><div class="gmail_extra"><br></div><div class="gmail_extra">Cheers,<br><br></div><div class="gmail_extra">Rhys.<br></div></div>