XTR

Last updated

In cryptography, XTR is an algorithm for public-key encryption. XTR stands for 'ECSTR', which is an abbreviation for Efficient and Compact Subgroup Trace Representation. It is a method to represent elements of a subgroup of a multiplicative group of a finite field. To do so, it uses the trace over to represent elements of a subgroup of .

Contents

From a security point of view, XTR relies on the difficulty of solving Discrete Logarithm related problems in the full multiplicative group of a finite field. Unlike many cryptographic protocols that are based on the generator of the full multiplicative group of a finite field, XTR uses the generator of a relatively small subgroup of some prime order of a subgroup of . With the right choice of , computing Discrete Logarithms in the group, generated by , is, in general, as hard as it is in and thus cryptographic applications of XTR use arithmetics while achieving full security leading to substantial savings both in communication and computational overhead without compromising security. Some other advantages of XTR are its fast key generation, small key sizes and speed.

Fundamentals of XTR

XTR uses a subgroup, commonly referred to as XTR subgroup or just XTR group, of a subgroup called XTR supergroup, of the multiplicative group of a finite field with elements. The XTR supergroup is of order , where p is a prime such that a sufficiently large prime q divides . The XTR subgroup has now order q and is, as a subgroup of , a cyclic group with generator g. The following three paragraphs will describe how elements of the XTR supergroup can be represented using an element of instead of an element of and how arithmetic operations take place in instead of in .

Arithmetic operations in

Let p be a prime such that p  2 mod 3 and p2 - p + 1 has a sufficiently large prime factor q. Since p2  1 mod 3 we see that p generates and thus the third cyclotomic polynomial is irreducible over . It follows that the roots and form an optimal normal basis for over and

Considering that p2 mod 3 we can reduce the exponents modulo 3 to get

The cost of arithmetic operations is now given in the following Lemma labeled Lemma 2.21 in "An overview of the XTR public key system": [1]

Lemma

Traces over

The trace in XTR is always considered over . In other words, the conjugates of over are and and the trace of is their sum:

Note that since

Consider now the generator of the XTR subgroup of a prime order . Remember that is a subgroup of the XTR supergroup of order , so . In the following section we will see how to choose and , but for now it is sufficient to assume that . To compute the trace of note that modulo we have

and

and thus

The product of the conjugates of equals , i.e., that has norm 1.

The crucial observation in XTR is that the minimal polynomial of over

simplifies to

which is fully determined by . Consequently, conjugates of , as roots of the minimal polynomial of over , are completely determined by the trace of . The same is true for any power of : conjugates of are roots of polynomial

and this polynomial is completely determined by .

The idea behind using traces is to replace in cryptographic protocols, e.g. the Diffie–Hellman key exchange by and thus obtaining a factor of 3 reduction in representation size. This is, however, only useful if there is a quick way to obtain given . The next paragraph gives an algorithm for the efficient computation of . In addition, computing given turns out to be quicker than computing given . [1]

Algorithm for the quick computation of given

A. Lenstra and E. Verheul give this algorithm in their paper titled The XTR public key system in. [2] All the definitions and lemmas necessary for the algorithm and the algorithm itself presented here, are taken from that paper.

Definition For c in define

Definition Let denote the, not necessarily distinct, roots of in and let be in . Define

Properties of and

  1. Either all have order dividing and or all are in . In particular, is irreducible if and only if its roots have order diving and .
  2. is reducible over if and only if

Lemma Let be given.

  1. Computing takes two multiplication in .
  2. Computing takes four multiplication in .
  3. Computing takes four multiplication in .
  4. Computing takes four multiplication in .

Definition Let .

Algorithm 1 for computation of given and

and if n is odd and otherwise. Let and compute using the Lemma above and . Let further
with and . For in succession, do the following:
  • If , use to compute .
  • If , use to compute .
  • Replace by .

When these iterations finish, and . If n is even use to compute .

Parameter selection

Finite field and subgroup size selection

In order to take advantage of the above described representations of elements with their traces and furthermore ensure sufficient security, that will be discussed below, we need to find primes and , where denotes the characteristic of the field with and is the size of the subgroup, such that divides .

We denote with and the sizes of and in bits. To achieve security comparable to 1024-bit RSA, we should choose about 1024, i.e. and can be around 160.

A first easy algorithm to compute such primes and is the next Algorithm A:

Algorithm A

  1. Find such that is a -bit prime.
  2. Find such that is a -bit prime with .
Correctness of Algorithm A:
It remains to check that because all the other necessary properties are obviously satisfied per definition of and . We easily see that which implies that .

Algorithm A is very fast and can be used to find primes that satisfy a degree-two polynomial with small coefficients. Such lead to fast arithmetic operations in . In particular if the search for is restricted to , which means looking for an such that both are prime and such that , the primes have this nice form. Note that in this case must be even and .

On the other hand, such may be undesirable from a security point of view because they may make an attack with the Discrete Logarithm variant of the Number Field Sieve easier.

The following Algorithm B doesn't have this disadvantage, but it also doesn't have the fast arithmetic modulo Algorithm A has in that case.

Algorithm B

  1. Select a -bit prime so that .
  2. Find the roots and of .
  3. Find a such that is a -bit prime with for
Correctness of Algorithm B:
Since we chose it follows immediately that (because and ). From that and quadratic reciprocity we can deduce that and exist.
To check that we consider again for and get that , since and are roots of and hence .

Subgroup selection

In the last paragraph we have chosen the sizes and of the finite field and the multiplicative subgroup of , now we have to find a subgroup of for some such that .

However, we do not need to find an explicit , it suffices to find an element such that for an element of order . But, given , a generator of the XTR (sub)group can be found by determining any root of which has been defined above. To find such a we can take a look at property 5 of here stating that the roots of have an order dividing if and only if is irreducible. After finding such we need to check if it really is of order , but first we focus on how to select such that is irreducible.

An initial approach is to select randomly which is justified by the next lemma.

Lemma:For a randomly selected the probability that is irreducible is about one third.

Now the basic algorithm to find a suitable is as follows:

Outline of the algorithm

  1. Pick a random .
  2. If is reducible, then return to Step 1.
  3. Use Algorithm 1 to compute .
  4. If is not of order , return to Step 1.
  5. Let .

It turns out that this algorithm indeed computes an element of that equals for some of order .

More details to the algorithm, its correctness, runtime and the proof of the Lemma can be found in "An overview of the XTR public key system" in. [1]

Cryptographic schemes

In this section it is explained how the concepts above using traces of elements can be applied to cryptography. In general, XTR can be used in any cryptosystem that relies on the (subgroup) Discrete Logarithm problem. Two important applications of XTR are the Diffie–Hellman key agreement and the ElGamal encryption. We will start first with Diffie–Hellman.

XTR-DH key agreement

We suppose that both Alice and Bob have access to the XTR public key data and intend to agree on a shared secret key . They can do this by using the following XTR version of the Diffie–Hellman key exchange:

  1. Alice picks randomly with , computes with Algorithm 1 and sends to Bob.
  2. Bob receives from Alice, selects at random with , applies Algorithm 1 to compute and sends to Alice.
  3. Alice receives from Bob, computes with Algorithm 1 and determines based on .
  4. Bob analogously applies Algorithm 1 to compute and also determines based on .

XTR ElGamal encryption

For the ElGamal encryption we suppose now that Alice is the owner of the XTR public key data and that she has selected a secret integer , computed and published the result. Given Alice's XTR public key data , Bob can encrypt a message , intended for Alice, using the following XTR version of the ElGamal encryption:

  1. Bob selects randomly a with and computes with Algorithm 1 .
  2. Bob next applies Algorithm 1 to compute .
  3. Bob determines a symmetric encryption key based on .
  4. Bob uses an agreed upon symmetric encryption method with key to encrypt his message , resulting in the encryption .
  5. Bob sends to Alice.

Upon receipt of , Alice decrypts the message in the following way:

  1. Alice computes .
  2. Alice determines the symmetric key based on .
  3. Alice uses the agreed upon symmetric encryption method with key to decrypt , resulting in the original message .

The here described encryption scheme is based on a common hybrid version of the ElGamal encryption, where the secret key is obtained by an asymmetric public key system and then the message is encrypted with a symmetric key encryption method Alice and Bob agreed to.

In the more traditional ElGamal encryption the message is restricted to the key space, which would here be , because . The encryption in this case is the multiplication of the message with the key, which is an invertible operation in the key space .

Concretely this means if Bob wants to encrypt a message , first he has to convert it into an element of and then compute the encrypted message as . Upon receipt of the encrypted message Alice can recover the original message by computing , where is the inverse of in .

Security

In order to say something about the security properties of the above explained XTR encryption scheme, first it is important to check the security of the XTR group, which means how hard it is to solve the Discrete Logarithm problem there. The next part will then state the equivalency between the Discrete Logarithm problem in the XTR group and the XTR version of the discrete logarithm problem, using only the traces of elements.

Discrete logarithms in a general

Let now be a multiplicative group of order . The security of the Diffie–Hellman protocol in relies on the Diffie–Hellman (DH) problem of computing . We write . There are two other problems related to the DH problem. The first one is the Diffie–Hellman Decision (DHD) problem to determine if for given and the second one is the Discrete Logarithm (DL) problem to find for a given .

The DL problem is at least as difficult as the DH problem and it is generally assumed that if the DL problem in is intractable, then so are the other two.

Given the prime factorization of the DL problem in can be reduced to the DL problem in all subgroups of with prime order due to the Pohlig–Hellman algorithm. Hence can safely be assumed to be prime.

For a subgroup of prime order of the multiplicative group of an extension field of for some , there are now two possible ways to attack the system. One can either focus on the whole multiplicative group or on the subgroup. To attack the multiplicative group the best known method is the Discrete Logarithm variant of the Number Field Sieve or alternatively in the subgroup one can use one of several methods that take operations in , such as Pollard's rho method.

For both approaches the difficulty of the DL problem in depends on the size of the minimal surrounding subfield of and on the size of its prime order . If itself is the minimal surrounding subfield of and is sufficiently large, then the DL problem in is as hard as the general DL problem in .

The XTR parameters are now chosen in such a way that is not small, is sufficiently large and cannot be embedded in a true subfield of , since and is a divisor of , but it does not divide and thus cannot be a subgroup of for . It follows that the DL problem in the XTR group may be assumed as hard as the DL problem in .

Security of XTR

Cryptographic protocols that are based on Discrete Logarithms can use many different types of subgroups like groups of points of elliptic curves or subgroups of the multiplicative group of a finite field like the XTR group. As we have seen above the XTR versions of the Diffie–Hellman and ElGamal encryption protocol replace using elements of the XTR group by using their traces. This means that the security of the XTR versions of these encryption schemes is no longer based on the original DH, DHD or DL problems. Therefore, the XTR versions of those problems need to be defined and we will see that they are equivalent (in the sense of the next definition) to the original problems.

Definitions:

After introducing the XTR versions of these problems the next theorem is an important result telling us the connection between the XTR and the non-XTR problems, which are in fact equivalent. This implies that the XTR representation of elements with their traces is, as can be seen above, faster by a factor of 3 than the usual representation without compromising security.

TheoremThe following equivalencies hold:

i. The XTR-DL problem is (1,1)-equivalent to the DL problem in .
ii. The XTR-DH problem is (1,2)-equivalent to the DH problem in .
iii. The XTR-DHD problem is (3,2)-equivalent to the DHD problem in .

This means that an algorithm solving either XTR-DL, XTR-DH or XTR-DHD with non-negligible probability can be transformed into an algorithm solving the corresponding non-XTR problem DL, DH or DHD with non-negligible probability and vice versa. In particular part ii. implies that determining the small XTR-DH key (being an element of ) is as hard as determining the whole DH key (being an element of ) in the representation group .

Related Research Articles

<span class="mw-page-title-main">BQP</span> Computational complexity class of problems

In computational complexity theory, bounded-error quantum polynomial time (BQP) is the class of decision problems solvable by a quantum computer in polynomial time, with an error probability of at most 1/3 for all instances. It is the quantum analogue to the complexity class BPP.

In mathematics, a finite field or Galois field is a field that contains a finite number of elements. As with any field, a finite field is a set on which the operations of multiplication, addition, subtraction and division are defined and satisfy certain basic rules. The most common examples of finite fields are given by the integers mod p when p is a prime number.

In mathematics, especially in the area of abstract algebra known as combinatorial group theory, the word problem for a finitely generated group G is the algorithmic problem of deciding whether two words in the generators represent the same element. More precisely, if A is a finite set of generators for G then the word problem is the membership problem for the formal language of all words in A and a formal set of inverses that map to the identity under the natural map from the free monoid with involution on A to the group G. If B is another finite generating set for G, then the word problem over the generating set B is equivalent to the word problem over the generating set A. Thus one can speak unambiguously of the decidability of the word problem for the finitely generated group G.

Shor's algorithm is a quantum computer algorithm for finding the prime factors of an integer. It was developed in 1994 by the American mathematician Peter Shor.

In mathematics, a presentation is one method of specifying a group. A presentation of a group G comprises a set S of generators—so that every element of the group can be written as a product of powers of some of these generators—and a set R of relations among those generators. We then say G has presentation

Spectral methods are a class of techniques used in applied mathematics and scientific computing to numerically solve certain differential equations. The idea is to write the solution of the differential equation as a sum of certain "basis functions" and then to choose the coefficients in the sum in order to satisfy the differential equation as well as possible.

Multi-task learning (MTL) is a subfield of machine learning in which multiple learning tasks are solved at the same time, while exploiting commonalities and differences across tasks. This can result in improved learning efficiency and prediction accuracy for the task-specific models, when compared to training the models separately. Early versions of MTL were called "hints".

KCDSA is a digital signature algorithm created by a team led by the Korea Internet & Security Agency (KISA). It is an ElGamal variant, similar to the Digital Signature Algorithm and GOST R 34.10-94. The standard algorithm is implemented over , but an elliptic curve variant (EC-KCDSA) is also specified.

<span class="mw-page-title-main">Schönhage–Strassen algorithm</span> Multiplication algorithm

The Schönhage–Strassen algorithm is an asymptotically fast multiplication algorithm for large integers, published by Arnold Schönhage and Volker Strassen in 1971. It works by recursively applying fast Fourier transform (FFT) over the integers modulo 2n+1. The run-time bit complexity to multiply two n-digit numbers using the algorithm is in big O notation.

<span class="mw-page-title-main">Pohlig–Hellman algorithm</span>

In group theory, the Pohlig–Hellman algorithm, sometimes credited as the Silver–Pohlig–Hellman algorithm, is a special-purpose algorithm for computing discrete logarithms in a finite abelian group whose order is a smooth integer.

<span class="mw-page-title-main">Direct product of groups</span>

In mathematics, specifically in group theory, the direct product is an operation that takes two groups G and H and constructs a new group, usually denoted G × H. This operation is the group-theoretic analogue of the Cartesian product of sets and is one of several important notions of direct product in mathematics.

The time-evolving block decimation (TEBD) algorithm is a numerical scheme used to simulate one-dimensional quantum many-body systems, characterized by at most nearest-neighbour interactions. It is dubbed Time-evolving Block Decimation because it dynamically identifies the relevant low-dimensional Hilbert subspaces of an exponentially larger original Hilbert space. The algorithm, based on the Matrix Product States formalism, is highly efficient when the amount of entanglement in the system is limited, a requirement fulfilled by a large class of quantum many-body systems in one dimension.

In computational algebra, the Cantor–Zassenhaus algorithm is a method for factoring polynomials over finite fields.

<span class="mw-page-title-main">Online machine learning</span> Method of machine learning

In computer science, online machine learning is a method of machine learning in which data becomes available in a sequential order and is used to update the best predictor for future data at each step, as opposed to batch learning techniques which generate the best predictor by learning on the entire training data set at once. Online learning is a common technique used in areas of machine learning where it is computationally infeasible to train over the entire dataset, requiring the need of out-of-core algorithms. It is also used in situations where it is necessary for the algorithm to dynamically adapt to new patterns in the data, or when the data itself is generated as a function of time, e.g., stock price prediction. Online learning algorithms may be prone to catastrophic interference, a problem that can be addressed by incremental learning approaches.

In cryptography, Learning with errors (LWE) is a mathematical problem that is widely used in cryptography to create secure encryption algorithms. It is based on the idea of representing secret information as a set of equations with errors. In other words, LWE is a way to hide the value of a secret by introducing noise to it. In more technical terms, it refers to the computational problem of inferring a linear -ary function over a finite ring from given samples some of which may be erroneous. The LWE problem is conjectured to be hard to solve, and thus to be useful in cryptography.

In discrete mathematics, ideal lattices are a special class of lattices and a generalization of cyclic lattices. Ideal lattices naturally occur in many parts of number theory, but also in other areas. In particular, they have a significant place in cryptography. Micciancio defined a generalization of cyclic lattices as ideal lattices. They can be used in cryptosystems to decrease by a square root the number of parameters necessary to describe a lattice, making them more efficient. Ideal lattices are a new concept, but similar lattice classes have been used for a long time. For example, cyclic lattices, a special case of ideal lattices, are used in NTRUEncrypt and NTRUSign.

Coppersmith's attack describes a class of cryptographic attacks on the public-key cryptosystem RSA based on the Coppersmith method. Particular applications of the Coppersmith method for attacking RSA include cases when the public exponent e is small or when partial knowledge of a prime factor of the secret key is available.

In mathematics, specifically group theory, a descendant tree is a hierarchical structure that visualizes parent-descendant relations between isomorphism classes of finite groups of prime power order , for a fixed prime number and varying integer exponents . Such groups are briefly called finitep-groups. The vertices of a descendant tree are isomorphism classes of finite p-groups.

Non-commutative cryptography is the area of cryptology where the cryptographic primitives, methods and systems are based on algebraic structures like semigroups, groups and rings which are non-commutative. One of the earliest applications of a non-commutative algebraic structure for cryptographic purposes was the use of braid groups to develop cryptographic protocols. Later several other non-commutative structures like Thompson groups, polycyclic groups, Grigorchuk groups, and matrix groups have been identified as potential candidates for cryptographic applications. In contrast to non-commutative cryptography, the currently widely used public-key cryptosystems like RSA cryptosystem, Diffie–Hellman key exchange and elliptic curve cryptography are based on number theory and hence depend on commutative algebraic structures.

<span class="mw-page-title-main">Multiple kernel learning</span> Set of machine learning methods

Multiple kernel learning refers to a set of machine learning methods that use a predefined set of kernels and learn an optimal linear or non-linear combination of kernels as part of the algorithm. Reasons to use multiple kernel learning include a) the ability to select for an optimal kernel and parameters from a larger set of kernels, reducing bias due to kernel selection while allowing for more automated machine learning methods, and b) combining data from different sources that have different notions of similarity and thus require different kernels. Instead of creating a new kernel, multiple kernel algorithms can be used to combine kernels already established for each individual data source.

References

  1. 1 2 3 Lenstra, Arjen K.; Verheul, Eric R. "An overview of the XTR public key system" (PDF). CiteSeerX   10.1.1.104.2847 . Archived from the original (PDF) on April 15, 2006. Retrieved 2008-03-22.{{cite journal}}: Cite journal requires |journal= (help)
  2. Lenstra, Arjen K.; Verheul, Eric R. "The XTR public key system". CiteSeerX   10.1.1.95.4291 .{{cite journal}}: Cite journal requires |journal= (help)