Skip to content

Commit

Permalink
Document that x25519 function does not implement zero-check
Browse files Browse the repository at this point in the history
  • Loading branch information
torben-hansen committed Nov 1, 2023
1 parent c499f8f commit 8d4c2e4
Show file tree
Hide file tree
Showing 8 changed files with 16 additions and 8 deletions.
3 changes: 2 additions & 1 deletion arm/curve25519/curve25519_x25519.S
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@
// this returns the X coordinate of n * P = (X, Y), or 0 when n * P is the
// point at infinity. Both n and X inputs are first slightly modified/mangled
// as specified in the relevant RFC (https://www.rfc-editor.org/rfc/rfc7748);
// in particular the lower three bits of n are set to zero.
// in particular the lower three bits of n are set to zero. Does not implement
// the zero-check specified in Section 6.1.
//
// Standard ARM ABI: X0 = res, X1 = scalar, X2 = point
// ----------------------------------------------------------------------------
Expand Down
3 changes: 2 additions & 1 deletion arm/curve25519/curve25519_x25519_alt.S
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@
// this returns the X coordinate of n * P = (X, Y), or 0 when n * P is the
// point at infinity. Both n and X inputs are first slightly modified/mangled
// as specified in the relevant RFC (https://www.rfc-editor.org/rfc/rfc7748);
// in particular the lower three bits of n are set to zero.
// in particular the lower three bits of n are set to zero. Does not implement
// the zero-check specified in Section 6.1.
//
// Standard ARM ABI: X0 = res, X1 = scalar, X2 = point
// ----------------------------------------------------------------------------
Expand Down
3 changes: 2 additions & 1 deletion arm/curve25519/curve25519_x25519_byte.S
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@
// this returns the X coordinate of n * P = (X, Y), or 0 when n * P is the
// point at infinity. Both n and X inputs are first slightly modified/mangled
// as specified in the relevant RFC (https://www.rfc-editor.org/rfc/rfc7748);
// in particular the lower three bits of n are set to zero.
// in particular the lower three bits of n are set to zero. Does not implement
// the zero-check specified in Section 6.1.
//
// Standard ARM ABI: X0 = res, X1 = scalar, X2 = point
// ----------------------------------------------------------------------------
Expand Down
3 changes: 2 additions & 1 deletion arm/curve25519/curve25519_x25519_byte_alt.S
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@
// this returns the X coordinate of n * P = (X, Y), or 0 when n * P is the
// point at infinity. Both n and X inputs are first slightly modified/mangled
// as specified in the relevant RFC (https://www.rfc-editor.org/rfc/rfc7748);
// in particular the lower three bits of n are set to zero.
// in particular the lower three bits of n are set to zero. Does not implement
// the zero-check specified in Section 6.1.
//
// Standard ARM ABI: X0 = res, X1 = scalar, X2 = point
// ----------------------------------------------------------------------------
Expand Down
3 changes: 2 additions & 1 deletion x86/curve25519/curve25519_x25519.S
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@
// this returns the X coordinate of n * P = (X, Y), or 0 when n * P is the
// point at infinity. Both n and X inputs are first slightly modified/mangled
// as specified in the relevant RFC (https://www.rfc-editor.org/rfc/rfc7748);
// in particular the lower three bits of n are set to zero.
// in particular the lower three bits of n are set to zero. Does not implement
// the zero-check specified in Section 6.1.
//
// Standard x86-64 ABI: RDI = res, RSI = scalar, RDX = point
// Microsoft x64 ABI: RCX = res, RDX = scalar, R8 = point
Expand Down
3 changes: 2 additions & 1 deletion x86/curve25519/curve25519_x25519_alt.S
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@
// this returns the X coordinate of n * P = (X, Y), or 0 when n * P is the
// point at infinity. Both n and X inputs are first slightly modified/mangled
// as specified in the relevant RFC (https://www.rfc-editor.org/rfc/rfc7748);
// in particular the lower three bits of n are set to zero.
// in particular the lower three bits of n are set to zero. Does not implement
// the zero-check specified in Section 6.1.
//
// Standard x86-64 ABI: RDI = res, RSI = scalar, RDX = point
// Microsoft x64 ABI: RCX = res, RDX = scalar, R8 = point
Expand Down
3 changes: 2 additions & 1 deletion x86_att/curve25519/curve25519_x25519.S
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@
// this returns the X coordinate of n * P = (X, Y), or 0 when n * P is the
// point at infinity. Both n and X inputs are first slightly modified/mangled
// as specified in the relevant RFC (https://www.rfc-editor.org/rfc/rfc7748);
// in particular the lower three bits of n are set to zero.
// in particular the lower three bits of n are set to zero. Does not implement
// the zero-check specified in Section 6.1.
//
// Standard x86-64 ABI: RDI = res, RSI = scalar, RDX = point
// Microsoft x64 ABI: RCX = res, RDX = scalar, R8 = point
Expand Down
3 changes: 2 additions & 1 deletion x86_att/curve25519/curve25519_x25519_alt.S
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@
// this returns the X coordinate of n * P = (X, Y), or 0 when n * P is the
// point at infinity. Both n and X inputs are first slightly modified/mangled
// as specified in the relevant RFC (https://www.rfc-editor.org/rfc/rfc7748);
// in particular the lower three bits of n are set to zero.
// in particular the lower three bits of n are set to zero. Does not implement
// the zero-check specified in Section 6.1.
//
// Standard x86-64 ABI: RDI = res, RSI = scalar, RDX = point
// Microsoft x64 ABI: RCX = res, RDX = scalar, R8 = point
Expand Down

0 comments on commit 8d4c2e4

Please sign in to comment.