<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">I found one more part of the specification that I think could be a bit clearer. In the section 3 (Negotiation), the part describing the Acceptance case says:<div class=""><br class=""></div><div class="">"The responder sends a NoiseSocket handshake message containing the next handshake message in the initial Noise protocol. The negotiation_data field must be empty.”</div><div class=""><br class=""></div><div class="">That is true only for two-way patterns. In one-way patterns, there will be no next handshake message, so the responder can only send empty noise_message field. I think that the spec should probably be explicit about that.<br class=""><div class="">
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;"><br class="">Nemanja</div>

</div>
<div><br class=""><blockquote type="cite" class=""><div class="">On Apr 24, 2018, at 10:40 AM, Trevor Perrin <trevp at <a href="http://trevp.net" class="">trevp.net</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">On Thu, Apr 19, 2018 at 7:08 AM, Nemanja Mijailovic<br class=""><metalnem at <a href="http://mijailovic.net" class="">mijailovic.net</a>> wrote:<br class=""><blockquote type="cite" class="">I think it may be difficult to define the API that is easy to directly implement in all programming languages. The spec itself is clear enough, so I wouldn’t miss the API section much if we remove it.<br class=""></blockquote><br class="">Yeah, I think I agree with you and Christopher [1] that the API isn't<br class="">adding much value, so I'll prepare a NoiseSocket draft that removes it<br class="">(and also clarifies the padding of handshake payloads, as was<br class="">discussed).<br class=""><br class="">Trevor<br class=""><br class="">[1] <a href="https://moderncrypto.org/mail-archive/noise/2018/001543.html" class="">https://moderncrypto.org/mail-archive/noise/2018/001543.html</a><br class=""><br class=""></div></div></blockquote></div><br class=""></div></body></html>