Commit c9046a05 authored by Andy Polyakov's avatar Andy Polyakov
Browse files

bn/bn_{mont|exp}.c: switch to zero-padded intermediate vectors.



Note that exported functions maintain original behaviour, so that
external callers won't observe difference. While internally we can
now perform Montogomery multiplication on fixed-length vectors, fixed
at modulus size. The new functions, bn_to_mont_fixed_top and
bn_mul_mont_fixed_top, are declared in bn_int.h, because one can use
them even outside bn, e.g. in RSA, DSA, ECDSA...

Reviewed-by: default avatarRich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/6810)

(cherry picked from commit 71883868)

Resolved conflicts:
	crypto/bn/bn_exp.c
	crypto/bn/bn_lcl.h
	crypto/bn/bn_mont.c
	crypto/include/internal/bn_int.h
parent 327b2c01
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment