The X25519 x86_64 assembly implementation fails to clear...
Low severity
Unreviewed
Published
Jun 25, 2026
to the GitHub Advisory Database
•
Updated Jun 26, 2026
Description
Published by the National Vulnerability Database
Jun 25, 2026
Published to the GitHub Advisory Database
Jun 25, 2026
Last updated
Jun 26, 2026
The X25519 x86_64 assembly implementation fails to clear the most significant bit during the final modular reduction, so the computed result may not be fully reduced modulo the field prime 2^255 - 19. This can leave the field element in a non-canonical form, producing an incorrect result from the scalar multiplication and potentially a wrong shared secret. The final carry-propagation chains in the x64 and AVX2 reduction routines could overflow into the top bit, and the high limb was not masked afterward, so the 255-bit field element was left non-canonical.
References