Files
amethyst/quartz
Claude 7a96a11f6e refactor: extract GLV endomorphism and wNAF encoding into Glv.kt
Splits the 914-line Point.kt into two focused files:

- Glv.kt (248 lines): GLV endomorphism constants, scalar decomposition
  (splitScalar), Babai rounding (mulShift384), and wNAF encoding. This is
  a self-contained algorithm that only operates on scalars (no EC points).

- Point.kt (683 lines): EC point types, core operations (double, addMixed,
  addPoints), scalar multiplication (mul, mulG, mulDoubleG), coordinate
  conversion (toAffine, liftX), and key serialization.

Each file has a comprehensive header explaining its purpose and the
algorithms it implements. The Point.kt header is updated to reflect the
current state (GLV and wNAF are implemented, not "future optimizations").

mulDoubleG now references Glv.splitScalar and Glv.wnaf instead of local
methods. GlvTest updated to use the Glv object directly.

No functional changes — pure file reorganization with updated documentation.

https://claude.ai/code/session_01BhU63WUe9AhikZxRdw3Lpg
2026-04-05 20:32:56 +00:00
..
2026-04-01 15:45:46 -04:00