SearcharxivSearch

arXiv subjects

Andreas Enge

Publications and source records attributed to Andreas Enge.

15 recordsLinked to original sources

FastECPP over MPI

The FastECPP algorithm is currently the fastest approach to prove theprimality of general numbers, and has the additional benefit of creatingcertificates that can be checked independently and with a lower complexity.This article shows how by parallelising over a linear number of cores,its quartic time complexity becomes a cubic wallclock time complexity;and it presents the algorithmic choices of the FastECPP implementation inthe author's \cm\ software (https://www.multiprecision.org/cm/) which has been written with massive parallelisation over MPI in mind, and which has been used to establish a new primality record for the "repunit" $(10^{86453} - 1) / 9$.

math.NT

Short addition sequences for theta functions

The main step in numerical evaluation of classical Sl2 (Z) modular forms and elliptic functions is to compute the sum of the first N nonzero terms in the sparse q-series belonging to the Dedekind eta function or the Jacobi theta constants. We construct short addition sequences to perform this task using N + o(N) multiplications. Our constructions rely on the representability of specific quadratic progressions of integers as sums of smaller numbers of the same kind. For example, we show that every generalised pentagonal number c 5 can be written as c = 2a + b where a, b are smaller generalised pentagonal numbers. We also give a baby-step giant-step algorithm that uses O(N/ log r N) multiplications for any r > 0, beating the lower bound of N multiplications required when computing the terms explicitly. These results lead to speed-ups in practice.

math.NT

Schertz style class invariants for higher degree CM fields

Special values of Siegel modular functions for $\operatorname{Sp} (\mathbb{Z})$ generate class fields of CM fields. They also yield abelian varieties with a known endomorphism ring. Smaller alternative values of modular functions that lie in the same class fields (class invariants) thus help to speed up the computation of those mathematical objects. We show that modular functions for the subgroup $\Gamma^0 (N)\subseteq \operatorname{Sp}(\mathbb{Z})$ yield class invariants under some splitting conditions on $N$, generalising results due to Schertz from classical modular functions to Siegel modular functions. We show how to obtain all Galois conjugates of a class invariant by evaluating the same modular function in CM period matrices derived from an \emph{$N$-system}. Such a system consists of quadratic polynomials with coefficients in the real-quadratic subfield satisfying certain congruence conditions modulo $N$. We also examine conditions under which the minimal polynomial of a class invariant is real. Examples show that we may obtain class invariants that are much smaller than in previous constructions.

math.NT

Implementing cryptographic pairings at standard security levels

This study reports on an implementation of cryptographic pairings in a general purpose computer algebra system. For security levels equivalent to the different AES flavours, we exhibit suitable curves in parametric families and show that optimal ate and twisted ate pairings exist and can be efficiently evaluated. We provide a correct description of Miller's algorithm for signed binary expansions such as the NAF and extend a recent variant due to Boxall et al. to addition-subtraction chains. We analyse and compare several algorithms proposed in the literature for the final exponentiation. Finally, we ive recommendations on which curve and pairing to choose at each security level.

math.NT

Bilinear pairings on elliptic curves

We give an elementary and self-contained introduction to pairings on elliptic curves over finite fields. For the first time in the literature, the three different definitions of the Weil pairing are stated correctly and proved to be equivalent using Weil reciprocity. Pairings with shorter loops, such as the ate, ate$_i$, R-ate and optimal pairings, together with their twisted variants, are presented with proofs of their bilinearity and non-degeneracy. Finally, we review different types of pairings in a cryptographic context. This article can be seen as an update chapter to A. Enge, Elliptic Curves and Their Applications to Cryptography - An Introduction, Kluwer Academic Publishers 1999.

math.NT

Generalised Weber Functions

A generalised Weber function is given by $\w_N(z) = η(z/N)/η(z)$, where $η(z)$ is the Dedekind function and $N$ is any integer; the original function corresponds to $N=2$. We classify the cases where some power $\w_N^e$ evaluated at some quadratic integer generates the ring class field associated to an order of an imaginary quadratic field. We compare the heights of our invariants by giving a general formula for the degree of the modular equation relating $\w_N(z)$ and $j(z)$. Our ultimate goal is the use of these invariants in constructing reductions of elliptic curves over finite fields suitable for cryptographic use.

math.NT

Computing class polynomials for abelian surfaces

We describe a quasi-linear algorithm for computing Igusa class polynomials of Jacobians of genus 2 curves via complex floating-point approximations of their roots. After providing an explicit treatment of the computations in quartic CM fields and their Galois closures, we pursue an approach due to Dupont for evaluating $θ$- constants in quasi-linear time using Newton iterations on the Borchardt mean. We report on experiments with our implementation and present an example with class number 17608.

cs.CR

Singular values of multiple eta-quotients for ramified primes

We determine the conditions under which singular values of multiple $η$-quotients of square-free level, not necessarily prime to~6, yield class invariants, that is, algebraic numbers in ring class fields of imaginary-quadratic number fields. We show that the singular values lie in subfields of the ring class fields of index $2^{k' - 1}$ when $k' \geq 2$ primes dividing the level are ramified in the imaginary-quadratic field, which leads to faster computations of elliptic curves with prescribed complex multiplication. The result is generalised to singular values of modular functions on $X_0^+ (p)$ for $p$ prime and ramified.

math.NT

Class invariants by the CRT method

We adapt the CRT approach for computing Hilbert class polynomials to handle a wide range of class invariants. For suitable discriminants D, this improves its performance by a large constant factor, more than 200 in the most favourable circumstances. This has enabled record-breaking constructions of elliptic curves via the CM method, including examples with |D|>10^15.

math.NT

An $L (1/3)$ Discrete Logarithm Algorithm for Low Degree Curves

We present an algorithm for solving the discrete logarithm problem in Jacobians of families of plane curves whose degrees in $X$ and $Y$ are low with respect to their genera. The finite base fields $\FF_q$ are arbitrary, but their sizes should not grow too fast compared to the genus. For such families, the group structure and discrete logarithms can be computed in subexponential time of $L_{q^g}(1/3, O(1))$. The runtime bounds rely on heuristics similar to the ones used in the number field sieve or the function field sieve.

cs.CR

Computing modular polynomials in quasi-linear time

We analyse and compare the complexity of several algorithms for computing modular polynomials. We show that an algorithm relying on floating point evaluation of modular functions and on interpolation, which has received little attention in the literature, has a complexity that is essentially (up to logarithmic factors) linear in the size of the computed polynomials. In particular, it obtains the classical modular polynomials $Φ_\ell$ of prime level $\ell$ in time O (\ell^3 \log^4 \ell \log \log \ell). Besides treating modular polynomials for $Γ^0 (\ell)$, which are an important ingredient in many algorithms dealing with isogenies of elliptic curves, the algorithm is easily adapted to more general situations. Composite levels are handled just as easily as prime levels, as well as polynomials between a modular function and its transform of prime level, such as the Schläfli polynomials and their generalisations. Our distributed implementation of the algorithm confirms the theoretical analysis by computing modular equations of record level around 10000 in less than two weeks on ten processors.

math.NT

Computing Hilbert Class Polynomials

We present and analyze two algorithms for computing the Hilbert class polynomial $H_D$ . The first is a p-adic lifting algorithm for inert primes p in the order of discriminant D < 0. The second is an improved Chinese remainder algorithm which uses the class group action on CM-curves over finite fields. Our run time analysis gives tighter bounds for the complexity of all known algorithms for computing $H_D$, and we show that all methods have comparable run times.

math.NT

An $L (1/3 + ε)$ Algorithm for the Discrete Logarithm Problem for Low Degree Curves

The discrete logarithm problem in Jacobians of curves of high genus $g$ over finite fields $\FF_q$ is known to be computable with subexponential complexity $L_{q^g}(1/2, O(1))$. We present an algorithm for a family of plane curves whose degrees in $X$ and $Y$ are low with respect to the curve genus, and suitably unbalanced. The finite base fields are arbitrary, but their sizes should not grow too fast compared to the genus. For this family, the group structure can be computed in subexponential time of $L_{q^g}(1/3, O(1))$, and a discrete logarithm computation takes subexponential time of $L_{q^g}(1/3+ε, o(1))$ for any positive $ε$. These runtime bounds rely on heuristics similar to the ones used in the number field sieve or the function field sieve algorithms.

cs.CR

The complexity of class polynomial computation via floating point approximations

We analyse the complexity of computing class polynomials, that are an important ingredient for CM constructions of elliptic curves, via complex floating point approximations of their roots. The heart of the algorithm is the evaluation of modular functions in several arguments. The fastest one of the presented approaches uses a technique devised by Dupont to evaluate modular functions by Newton iterations on an expression involving the arithmetic-geometric mean. It runs in time $O (|D| \log^5 |D| \log \log |D|) = O (|D|^{1 + \epsilon}) = O (h^{2 + \epsilon})$ for any $\epsilon > 0$, where $D$ is the CM discriminant and $h$ is the degree of the class polynomial. Another fast algorithm uses multipoint evaluation techniques known from symbolic computation; its asymptotic complexity is worse by a factor of $\log |D|$. Up to logarithmic factors, this running time matches the size of the constructed polynomials. The estimate also relies on a new result concerning the complexity of enumerating the class group of an imaginary-quadratic order and on a rigorously proven upper bound for the height of class polynomials.

math.NA