在Poly1305的功能(https://cr.yp.to/mac.html)中列出:
(并行性和增量性)Poly1305-AES 可以利用额外的硬件来减少 长消息的延迟,并且可以以低成本重新计算 对长消息的小修改。
例如,查看 Github 上 mbedTLS 实现中的代码,我找不到是否或如何使用此功能。是否有一些众所周知的实现利用了这种并行性,如果是的话,它大致是如何做到的?
粗略描述,它使用 Parallel Horner 来评估 Poly1305,而不是标准 Horner。
使用此功能的一种实现是激活矢量化的 OpenSSL,即 AVX 等。