Computational number theory In mathematics and computer science, computational number theory, also known as algorithmic number theory, is the study of algorithms for performing number theoretic computations. The best known probl...
 Computer arithmetic algorithms
 Number theoretic algorithms
 Decision Linear assumption The Decision Linear (DLIN) assumption is a mathematical assumption used in elliptic curve cryptography. In particular, the DLIN assumption is useful in settings where the decisional Diffie–Hellm...
 Diffie–Hellman problem The Diffie–Hellman problem (DHP) is a mathematical problem first proposed by Whitfield Diffie and Martin Hellman in the context of cryptography. The motivation for this problem is that many security s...
 Double dabble In computer science, the double dabble algorithm is used to convert binary numbers into binary-coded decimal (BCD) notation. It is also known as the shift and add 3 algorithm, and can be implemented u...
 Quadratic residuosity problem The quadratic residuosity problem in computational number theory is the question of distinguishing by calculating the quadratic residues modulo N, where N is a composite number. This is an important c... Quadratic residuosity problem - Wikipedia
 Pollard's rho algorithm for logarithms Pollard's rho algorithm for logarithms is an algorithm introduced by John Pollard in 1978 for solving the discrete logarithm problem analogous to Pollard's rho algorithm for solving the Integer factor...
 Pocklington's algorithm Pocklington's algorithm is a technique for solving a congruence of the formwhere x and a are integers and a is a quadratic residue.The algorithm is one of the first efficient methods to solve such a c...
 Integer square root In number theory, the integer square root (isqrt) of a positive integer n is the positive integer m which is the greatest integer less than or equal to the square root of n,For example, because and ...
 Exponentiation by squaring In mathematics and computer programming, exponentiating by squaring is a general method for fast computation of large positive integer powers of a number, or more generally of an element of a semigrou...
 Tonelli–Shanks algorithm The Tonelli–Shanks algorithm (referred to by Shanks as the RESSOL algorithm) is used within modular arithmetic to solve a congruence of the formwhere n is a quadratic residue (mod p), and p is an odd ... Tonelli–Shanks algorithm - Wikipedia
 Computational Diffie–Hellman assumption The computational Diffie–Hellman (CDH assumption) is the assumption that a certain computational problem within a cyclic group is hard.Consider a cyclic group G of order q. The CDH assumption st...
 Higher residuosity problem In cryptography, most public key cryptosystems are founded on problems that are believed to be intractable. The higher residuosity problem (also called the n th-residuosity problem) is one such probl...
 Decisional Diffie–Hellman assumption
 Pohlig–Hellman algorithm In number theory, the Pohlig–Hellman algorithm sometimes credited as the Silver–Pohlig–Hellman algorithm is a special-purpose algorithm for computing discrete logarithms in a multiplicative group who...
 Integer relation algorithm An integer relation between a set of real numbers x1, x2, ..., xn is a set of integers a1, a2, ..., an, not all 0, such thatAn integer relation algorithm is an algorithm for finding integer relations....
 Lenstra–Lenstra–Lovász lattice basis reduction algorithm The Lenstra–Lenstra–Lovász (LLL) lattice basis reduction algorithm is a polynomial time lattice reduction algorithm invented by Arjen Lenstra, Hendrik Lenstra and László Lovász in 1982. Given a basis ... Lenstra–Lenstra–Lovász lattice basis reduction algorithm - Wikipedia
 Division algorithm A division algorithm is an algorithm which, given two integers N and D, computes their quotient and/or remainder, the result of division. Some are applied by hand, while others are employed by digital...
 Discrete logarithm records Discrete logarithm records are the best results achieved to date in solving the discrete logarithm problem, which is the problem of finding solutions x to the equation g = h given elements g...
 Lattice reduction In mathematics, the goal of lattice basis reduction is given an integer lattice basis as input, to find a basis with short, nearly orthogonal vectors. This is realized using different algorithms, who... Lattice reduction - Wikipedia
 Pollard's kangaroo algorithm In computational number theory and computational algebra, Pollard's kangaroo algorithm (aka Pollard's lambda algorithm, see Naming below) is an algorithm for solving the discrete logarithm problem. T...
 Fast Library for Number Theory The Fast Library for Number Theory (FLINT) is a C library for number theory applications. The two major areas of functionality currently implemented in FLINT are polynomial arithmetic over the integer...
 Integer factorization In number theory, integer factorization is the decomposition of a composite number into a product of smaller integers. If these integers are further restricted to prime numbers, the process is called ...
 Table of costs of operations in elliptic curves Elliptic curve cryptography is a popular form of public key encryption that is based on the mathematical theory of elliptic curves. Points on an elliptic curve can be added and form a group under this... Table of costs of operations in elliptic curves - Wikipedia
 Odlyzko–Schönhage algorithm
 Pi algorithms
 Itoh-Tsujii inversion algorithm The Itoh-Tsujii inversion algorithm is used to invert elements in a finite field. It was introduced in 1988 and first used over GF(2) using the normal basis representation of elements, however the al...
 Arbitrary-precision arithmetic In computer science, arbitrary-precision arithmetic, also called bignum arithmetic, multiple precision arithmetic, or sometimes infinite-precision arithmetic, indicates that calculations are performed...
 Euclidean algorithm In mathematics, the Euclidean algorithm, or Euclid's algorithm, is an efficient method for computing the greatest common divisor (GCD) of two numbers, the largest number that divides both of them with... Euclidean algorithm - Wikipedia
 Addition-chain exponentiation In mathematics and computer science, optimal addition-chain exponentiation is a method of exponentiation by positive integer powers that requires a minimal number of multiplications. It works by creat...