whaack: jfww: http://fixpoint.welshcomputing.com/2021/jwrd-logs-for-May-2021/#2355 << I think I figured out the example you were looking to give. It's the successive multiples (not powers) of a that generate all the elements in mod P if a is relatively prime with P, i.e. 1a, 2a, 3a...(P)(a)
sourcerer: 2021-05-29 19:54:06 (#jwrd) jfw: what can I say, three years ago I think I could have given the correct example but that part of the brain has perhaps rusted.
jfw: whaack: nice, that's the one - so if P is prime then any 'a' works except for the additive identity. Think I got tripped up trying to use literal exponentiation where all that was needed was group scalar multiplication, which repeated addition mod P fits just fine.
jfw: The EC 'exponentiation' is such a thing, just repetition of its 'point addition' the specified (scalar) number of times. It's purely a group, no multiplication operation is defined - except that finite field ops are used as an 'ingredient' to define the arithmetic on the point coordinates for the group operation & membership test.
jfw: Implementation is fancier than just repetition because it needs to run in polynomial time - can leverage the associative property to reuse sub-computations, x+x+x+x = (x+x) + (x+x) and so on.
jfw: I went a step further in mine (because it was so godawful slow), noting that the 'x' is always the same: the public generator, so all its successive doublings can be precomputed. thus to exponentiate you just go through the bits of the exponent, adding in the respective entry from the table of G^0, G^1, G^2, G^4, G^8... gated on the bit. so the 3 additions in the above trivial example reduce to 1.
jfw: er, zero actually since x^4 would be in the table directly - actual # of additions, if you do it timing-invariant, would be = to the number of bits in the key (exponent) I expect.
jfw: Big update re JWRD apu1 firmware: after a long slog through the coreboot & seabios config menus, capture of the sgabios code, in-system flashing and some minor iterations to work out the kinks, this is all validated & working.
sourcerer: 2021-04-30 17:39:46 (#jwrd) jfw: that is, I'm anticipating that I can use a stack of mainline coreboot (same one captured in '16 for thinkpads), mainline SeaBIOS (idem), and - here's the previously unknown - a mainline sgabios to accomplish the serial console redirection (which I'll note appears to have already existed, as a nice standalone thing, long before they went and did their own
jfw: The stock SeaBIOS "Press ESC for boot menu" prompt as well as the LILO boot menu prompt are working unmodified i.e. through the sgabios serial console redirection; boot from SD card appears to work too (at least it's shown as an option when I plug in a card, though I don't have any actually bootable for x86 atm) which wasn't supported in the OEM firmware; and of course Linux boots up.