FourQ
   HOME

TheInfoList



OR:

In
cryptography Cryptography, or cryptology (from "hidden, secret"; and ''graphein'', "to write", or ''-logy, -logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of Adversary (cryptography), ...
, FourQ is an
elliptic curve In mathematics, an elliptic curve is a smooth, projective, algebraic curve of genus one, on which there is a specified point . An elliptic curve is defined over a field and describes points in , the Cartesian product of with itself. If the ...
developed by
Microsoft Research Microsoft Research (MSR) is the research subsidiary of Microsoft. It was created in 1991 by Richard Rashid, Bill Gates and Nathan Myhrvold with the intent to advance state-of-the-art computing and solve difficult world problems through technologi ...
. It is designed for key agreements schemes (
elliptic-curve Diffie–Hellman Elliptic-curve Diffie–Hellman (ECDH) is a key agreement protocol that allows two parties, each having an Elliptic curve, elliptic-curve public–private key pair, to establish a shared secret over an insecure channel. This shared secret may be di ...
) and digital signatures ( Schnorr), and offers about 128
bits of security In cryptography, security level is a measure of the strength that a cryptographic primitive — such as a cipher or hash function — achieves. Security level is usually expressed as a number of " bits of security" (also security strength ...
. It is equipped with a
reference implementation In the software development process, a reference implementation (or, less frequently, sample implementation or model implementation) is a program that implements all requirements from a corresponding specification. The reference implementation ...
made by the authors of the original paper. The
open source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
implementation is called ''FourQlib'' and runs on
Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
and
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
and is available for x86, x64, and ARM. It is licensed under the
MIT License The MIT License is a permissive software license originating at the Massachusetts Institute of Technology (MIT) in the late 1980s. As a permissive license, it puts very few restrictions on reuse and therefore has high license compatibility. Unl ...
and the source code is available on
GitHub GitHub () is a Proprietary software, proprietary developer platform that allows developers to create, store, manage, and share their code. It uses Git to provide distributed version control and GitHub itself provides access control, bug trackin ...
. Its name is derived from the four dimensional Gallant–Lambert–Vanstone scalar multiplication, which allows high performance calculations. The curve is defined over a two dimensional extension of the
prime A prime number (or a prime) is a natural number greater than 1 that is not a product of two smaller natural numbers. A natural number greater than 1 that is not prime is called a composite number. For example, 5 is prime because the only ways ...
field defined by the
Mersenne prime In mathematics, a Mersenne prime is a prime number that is one less than a power of two. That is, it is a prime number of the form for some integer . They are named after Marin Mersenne, a French Minim friar, who studied them in the early 1 ...
2^ - 1.


History

The curve was published in 2015 by Craig Costello and Patrick Longa from
Microsoft Research Microsoft Research (MSR) is the research subsidiary of Microsoft. It was created in 1991 by Richard Rashid, Bill Gates and Nathan Myhrvold with the intent to advance state-of-the-art computing and solve difficult world problems through technologi ...
on
ePrint In academic publishing, an eprint or e-print is a digital version of a research document (usually a journal article, but could also be a thesis, conference paper, book chapter, or a book) that is accessible online, usually as green open access, ...
. The paper was presented in Asiacrypt in 2015 in
Auckland Auckland ( ; ) is a large metropolitan city in the North Island of New Zealand. It has an urban population of about It is located in the greater Auckland Region, the area governed by Auckland Council, which includes outlying rural areas and ...
, New Zealand, and consequently a
reference implementation In the software development process, a reference implementation (or, less frequently, sample implementation or model implementation) is a program that implements all requirements from a corresponding specification. The reference implementation ...
was published on
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
's website. There were some efforts to standardize usage of the curve under
IETF The Internet Engineering Task Force (IETF) is a standards organization for the Internet standard, Internet and is responsible for the technical standards that make up the Internet protocol suite (TCP/IP). It has no formal membership roster ...
; these efforts were withdrawn in late 2017.


Mathematical properties

The curve is defined by a twisted Edwards equation :-x^2 + y^2 = 1 + d x^2 y^2 d is a non-square in \mathbb_, where p is the
Mersenne prime In mathematics, a Mersenne prime is a prime number that is one less than a power of two. That is, it is a prime number of the form for some integer . They are named after Marin Mersenne, a French Minim friar, who studied them in the early 1 ...
2^-1. In order to avoid small subgroup attacks, all points are verified to lie in an ''N''- torsion subgroup of the
elliptic curve In mathematics, an elliptic curve is a smooth, projective, algebraic curve of genus one, on which there is a specified point . An elliptic curve is defined over a field and describes points in , the Cartesian product of with itself. If the ...
, where ''N'' is specified as a 246-bit
prime A prime number (or a prime) is a natural number greater than 1 that is not a product of two smaller natural numbers. A natural number greater than 1 that is not prime is called a composite number. For example, 5 is prime because the only ways ...
dividing the
order Order, ORDER or Orders may refer to: * A socio-political or established or existing order, e.g. World order, Ancien Regime, Pax Britannica * Categorization, the process in which ideas and objects are recognized, differentiated, and understood ...
of the group. The curve is equipped with two nontrivial
endomorphism In mathematics, an endomorphism is a morphism from a mathematical object to itself. An endomorphism that is also an isomorphism is an automorphism. For example, an endomorphism of a vector space is a linear map , and an endomorphism of a g ...
s: \psi related to the p-power
Frobenius map In commutative algebra and field theory, the Frobenius endomorphism (after Ferdinand Georg Frobenius) is a special endomorphism of commutative rings with prime characteristic , an important class that includes finite fields. The endomorphism m ...
, and \phi, a low degree efficiently computable endomorphism (see
complex multiplication In mathematics, complex multiplication (CM) is the theory of elliptic curves ''E'' that have an endomorphism ring larger than the integers. Put another way, it contains the theory of elliptic functions with extra symmetries, such as are visible wh ...
).


Cryptographic properties


Security

The currently best known
discrete logarithm In mathematics, for given real numbers a and b, the logarithm \log_b(a) is a number x such that b^x=a. Analogously, in any group G, powers b^k can be defined for all integers k, and the discrete logarithm \log_b(a) is an integer k such that b^k=a ...
attack is the generic Pollard's rho algorithm, requiring about 2^ group operations on average. Therefore, it typically belongs to the 128 bit security level. In order to prevent
timing attack In cryptography, a timing attack is a side-channel attack in which the attacker attempts to compromise a cryptosystem by analyzing the time taken to execute cryptographic algorithms. Every logical operation in a computer takes time to execute, an ...
s, all group operations are done in constant time, i.e. without disclosing information about key material.


Efficiency

Most cryptographic primitives, and most notably ECDH, require fast computation of scalar multiplication, i.e. for a point P on the curve and an integer k, which is usually thought as distributed uniformly at random over \. Since we look at a
prime A prime number (or a prime) is a natural number greater than 1 that is not a product of two smaller natural numbers. A natural number greater than 1 that is not prime is called a composite number. For example, 5 is prime because the only ways ...
order cyclic subgroup, one can write scalars \lambda_\psi, \lambda_\phi such that \psi(P) = lambda_\psi and \phi(P) = lambda_\phi for every point P in the ''N''-torsion subgroup. Hence, for a given k we may write :k = a_1 + a_2 \lambda_\phi + a_3 \lambda_\psi + a_4 \lambda_\phi\lambda_\psi \pmod N If we find small a_i, we may compute quickly by utilizing the implied equation : = _1 + _2\phi(P) + _3\psi(P) + _4\phi(\psi(P)) Babai rounding technique is used to find small a_i. For FourQ it turns that one can guarantee an efficiently computable solution with a_i < 2^. Moreover, as the characteristic of the field is a
Mersenne prime In mathematics, a Mersenne prime is a prime number that is one less than a power of two. That is, it is a prime number of the form for some integer . They are named after Marin Mersenne, a French Minim friar, who studied them in the early 1 ...
, modulations can be carried efficiently. Both properties (four dimensional decomposition and Mersenne prime characteristic), alongside usage of fast multiplication formulae ( extended twisted Edwards coordinates), make FourQ the currently fastest elliptic curve for the 128 bit security level.


Uses

FourQ is implemented in the cryptographic librar
CIRCL
published by
Cloudflare Cloudflare, Inc., is an American company that provides content delivery network services, cybersecurity, DDoS mitigation, wide area network services, reverse proxies, Domain Name Service, ICANN-accredited domain registration, and other se ...
.


See also

*
Elliptic-curve cryptography Elliptic-curve cryptography (ECC) is an approach to public-key cryptography based on the algebraic structure of elliptic curves over finite fields. ECC allows smaller keys to provide equivalent security, compared to cryptosystems based on modula ...
* Curve25519 *
Curve448 In cryptography, Curve448 or Curve448-Goldilocks is an elliptic curve potentially offering 224 bits of security and designed for use with the elliptic-curve Diffie–Hellman (ECDH) key agreement scheme. History Developed by Mike Hamburg of Rambus ...


References


External links


Reference implementation by Microsoft
{{Microsoft FOSS Elliptic curve cryptography Microsoft free software Software using the MIT license