| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
be 2*(p_size+1). Document that it clears the high part of z.
Don't clear the workspace before calling Karatsuba in bigint_mul or
bigint_sqr - they clear it every time anyway.
Don't bother masking words in the Montgomery_Exponentiator as redc
zeros those words. Also don't bother calling z.clear() as the multiply
operation does that already.
|
|
|
|
|
|
| |
Move bigint_divcore to divide.cpp which is the only place it is
used. Probably not computationally intensive enough to really be worth
optimizing in asm.
|
| |
|
| |
|
|
|
|
| |
BigInt function power_of_2. (Power2 was the only available NumberType)
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
to BigInt::mutable_data. Update callers.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Move Karatsuba cutoffs to mp_karat.cpp as that is the only place that
uses them and I doubt these get tweaked much (ever).
|
|
|
|
|
|
|
|
|
| |
we know one of the sub values was going to be zero. Avoid doing this
as it exposes a timing channel.
Some bn_asm code was manually inlined into the Karatsuba for doing
additions. Just call the normal functions - if these are too slow that
should be fixed.
|
|
|
|
|
|
|
| |
Montgomery exponentiation as except for the very first division all
operands are single words and thus we can assume we have a relatively
fast division operation (and additionally working only with words
avoids dynamic allocation).
|
|
|
|
| |
performance.
|
|
|
|
| |
the arguments
|
| |
|
| |
|
|
|
|
|
|
|
| |
only need the low word of the result. Credits to HAC, somehow I missed
that this was possible. This helps especially when a program does a
lot of setups, so the improvement is only minor on the benchmark but
fairly huge for asio_tls_server.
|
|
|
|
| |
get a secure_vector.
|
|
|
|
|
|
|
|
|
|
|
| |
until we are actually setting a key. This avoids the problem of
prototype objects consuming not just memory but the precious few bytes
of mlock'able memory that we're given by Linux.
Use clear_mem instead of a loop in BigInt::mask_bits
If OS2ECP encounters an invalid format type, include what type it was
in the exception message.
|
|
|
|
| |
style cast in secmem.h
|
|
|
|
|
|
| |
using a custom allocator. Currently our allocator just does new/delete
with a memset before deletion, and the mmap and mlock allocators have
been removed.
|
|
|
|
| |
secmem.h. Mostly replaced by assign or copy_mem.
|
|\
| |
| |
| |
| |
| | |
a4741cd07f50a9e1b29b0dd97c6fb8697c038ade)
to branch 'net.randombit.botan.cxx11' (head 116e5ff139c07000be431e07d3472cc8f3919b91)
|
| |
| |
| |
| |
| | |
list of maintainer mode flags. It produces some very useful warnings,
but also a lot of noisy junk that I really don't care about.
|
|\|
| |
| |
| |
| |
| | |
c247a55e7c0bcd239fcfc672139b59ef63d7ee84)
to branch 'net.randombit.botan.cxx11' (head 16d7756c6b8933d0d543ebdda9c7e8f4908a4a33)
|
| | |
|
| | |
|
|\|
| |
| |
| |
| |
| | |
39f53266912f33dc48e942b1b865ddcd6af66d8d)
to branch 'net.randombit.botan.cxx11' (head 0bf26cec09f71e75c547b4ec53365748c6d80d86)
|
| | |
|
| |
| |
| |
| |
| | |
the same, so clearly GCC 4.6 and/or the Core i7 are very good about
renames, but might help on less capable systems.
|
|\ \
| |/
|/|
| |
| |
| | |
5dc30d88afdeec4896b5065f9260e66d52b1a730)
to branch 'net.randombit.botan.cxx11' (head 8d42792537db92fab3136f5696ee1eba3e73fa76)
|
| |
| |
| |
| | |
Add move constructor and assignment to PointGFp
|
| |\
| | |
| | |
| | |
| | |
| | | |
150bd11dd8090559ee1e83394b8283bf93a018de)
to branch 'net.randombit.botan.c++0x' (head 7480693bb3f1e8a4e039a3e7ba3d9a7007f9730e)
|
| | |\
| | | |
| | | |
| | | |
| | | |
| | | | |
13a0d36dac3709f3cb88e830ed7f8cab9e7433ab)
to branch 'net.randombit.botan.c++0x' (head 2221ad8796466e7e096645de77ba856a9c902d14)
|
| | | |\
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
303b2518a80553214b1e5ab4d9b96ef54629cbc7)
to branch 'net.randombit.botan.c++0x' (head d734eefabe4816be4dd3e3e6e7bb13b7ab5be148)
|
| | | | |\
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
2841fb518e20d2fe0a374e4f6b08bdbb14d5d158)
to branch 'net.randombit.botan.c++0x' (head 0b9275139d6346bd3aa28d63bf8b8a03851d853d)
|
| | | | |\ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
2898d79f992f27a328a3e41d34b46eb1052da0de)
to branch 'net.randombit.botan.c++0x' (head 6cba76268fd69a73195760c021b7f881b8a6552c)
|
| | | | | |\ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
a29c41b4a949207b1544096c3afab668f8b5179e)
to branch 'net.randombit.botan.c++0x' (head a9d0c2f805b3c20a4c648575d7256959db8329fe)
|
| | | | | | |\ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
0a3348f52bf558bc2282e1066c2913a72a1aeda5)
to branch 'net.randombit.botan.c++0x' (head 552c20ae8874f12da779fc25ea368e36e71cbfe8)
|
| | | | | | | |\ \
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
161b5c0300b72baa746f101fda1e2b4a7c71818c)
to branch 'net.randombit.botan.c++0x' (head 1fc3875bb8daf4ad0e90ba66db72642203cb9984)
|
| | | | | | | | |\ \
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
647eeb4f4cf8fa4cf487cdc463d48f09fe18658e)
to branch 'net.randombit.botan.c++0x' (head 2539675db91883b11895ddc5244721e93c413321)
|