cryb-to/lib/mpi
Dag-Erling Smørgrav 9ee45d4e34 Fix sign bug in special cases in mpi_{add,sub}_abs().
We failed to clear the negative flag when handling trivial cases, so if one of the terms was 0 and the other was negative, the result would be an exact copy of the non-zero term instead of its absolute value.
2017-04-06 19:51:47 +02:00
..
cryb-mpi.pc.in Start using pkg-config / pkgconf. 2017-03-07 00:54:46 +01:00
cryb_mpi.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_add.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_add_abs.c Fix sign bug in special cases in mpi_{add,sub}_abs(). 2017-04-06 19:51:47 +02:00
cryb_mpi_cmp.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_cmp_abs.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_copy.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_destroy.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_eq.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_eq_abs.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_grow.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_impl.h Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_init.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_load.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_lshift.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_negate.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_rshift.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_set.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_sub.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_sub_abs.c Fix sign bug in special cases in mpi_{add,sub}_abs(). 2017-04-06 19:51:47 +02:00
cryb_mpi_swap.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
cryb_mpi_zero.c Mechanically bump copyright dates to the date of the latest commit. 2017-02-19 20:07:43 +01:00
Makefile.am Start using pkg-config / pkgconf. 2017-03-07 00:54:46 +01:00
README Start of a multiple-precision integer arithmetic library. 2014-08-12 07:30:31 +00:00

Portable multiple-precision integer library.

The interface is loosely based on XySSL's MPI library.  The
implementation was written from scratch based on the algorithms
described in Menezes, van Oorschot and Vanstone: _Handbook of Applied
Cryptography_, CRC Press, 1996.  The full text of the HAC is available
for personal use at http://www.cacr.math.uwaterloo.ca/hac/.

This implementation sacrifices performance for portability and
readability, but attempts have been made to structure it in such a way
that critical portions can easily be replaced with machine-dependent
optimized versions.

The code assumes a 64-bit machine or a 32-bit machine where 64-bit
integer arithmetic is supported but not necessarily efficient; 64-bit
operations are used only to simplify overflow handling.