libtommath icon indicating copy to clipboard operation
libtommath copied to clipboard

Made reduce and its helpers private

Open czurnieden opened this issue 6 years ago • 2 comments

Made all *reduce* functions and their helpers private. The *montgomery* functions are used by LibTomCrypt and have been excepted from privatization in consequence.

czurnieden avatar Nov 27 '19 15:11 czurnieden

If we make them private, we should call them s_*. But then I also wonder if we somehow want to make barrett reduction etc available. I again have no real idea on how the API should look like. I am not sure if just hiding things will do it or if we have to come up with a better API. See what I wrote regarding the prime tests in #433.

minad avatar Nov 27 '19 15:11 minad

If we make them private, we should call them s_*.

Argh! It went so smooth, I knew I forgot something! ;-)

But then I also wonder if we somehow want to make barrett reduction etc available.

Yes, we can set the line somewhere in between, but where exactly?

I again have no real idea on how the API should look like.

You were on the "simplification" path. And the motto of simplification is: make it as simple as possible but never more, which is a good example of the "not very helpful" mottos so let's just simplify until somebody complains.

Also: LTM is open source with a license that allows you to take it and run with it. It will never be a problem for any programmer to remove MP_PRIVATE if needed. Third party developers relying on thing being public…were all ears for complains, our development process is transparent.

Mmh…did I find all the MP_HAS?

(Documentation not yet updated)

czurnieden avatar Nov 27 '19 16:11 czurnieden

This PR is obsoleted by many others.

czurnieden avatar Apr 05 '23 13:04 czurnieden