diff options
author | tb <> | 2024-11-23 12:56:31 +0000 |
---|---|---|
committer | tb <> | 2024-11-23 12:56:31 +0000 |
commit | f69cab5db16bb210dd0d4ae2f7e6e80ea8b29503 (patch) | |
tree | 5f349b025c06f8f850b0169de37a2b219f5ab02f /src/usr.bin | |
parent | 66beef8bfe83b33a0c5aaad6a85d57cca57cd62f (diff) | |
download | openbsd-f69cab5db16bb210dd0d4ae2f7e6e80ea8b29503.tar.gz openbsd-f69cab5db16bb210dd0d4ae2f7e6e80ea8b29503.tar.bz2 openbsd-f69cab5db16bb210dd0d4ae2f7e6e80ea8b29503.zip |
Further refactoring of the wNAF code
The big change is that the "rows" are no longer slices of val[] but
that they actually own the points they contain. The price for this
is an extra allocation for val[] and to piece it together from the
two rows. That's ugly, but less ugly than before.
Add a helper for freeing a row of points. It can deal with a NULL
row so, we can remove a couple of complications.
The second change is that the logic for preparing the rows is pulled
back into ec_wNAF_mul[]. This way the m * G + n * P logic is in the
one function that needs to know about it, the rest just deals with
a pair of a point and a scalar.
This starts resembling actual code...
ok jsing
Diffstat (limited to 'src/usr.bin')
0 files changed, 0 insertions, 0 deletions