<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">D. J. Bernstein <span dir="ltr"><<a href="mailto:djb@cr.yp.to" target="_blank">djb@cr.yp.to</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><span>Brian Smith writes:<br>
> wouldn't the performance be much better on Skylake+ and ARMv8+?<br>
<br>
</span>No. Concretely, several generations of Intel chips have run 12-round<br>
ChaCha12-256 at practically the same speed as 12-round AES-192</blockquote><div><br></div><div>Nobody seems interested in ChaCha12 and AES-192, so I won't discuss them further.</div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Intel is doubling the vector size in its newest CPUs---again!---this<br>
time from 256 bits to 512 bits.<br></blockquote><div><br></div><div><snip></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Intel decided that on its large cores it<br>
could justify the area for 8 inverters, and then for 16 inverters, and<br>
probably 32 on future cores---but this is only a small percentage of the<br>
overall area of Intel's vector units, and the percentage doesn't seem to<br>
be increasing as the years go by.<br></blockquote><div><br></div><div>I agree that these are relevant issues: Whether things like AVX-512 will make ChaCha20-Poly1305 as fast or faster than AES-GCM on current and future Intel processors. I am looking forward to see a demo of AVX-512-based ChaCha20-Poly1305 outperforming similarly optimized AES-GCM on the same CPU. Right now, with the hardware and code I have, AES-GCM is more efficient. I would love for that to change.</div><div><br></div><div>I also think that the power consumption on ARMv8 (AAarch64/Aarch32) is an important factor, for mobile applications. And, also, what network card manufacturers do for on-NIC encryption (offloaded from the main CPU) is important.  And also what (ISO/IETF/802.11) standards groups choose to mandate seems to be important. Since they all seem to be going the AES-GCM route now, it seems kind of inevitable to me that we'll have lots of hardware-accelerated AES-GCM, even on platforms that don't have vector units, and we'll all be required to implement AES-GCM even if our own particular platform is better at ChaCha20-Poly1305. But, again, I'd love for things to turn out differently than that, because I much prefer software-implemented crypto, and ChaCha20-Poly1305 is very convenient for software, as everybody knows.</div><div><br></div><div>Anyway, I do appreciate the responses. Thanks!</div><div><br></div></div><div>Cheers,</div><div>Brian</div>-- <br><div data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><a href="https://briansmith.org/" target="_blank">https://briansmith.org/</a></div><div><br></div></div></div></div></div></div></div>
</div></div>