Baumslag G. A Course in Mathematical Cryptography 2015
Baumslag G. A Course in Mathematical Cryptography 2015
Authors
ISBN 978-3-11-037276-2
e-ISBN (PDF) 978-3-11-037277-9
e-ISBN (EPUB) 978-3-11-038616-5
Preface
4 Cryptographic Protocols
4.1 Cryptographic Protocols
4.2 Cryptographic Hash Functions
4.3 Authentication Protocols
4.4 Digital Signatures
4.5 Secret Sharing Schemes
4.5.1 The Shamir Secret Sharing Scheme
4.5.2 Alternatives for Secret Sharing Protocols
4.5.3 Verifying Secret Sharing Protocols (VSS)
4.6 Zero-Knowledge Proofs
4.7 Exercises
12 Further Applications
12.1 Finitely Presented Groups and Cryptography
12.2 Group Theory for Access Control
12.3 Public Key Control Groups
12.4 Diophantine Control Security groups
12.5 The Social Security Control Groups
12.6 Further Extensions of Diffie-Hellman and RSA
12.7 Exercises
15 Lattice-Based Cryptography
15.1 Lattice-Based Cryptography
15.2 General Cryptoprimitives
15.3 Lattices and Their Properties
15.3.1 The Geometry of Numbers
15.4 Hard Lattice Problems
15.5 Lattice Reduction and Babai’s Algorithm
15.6 Main Lattice Based Cryptosystems
15.6.1 Ajtai’s Hash Function and Cryptosystem
15.6.2 The Ajtai-Dwork Cryptosystem
15.6.3 The GGH Cryptosystem
15.6.4 NTRU Cryptosystem
15.7 Security Proofs
15.8 Exercises
Bibliography
Index
1 Basic Ideas of Cryptography
f : m → m + k (mod N).
f : m → am + b (mod N).
4,0,19,0,19,9,14,4,18.
f (n) ≡ an + b (mod N)
an1 + b = m1
an2 + b = m2.
f : v → Av + B
v → A-1(v - B).
4,0,19,0,19,9,14,4,18.
v → A-1(v - B)
(E, A), (T, A), (T, J), (O, E), (S, S).
This gives us
ZJWZFKBNJN → EATATJOESS.
Now to decode Bob applies first gB, which is his private key
that only he knows. This gives him
1.8 Exercises
1.1 Is every encryption map with a finite set of ciphertexts
surjective?
1.2 If we encrypt using a shift cipher explain why
discovering one encrypted letter will break the system?
1.3 All integers can be expressed in binary form, that is
only using digits of 0,1. Explain why in a number
theoretic cipher it is only really necessary to encrypt a
bit, that is, encrypt a 0 or a 1?
1.4 Suppose we have an encryption system and we have a
method that correctly guesses each encrypted letter
with a probability of 0.5. If we have a message 20
letters long, what is the probability of randomly
guessing the plaintext? (Randomly guessing indicates
that guessing two letters in a row are independent and
hence the probabilities multiply.)
1.5 Encrypt the message NO MORE WAR using an affine
cipher with single letter keys a = 7, b = 5.
1.6 An encryption is done letter by letter using an affine
cipher with single letter keys a, b. Using the English
alphabet so that N = 26 we find that 6 is encrypted by
23 and 15 is encrypted by 24. What are the keys a, b?
1.7 Encrypt the message NO MORE WAR using an affine
cipher on two vectors of letters and an encrypting key
Proof. We show that (1),(2) and (3) hold if the period length
is maximal. First we must have (a, n) = 1 since f is a linear
congruence generator. Further f has no fixed point because
the period length is maximal.
We show that a ≡ 3 (mod 4) is not possible if m ≥ 2.
Suppose that a ≡ 3 (mod 4) and m ≥ 2. Then a +1 ≡ 0 (mod
4) and it follows that
We now consider
Therefore
The original DES used a 64 bit block size and a 56 bit key.
This had been shown to be insecure for many applications
and there have been successful attacks on it, the first being
in 1999. Subsequently a competition was initiated to find a
secure replacement. The winner was developed by Joan
Daemen and Vincent Rijmen (see [DR]) and their method is
called the Rijndael cipher. This method is a block cipher that
proceeds with several rounds of encrypting blocks and then
mixing blocks. In 2001 the National Institute of Standards
and Technology adopted a standardization of the Rijndael
cipher, now called AES for Advanced Encryption Standard,
as the industry standard for a symmetric key encryption.
Although not universally used, it is the most widely used
symmetric key encryption method. The mathematics in AES
is done over the finite field . We briefly describe
the method. It is called a substitution-permutation cipher
and works rapidly in both software and hardware. It does
not use a Feistel network. AES has a fixed blocksize of 128
bits and a key size any multiple of 32 bits with 128 as a
minimum. It operates on a 4 × 4 array of bytes termed the
state and the calculations, as mentioned above are done in
the finite field , where q = 28. It has four basic steps: key
expansion, initial round, rounds, final round.
(1) In key expansion a set of round keys is derived from the
initial key.
(2) In the initial round each byte of the initial state is
combined with the first round key using bitwise XOR.
(3) Each round then consists of four steps.
(a) In the first step, called subbytes, each byte is
replaced by another according to a lookup table.
(b) In the second step, called shiftrows, the rows of the
state are shifted cyclically a certain number of steps.
(c) The third step, called mixcolumns, mixes the columns
of each state combining the bytes.
(d) The final step, called addroundkey, adds the
roundkey with the state via bitwise XOR.
(4) In the final round, the subbytes, shiftrows and
addroundkey are done but no column mix.
Since its adoption there have been no successful
mathematical attacks on AES. For more details see [Buc].
2.6 Exercises
2.1 We use the standard allocation
en : {0,1}4 → {0,1}4
be defined by
The plaintext is m = 1011000101001010. Calculate the
ciphertext. If n is the permutation , give the
explicit output for the ciphertext for m.
2.7 Given a linear congruence generator
and the first three values
GTJYRIKTHYLJZAFZRLHDHTN
HDNHAGZVDGVHAHFGZVDGVZR
TVMOVFUVHEOMJZDUHRLVUHRZKA
GZUYHRVTAGZVDGVHDNVDKZDVVTZNK
GTJYRIKTHYLZARLVAGZVDGVIS
NVEEMIYZDKAVGTVRGINVAGTJYRHD
HMJAZAZARLVAGZVDGVISFTVHCZDK
ISFTVHCZDKGTJYRIAJARVUARLV
BLIMVAPFWVGRZAZAGHMMVNGTJYRIMIKJ
We first make a frequency analysis letter by letter. We
obtain the following data:
Theorem (Shannon).
3.4.4 A one-time keypad has
perfectsecrecy if the keys are randomly chosen from the
uniform distribution of keys and a key is used only once.
Shannon also showed that if a key is used more than
once the perfect security is lost. A one-time pad is also not
secure against an active attacker who can change, to his
advantage, the length of the message.
Although the one-time pad is theoretically secure there
are many problems with its practical use.
(1) The one-time pad requires perfectly secure and random
keys. Hence,to be able to to use it we need a secure
method to generate random bits. Theoretically, if
pseudo-random numbers are used the perfect security
falls by the wayside.
(2) For the one-time pad, there must be secure generation
and secure transmission of the keys which must be as
long as the plaintext.
(3) A key can be used only once.
Now carry out a frequency analysis for the sets M1, M2,...,Mt
and get possible values for n1,...,nt of the keyword.
In 1920, a second test, the Friedmann test was further
developed. We assume that N =26 and the alphabet is {A,
B, C,...| but the method is entirely general. Let (an,..., an)
bea sequence oflength n of letters from the alphabet. Let n1
be the number of A's that occur, n2 the number of B's and
so on. Then:
(a) There are pairs of A’s in the sequence, pairs of
B’s and so on.
(b) There are altogether pairs of equal letters.
(c) The probability that two randomly chosen letters are
equal is therefore given by
Hence
then we say that f (x) and g(x) are of the same order of
magnitude and write
(4) If
3.6 Exercises
3.1 The table below gives the approximate statistical
frequency of occurrence of letters in the English
language. The following passage is encrypted with a
simple substitution cipher without punctuation. Use a
frequency analysis to decode it.
3.2 A text of Edgar Allen Poe from the “The Gold-Bug” is
encrypted with the Vi- genere cryptosystem using the
keyword gold. The ciphertext is
Now to decode Bob applies first gB, which is his private key
so that only he knows. This gives him
where
Notice that given any basis for the subspace V, the Gram-
Schmidt orthonormalization procedure (see [Atk]) can be
used to find an orthonormal basis for V. Hence given w ∈ W
we can algorithmically always find w*, the unique vector in
V closest to w. If a basis for V is not known and we only
have knowledge or information on proper subspace spans in
V of dimension less than t we cannot do this procedure and
any point in W can be the secret. That is, if we do not have
complete knowledge of a basis for V, we cannot apply the
closest vector theorem. Further, since given a subspace of
dimension less than t there are infinitely many subspaces of
dimension t properly containing it, there is a probability of
zero of obtaining the subspace V with only partial
knowledge.
Thus here the threshold for the access control group differs
depending on the status of the members.
A geometric method to handle this more difficult
cryptographic task can done as follows:
(1) Choose a sufficiently large finite field with p
a prime, n ≥ 1, or take K = Q.
(2) Consider the 3-space K3 and choose the point (0,0, s) on
the z-axis where s is the secret.
(3) Choose in K3 randomly a plane E which contains the
point (0,0, s) but which does not contain the z-axis at all.
(4) Choose randomly in E a straight line G which intersects
the z-axis at the point (0, 0, s).
(5) Choose randomly on G \ (0,0, s) pairwise distinct points
D1,…,Dk which are distributed to the directors.
(6) Choose randomly on E \ G pairwise distinct points V1,…,
Vt such that points of the Vi are on one straight line and
that no point Dk is on a straight line through two distinct
points Vi and Vj. The points V1,…, Vt are distributed to
the vice-directors.
This protocol then satisfies the desired conditions for the
access control groups.
(1) Any two of the directors can calculate G and hence (0,0,
s).
(2) Any three of the vice-directors can calculate E and
hence (0,0, s).
(3) Any one of the directors combined with any two of the
vice-directors can calculate E and hence (0,0, s).
by
The dealer chooses randomly a polynomial
and check if
while If ε = 1 then
4.7 Exercises
4.1 Distribute the secret 42 using the Shamir secret
sharing scheme evenly among three people such that
any two can put together the secret.
4.2 The company Ruin Invest has two directors, seven
department managers, and 87 further employees. A
valuable customer file is protected by a secret key.
Develop a procedure for the distribution of the
information about the key among the following groups
of authorized people:
(1) both directors together,
(2) one director and all seven department
managers together,
(3) one director, at least four department
managers, and also at least 11 employees.
4.3 A group of at least three employees of a company
decides to calculate their average income and then to
compare it to their own personal salaries. They are all
honest but noone wishes to reveal his salary to the
other employees. Describe a protocol to solve this
problem.
4.4 Alice and Bob want to decide who among the two of
them has the higher salary but neither wants to divulge
their salary. Describe a protocol to solve this problem.
Hint: You may assume that there is a finite number of
possible salaries.
4.5 Give a fair protocol for an electronic roulette game.
You need not deal with the settings in detail.
4.6 Let p, q ≥ 3 be two large primes and n = pq. The
integer n is odd so n = 2k +1 for some k ∈ N. Show
that
{[0],…, [n − 1]}
Solve 5x + 4 = 2 in Z6.
Example 5.3.8.
Since (5, 6) = 1 it follows that 5 is a unit in Z6. Therefore
x = 5-1(2 - 4). Now 2 - 4 = -2 = 4 in Z6. Further 5 = -1so 5-1
= -1-1 = -1. Then we have
Proof. The numbers a, 1 < a < pe with (a, pe) > 1 are
precisely the multiples of p, that is
for each a єZ, that is p\(ap - a). Hence in the ring Zp we have
ap = a and if a = 0 then ap-1 = 1.
of subgroups H1,…, Hk if
(1) each g є G can be written uniquely in the form g = h1 h2
••• hk with h є H{ for i = 1,…, k (unique up to the
ordering of the factors);
(2) hjhj = hjhj for ht є H;, hj є Hj if i = j.
Lemma 5.6.2. Let Gbea cyclic group. Then any subgroup ofG is
also cyclic.
Proof. Suppose G = (g) and H c G is a subgroup. Since G
consists of powers of g, H also consists of certain powers of
g. Let k be the least positive integer such that gk є H. We
show that H = (gk) that is H is the cyclic subgroup
generated by gk. This is clearly equivalent to showing that
every h є H must be a power of gk.
Suppose gt є H. We may assume that t > 0 and that t > k
since k is the least positive integer such that gk є H.If t < 0
work with -t. By the division algorithm we then have
If r ≠ 0 then 0 < r < k and r = t-k. Hence gr = gt-k = gtg-
k.Now gt є Handgk є Hand since H isa subgroup it follows
But this must be the whole group and hence this sum is n. □
Now let
We claim that x0 is a solution to the simultaneous
congruences and that it is unique modulo m.
Now
is a ring isomorphism.
The ā’s in the tuple are the corresponding residue classes
for each mt.
5.8 Exercises
5.1 Verify that the following are rings. Indicate which are
commutative and which have identities. Which are
integral domains?
(a) The set of rational numbers.
(b) The set of continuous functions on a closed
interval [a, b] under ordinary addition and
multiplication of functions.
(c) The set of 2 x 2 matrices with integral entries.
(d) The set n Z consisting of all integers which are
multiples of the fixed integer n.
5.2 (a) Show that in an ordered ring, squares must be
positive. Conclude that in an ordered ring with identity
the multiplicative identity must be positive.
(b) Show that the complex numbers under the
ordinary operations cannot be ordered.
5.3 Show that any ordered ring must be infinite. (Hint:
Suppose a > 0 then a + a > 0, a + a + a > 0 and
continue.)
5.4 Find the gcd and lcm of the following pairs of integers
and then express the gcd as a linear combination
(a) 78 and 30;
(b) 175 and 35;
(c) 380 and 127.
5.5 Prove that if a = qb + r then (a, b) = (b, r).
5.6 Prove that if d = (a, b) then a and b are relatively
prime.
5.7 Show that if (a, b) = c then (a2, b2) = c2. (Hint: The
easiest method is to use the fundamental theorem of
arithmetic.)
5.8 Show that an integer is divisible by 3 if and only if the
sum of its digits (in decimal expansion) is divisible by 3.
(Hint: Write out the decimal expansion and take
everything modulo 3.)
5.9 Find the multiplicative inverse if it exists
(a) of 13 in 47;
(b) of 17 in 22;
(c) of 6 in 30.
5.10 Solve the linear equations in the given rings
(a) 4x +6 = 2 in 7;
(b) 5x + 9 = 12 in 47;
(c) 3x + 18 = 27 in 40.
5.11 Find $ (n)for
(a) n = 17;
(b) n = 526;
(c) n = 138.
5.12 Determine the units and write down the group table
for the unit group U( n) for
(a) 12;
(b) 26.
5.13 Suppose that G = (g) is also cyclic of order n. Show
that the map f : G → ( n, +) given by g → 1 is actually a
group isomorphism.
5.14 For any natural number m, let (Zm, +) denote the
additive group of Zm, and let U(Zm) be the group of
units of Zm. Let n = n1 n2 … nk be a factorization of n
with pairwise relatively prime factors. Then prove that
(c)
and hence
We now show that we can realize the equation (*).
a is a quadratic residue modulo p so that a = a2 t = 1
(modp). Then
Hence
for i = 1, 2,3,4.
For the second part of the theorem we apply Theorem
6.3.1 to determine y and z. We can then apply the Chinese
Remainder Theorem to calculate x1, x2, x3, x4. □
If n = pq, with p, q distinct large odd primes, then there is
no known general probabilistic algorithm which can be
applied to check efficiently if an integer a is a quadratic
residue modulo n or not, unless the prime factors p and q
are known.
We should mention the case where p | a or q | a. Here
consider n = pq with p, q two distinct odd primes and
suppose that a eZ.
(1) If we have p | a and (a, q) = 1, or if we have q| a and (a,
p) = 1, then the congruence x2 = a (mod n) has either 0
or 2 solutions modulo n.
(2) If p | a and q | a then the congruence x2 = a (mod n)
has only the solution 0 modulo n.
(3) Let n = 2p with p > 3 and let a be an integer.
(a) If 2 | a and (a, p) = 1 then the congruence x2 = a (mod
n) has either 0or 2 solutions modulo n.
(b) If (2, a) = 1 and p|a then the congruence x2 = a (mod n)
has either 0 or 1 solution modulo n.
(c) If 2 | a and p | a then the congruence x2 = a (mod n) has
only the solution 0 modulo n.
If p and q are known in (2) and (3) then the solutions can be
calculated as in Theorem 6.3.2 by applying the Chinese
Remainder Theorem.
Example 6.4.4.
(a) Let n = 7429,x = 227,y = 210. Then x2 - y2 = n and x - y
= 17,x + y = 437. Therefore (x - y, n) = 17 is a proper
divisor of n.
(b) Let n = 253,x = 17,y = 6. Then 172 = 62 (mod 253)
andx - y =11, x + y = 23. Therefore (11, 253) = 11,
(23,253) = 23 and 253 = (23)(11).
f(t) = (t + m)2 - n
and evaluate f (a) for a eZ. We then try to find the prime
factorization
6.5.2 Pollard’sp-Algorithm
and
gx = gx0+x1p+-+xn−1p”-1 = a (*)
and get x = logg(a) this way.
Recall that gp = 1. We first determine x0.
Fromgx = awe getgp 1x = (gp 1)x° = ap”1 becausegp” = 1.
Now gpn 1 has order p and we determine
and we determine
a € {1,…,p − 1}
with
so that n is composite.
Given b, from Fermat’s Theorem we have bp = b (modp)
and hence b2p = b2 (modp). Now n − 1 = bb2−1 and since p
does not divide b2 − 1 by assumption it follows that p
divides n − 1.
Further
Therefore n − 1 is a sum of an even number of terms of
the same parity so n − 1 must be even. It follows that 2p
divides n − 1. Hence b2p − 1 is a divisor of bn-1 − 1.
However
6.7 Exercises
6.1 Use trial division to determine if any of the following
integers are prime.
(a) 10 387
(b) 269
(c) 46 411
6.2 Use the Sieve of Eratosthenes to develop a list of
primes less than 300. (Note this list could be used for
problem 6.1).
Given positive integers m, x, by a slight modification,
the Sieve of Eratosthenes can be used to determine all
the positive integers relatively prime to m and less than
or equal to x.
Here suppose we are given m andx. Letp1,…,pk be the
distinct prime factors of m arranged in ascending order,
that is p1 < p2 < ··· < pk. Next list all the positive
integers less than or equal to x as we did for the
ordinary sieve. Start with p1 and eliminate all multiples
of p1 on the list. Then successively do the same for p2
through pk. The numbers remaining on the list are
precisely those relatively prime to m that are also less
than or equal to x. If pi > x ignore this prime and all
higher primes.
6.3 Use the modified Sieve of Eratosthenes described
above to find the integers less than 100 and relatively
prime to 891.
Using the Sieve of Eratosthenes, Legendre developed a
formula to compute Nm(x), the number of integers less
than or equal to x and relatively prime to m. This is
called Legendre’s Formula for the Sieve of
Eratosthenes. Let m ∈ , x ≥ 0 then
where k is a constant.
6.6 Use the integral test for infinite series to show that
converges.
6.7 Prove that
6.12 Determine the bases b (if any) 0 < b < 14 for which
14 is a pseudoprime to the base b.
6.13 Prove Lemma 6.3.1.1: If n is a pseudoprime to the
base b1 and also a pseudoprime to the base b2 then it is
a pseudoprime to the base b1b2.
6.14 Show that 561 = 3 · 11 · 17 is the smallest Carmichael
number. (Use the Korselt criterion together with
Corollary 6.3.1.)
6.15 Define the sequence (Sn) inductively by
Let Show that u + v = 4 = S1 and uv =1.
Then use induction to show that
n−1 n−1
Sn = u2 + v2 .
also indexed by the key space. These are called the set of
decryption functions. Hence for each k ∈ K there is an
injective function fk from plaintext to ciphertext with a
corresponding key k1 and function gk : C ^ P such that gk is
the left inverse of fk.
In our previous language this means that for each k ∈ K
we have a basic cryptosystem {P, C,fk,gk }. To place further
emphasis on the key space we consider the set E consisting
of those functions fk; k ∈ K that go from P ^ C. These are
the set of encryption functions and the index k is called the
encryption key. The set D consists of the left inverse
functions and we also index these by k ∈ K. These are called
the decryption functions and the corresponding index is
called the decryption key. Hence given an encryption key e
∈ K there is another key d ∈ D where gd is the (left) inverse
offe.
Classical cryptography is called symmetric key
cryptography while public key cryptography is called
asymmetric cryptography. Within this model, we can easily
distinguish between the two. In a symmetric key
cryptosystem if the encryption key k1 is given then it is easy
to find the corresponding decryption key k2. In an
asymmetric or public key cryptosystem, even if the
encryption key is known, it is infeasible to find the
decryption key. This is of course equivalent to how it was
phrased in the short description in Section 1.5; if the
encryption function is known it is infeasible to find the left
inverse. In most public key cryptosystems the encryption
key is made public while the decryption key is secret and
known only to the communicating parties.
Notice that the key space must be fairly extensive to
prevent a potential attacker from simply doing an
exhaustive search to find the decryption key.
The basic idea in a public key cryptosystem is to have a
one-way function or trapdoor function. That is a function
which is easy to implement but very hard to invert. The
trapdoor is what needs to be known in order to invert the
function. Hence it becomes simple to encrypt a message,
but very hard, unless you know the trapdoor, to decrypt. In
the standard view of a public key system, each user has a
public key and a private key. Assume that f is a one way
function depending on a key k so that fk is a specific one
way function. Knowing fk, one can easily encrypt with this
function. However, it is a one-way function, so knowing fk it
is not feasible to find gk, the left inverse offk. Each user
then, say Alice, has two keys (fA, gA). fA is her public key
known to all users but gA, the decryption function for her fA,
is her private key known only to her. Hence anyone can
send her messages using fA but only she can decrypt them.
We will show how this is done in the next section.
Usually public key encryption systems are less efficient
than symmetric key systems. Therefore, what is used is
called a hybrid cryptosystem. Using the trapdoor function, a
key is exchanged between the communicating parties which
signals the use of some symmetric cryptosystem such as
AES. Exchanging the key to be used in a communicating
session is called a key exchange protocol. The key used or
exchanged during a session is called a session key. Usually
included in the exchange is some form of verification, that
is, that the message actually comes from the supposed
sender.
A mail slot with a locked mailbox is analogous to a public
key system. Suppose Alice’s address is known. That address
is her public key. If Bob (or any other user) wants to
communicate with her, he drops his message into the mail
slot. However, Alice alone has the key to the locked mailbox,
so only she can access the message. The mailbox key is her
private key.
Notice that to prevent an exhaustive search, the key
space must be quite large. Hence an important
consideration in devising a public key cryptosystem is the
size and storage requirements of the key space.
Now to decode Bob applies first gB, which is his private key
so that only he knows this. This gives him
Then
Theorem 7.4.6. Thr unit group Z* is cyclic if and only ifn = 2,4,
2p, pk for p an odd primr and k > 1, that is thrrr is a
primitive rlrmrntfor thrsr moduli.
Then:
then
and
and
Then:
(b) and (c) would be satisfied for instance if and are also
prime numbers. Such primes p, q are called secure prime
numbers.
Some further ideas involving the cryptanalysis of the RSA
system are:
(1) The same encrypted message should not be sent to
several receivers with different n and the same e.
(2) e and d should be sufficiently large.
(3) The prime numbers p and q should be chosen randomly
(modulo the appropriate conditions from above). The list
of possible p and q should be large.
Define
and return x = yv b.
If p = 1 (mod 4) then we obtain the b0, b1,…, bs_2 by
taking square roots in each step.
Finally at = v2b and hence
We now consider the situation n = pq with p, q two distinct
primes.
Rabin Encryption
We assume that we have made the choices for p, q and
have computed n = pq.
(1) The public key is n while the secret key is (p, q)
(2) The encryption works as follows:
If m e P then we calculate c = m2 in Zn.
Rabin Decryption
(1) We assume that we have made the choices for p, q and
have computed n = pq.
(2) Given an encrypted message c the decryption proceeds
as follows:
Calculate with the help of the algorithm described in
Theorem 7.6.3 the four square roots x[, xl, x3, x4 of c in
Zn. Then determine those x for which the plaintext
message makes sense.
7.9 Exercises
7.1 Given prime numbers p, q with q < p and n = pq. For
an RSA cryptosystem assume that p-q is very small.
Show that n can be factorized using the following
procedure:
(a) Let t eN be the smallest natural number with t >
Vn.
(b) If t2 - n is a square, that is, t2 - n = s2 for some s eN,
then p = t + s and q = t - s provides the
factorization.
(c) Otherwise take the next integer t > Vn and go back
to (b).
7.2 Use the procedure of exercise 7.1 to factorize n =
9898 828 507.
7.3 A user has the public RSA key (n, e). By a security gap,
the number $ (n) becomes known. Show that the user
has to reject the key.
(a) Explain how the secret key d can be calculated, that
is, the number d such that ed = 1 (mod$ (n)).
(b) Explain how n can be factorized.
7.4 The colleagues of a company use an RSA-
cryptosystem for their internal communication. To
simplify the encryption and decryption they only use
keys of the form (n, 3).
Let (n1,3), (n2,3), (n3,3) be three of these public keys
with pairwise coprime nx, n2, n3 e N with n = 1, i =
1,2,3. One colleague uses these three keys to encrypt a
coded message m e {1,…, min^, n2, n3} - 1}. He then
sends the secret messages cx, c2, c3 to the respective
key holders. Here the secret message c{ was calculated
with the respective public key (n;, 3) for i = 1,2,3.
Explain why in such a manner the security of the
communication is endangered. Take as an example n1 =
391, n2 = 319, n3 = 204 and c1 = 236, c2 = 44, c3 =
203.
7.5 Let (n, e) = (2047,179) be the public RSA-key. A
plaintext alphabet has the 26 letters A, B,…,Z and the
empty sign u between words. The plaintext message c
with u between words will be subdivided into double
blocks with the empty sign at the end, if necessary, to
get double blocks.
By the assignment
where r(x) = 0 or deg r(x) < deg g(x). From this we can
define the greatest common divisor or gcd of g(x), f (x) as a
monic polynomial d(x) such that d(x) | g(x), d(x) | f (x) and if
dx) is another common divisor of f (x) andg(x) then dx) |
d(x). Then just as in the integers we get the following results
(see [CFR1] for proofs).
Given f (x), g(x) ϵ F[x] then their gcd exists, is
Theorem 8.2.9.
unique and can be written as a linear combination, that is
Δ = −4a3 − 27b2
y2 = x3 + ax + b with a, b ϵ F.
: y2 = x3 + ax + b.
s2 − r3 − ar − b = 0, -3r2 − a = 0 and 2s = 0.
Δ = −4a3 − 27b2 = 4 · 27 · r6 − 4 · 27 · r6 = 0,
We will now write (F) for an elliptic curve over a field F. This
implies that the curve is smooth and the discriminant is non-
zero. We will add on a point at infinity with we will denote by
O and denote by (F) the extended curve (F) u . On the
points of the extended elliptic curve (F) we will define an
addition that will make the points form an abelian group,
called the elliptic curve group. It is on this group that we will
construct an elliptic curve cryptosystem. If the underlying
field is the reals this operation is very easily motivated by
geometry so we will do this first. From the equations that
arise in we will define the addition over any field F of
characteristic = 2,3. Elliptic curve cryptography is usually
done over a finite field.
Consider now an elliptic curve
(F) : y2 = x3 + ax + b
P1 − P2 = P1 + (-P2),
and
Hence
( 5) = 2 x 2 = V4
it follows that
( p): y2 = x3 + ax + b, a, b e p
ECES Preparation
(1) Choose a large odd prime p with p > 5 and a, b e p such
that
ϵ( p) : y2 = x3 + ax + b
is an elliptic curve.
(2) Choose an injective efficiently invertible (on the image)
map p : M ( p) from the set M of plain text units to ( p).
We describe such a choice below.
(3) Choose a point P ϵ ϵ( p).
(4) Choose a secret integer d eZ and calculate dP ϵ ( p).
V : Mx{1,…,k} p by (m,j) mk + j.
ϵ(F) : y2 = x3 + ax + b
Letf ϵ R( (F))*.
Theorem 8.5.1.
(1) We have div(f) = O if and only iff ϵ F and f = O.
(2) We havϵ deg(div(f)) = 0.
(3) A divisor D = XPeE(F) nP[P] is a principal divisor if and
only if we have deg(D) = 0 and sum(D) = O.
We now describe the Weil-pairing. Let m > 1 be a natural
number with p not a divisor of m. We call P ϵ (F) an m-
torsion point if mP = O. The point at infinity O is an m-
torsion point for all m. The m-torsion subgroup (F)[m] of
(F) is the set of all m-torsion points of (F), that is,
em : (F)[m] x (F)[m] $m c F*
8.7 Exercises
8.1 Construct fields with 4 and 9 elements explicitly. Show
their addition and multiplication tables.
8.2 Let K be a field of characteristic unequal to 2 or 3.
Given an equation of the form
with a1, a2, a3,fi2, fi3 ϵ K which transforms (*) into the
Weierstrass form
y2 = x3 + ax + b
with a, b ϵ K.
8.3 Let K be a field and K its algebraic closure. Show that
the polynomial x3 + ax + b with a, b ϵ K has a multiple
zero if and only if 4a3 + 27b2 = 0.
Take care that your argument is correct if K has
characteristic 2 or 3.
8.4 Let K be a finite field with |K| = q. Show that there are
exactly q2 −q polynomials of the form x3 + ax + b with
a, b ϵ K which have no multiple zeros in any extension
field of K.
8.5 Let y2 = x3 + x + 6bea curve over 11. Show that
(a) y2 = x3 + x +6 is an elliptic curve over 11.
(b) ( 11) is cyclic of order 13.
8.6 Let y2 = x3 + x be a curve over 5. Show that
(a) y2 = x3 + x is an elliptic curve over 5.
(b) ( 5) is isomorphic to the Klein 4-group 2 x 2.
8.7 Determine all possible groups ( 5) for elliptic curves
over 5. Give all possible orders for a group ( 5).
8.8 Let K be an algebraically closed field of characteristic
unequal to 2 or 3. Let E(K) be an elliptic curve over K.
Show that
{P ϵ E(K) | 3P = O}u O
y2 = x3 + x +1
a−1(ab) = a−1(ac)
Lemma 9.1.5.
If G is a group and g e G then (g) forms a
subgroup of G called the cyclic subgroup generated by g.
The subgroup (g) is abelian even ifGis not.
and
For a1 there are n choices for f(a1). For a2 there are only n
−1 choices since f is one-to- one. This continues down to
only one choice for an. Using the multiplication principle, the
number of choices for f and therefore the size of SA is
Theorem 9.3.14.
(a) If G = ⟨g⟩ is an infinite cyclic group then G ≅ ( , +) that
is the integers under addition.
(b) If G = ⟨g⟩ is a finite cyclic group of order n then G ≅ ( n,
+) that is the integers modulo n under addition.
It follows that for a given order there is only one cyclic group
up to isomorphism.
Notice that except for the change of letters this is the same
as the presentation for S3. The map a → r, c → f gives an
isomorphism between S3 and D3.
We can also see that D3 is isomorphic to S3 via the
following argument. Each symmetry on an equilateral
triangle permutes the vertices. Hence each symmetry on an
equilateral triangle corresponds to a permutation on 3
symbols. It follows that D3 can be considered as a subgroup
of S3. However, |D3| = 6 = |S3| and hence they must be the
same.
In general, we let Dn stand for the symmetry group of a
regular n-gon. It is called the dihedral group of order 2n.
Exactly this same type of argument used for an equilateral
triangle applies to all the dihedral groups Dn. Therefore in
general |Dn| = 2n and the group is generated generated by
a rotation r of angle — about the center of the n-gon and a
reflection f about any line of symmetry. The rotation r would
have order n so that rn = 1. The reflection f would have
order 2 so that f2 = 1. The element rf is then a reflection
about the rotated line which is also a line of symmetry.
Therefore (rf)2 = 1. Exactly as for D3 the relation (rf)2 = 1
implies that fr = r−1f = rn-1f. This allows us to always place r
terms in front of f terms in any word on r and f. Therefore
the elements of Dn are always of the form
We first show that given any set X there does exist a free
group with free basis X. Let X = {xi}i∈I be a set (possibly
empty). We will construct a group F(X) which is free with
free basis X. First let X−1 be a set disjoint from X but
bijective to X. If x{ e X then the corresponding element of
X−1 under the bijection we denote x−1 and say that x{ and
x−1 are associated. The set X−1 is called the set of formal
inverses from X and we call X u X−1 the alphabet. Elements
of the alphabet are called letters, hence a letter has the
form x1 where ∈i = ±1. A word in X is a finite sequence of
letters from the alphabet. That is a word has the form
Proof. We first show that F(X) is a group and then show that
it satisfies the universal mapping property on X. We
consider F(X) as the set of reduced words in W(X) with the
multiplication defined above. Clearly the empty word acts as
the identity element 1. If w = x/1 x.i2 • • • xe1i” and w. = x.
€i”x.“−1 • • • x. i1 then both w * w. and w. * w freely reduce
to the empty word and so w1 is the inverse of w. Therefore
each element of F(X) has an inverse. Therefore to show that
F(X) forms a group we must show that the multiplication is
associative. Let
x1 = a , x2 = bab a , x3 = b , x4 = abab , x5 = ab a .
The theorem also allows for a computation of the rank of H
given the rank of F and the index. Specifically:
The quotient
Therefore
or
Now let
Then
Reidemeister-Schreier Process
Let G, H and T be as above. Then H is generated by the set
Theorem 9.9.12.
(1) An element ofG = A *H B of finite order must be
conjugate to an element of finite order in one of the
factors. Thus a finite subgroup or more generally a
bounded subgroup must be entirely contained in a
conjugate of a factor.
(2) An abelian subgroup ofG = A *H Bis
(a) a conjugate of an abelian subgroup of A or B or
(b) a countable ascending union of conjugates of
subgroups ofH or
(c) a direct product of an infinite cyclic group and a
conjugate of a subgroup ofH.
9.10 Exercises
9.1 (a) Let G be a group and H c G. Prove that H is a
subgroup of G if and only if
(1) H = 0,
(2) H is closed with respect to the operation in G
and inverses, that is, if a, b e H then ab e H and
a−1, b−1 e H.
(b) Let G be a group and H c G and assume H is non-
empty. Prove that H is a subgroup of G if and only if
a, b e H then ab−1 e H. (This is sometimes called the
one-step subgroup test.)
(c) Show that the set of even integers forms a
subgroup under addition of the additive group of Z.
9.2 (a) Let R bea ring and let U(R) denote the set of
elements with multiplicative inverses, that is, the
set of units in R. Prove that U(R) forms a group. This
is called the unit group of R.
(b) If R is a field what is U(R)?
9.3 If F is a field show that the n x n matrices of non-zero
determinant, GL(n, F), form a group and that SL(n, F),
those matrices of determinant 1, is a normal subgroup.
9.4 Let G be a group and let a e G. Let
9.11 Prove the following things about a free group (you may
assume finite rank):
(a) A free group is torsion-free that is every non-trivial
element has infinite order.
(b) Two non-trivial elements commute only if they both
are powers of a single element. (Hint: use induction
on the word lengths.)
(c) Suppose W1, W2 are two words in the generators of
F and their inverses. Then, if W1 is a cyclic
permutation of W2, they represent conjugate
elements.
9.12 Let M = PSL(2, Z) be the modular group. We saw that
with ad − bc = 1 and a, b, c, d ∈ .
and
where fj is also in F.
Step 3: Continue in this manner until we reach the identity.
The free group decomposition off is then
10.8 Exercises
10.1 Let F2 be the free group with free generating system a,
b. Show that set U = {anba2 | n ∈Z} is a free
generating system for a free subgroup of F2. This shows
that a free subgroup of rank 2 has as a subgroup a free
subgroup of countably infinite rank.
10.2 Let Fn be the free group of rank n with free generating
set X = {x1,...,xn}. Show that each conjugation
abbdceffgcba.
(b) Using your basic encryption and the algorithm
given in Problem 10.3, what is the plaintext
message for
G = 〈X; R〉 = 〈x1,…,xn; R1 = … = Rm = 1〉
γ :ℕ→ℝ
defined by
(ghl)h2 = gh1h2.
Ko-Lee Preparation
(1) We start with a platform group G. We assume that G has
a finite presentation with efficiently computable normal
forms that have good diffusion. Further the group G must
have a large collection of subgroups that commute
elementwise.
(2) We choose an element g ∊ G.
(3) We assume that Alice wants to share a common key
with Bob. Alice and Bob choose subgroups A and B that
elementwise commute. A is Alice’s subgroup and B is
Bob’s subgroup. These subgroups are kept secret and
known only to Bob and Alice, respectively.
A = {a1,…,an}, B = {b1,…,bm}
and make them public. The subgroup A is Alice’s subgroup
while the subgroup B is Bob’s subgroup.
Alice chooses a secret group word a = W(a1,..., an) in her
subgroup while Bob chooses a secret group word b =
V(b1,bm) in his subgroup. As before, for an element g ∊ G we
let NFX(g) denote the normal form for g. Alice knows her
secret word a and knows the generators bi of Bob’s
subgroup. She can then form the conjugates of the
generators of Bob’s subgroup B by her secret element a ∊ A.
That is she can compute bia = a-1bia for each bi. She then
makes public the normal forms of these conjugates
NFX(ajb) j = 1,…, n.
Notice that this is known for both Alice and Bob. Alice
knows ab = b-ab since she knows a in terms of generators ai
of her subgroup and she knows the conjugates by b since
Bob has made the conjugates of the generators of A by b
public. That is Alice knows a = W(a1,…,an) and ab = b-1ab =
W(b-1a1b,…,b-anb) = W(ab1,…,abn). Since Alice knows ab she
knows
Anshel-Anshel-Goldfeld Preparation
(1) We start with a platform group G. We assume that G has
a finite presentation with efficiently computable normal
forms that have good diffusion. Further there is a large
collection of efficiently computable subgroups
(2) We assume that Alice wants to share a common key
with Bob. Alice and Bob choose random finitely
generated subgroups of G by giving a set of generators
for each
A = {a1,…,an}, B = {b1,…,bm}
wmt = t-1s-1gmst.
(2) Bob then computes E′ = shns-1 = t-1gmnt.
(3) Since E = x-1E′x and the search conjugacy problem is
tractable, Bob may recover the element x. This element
x serves as the common secret which can be used as a
symmetric session key for secure communication.
As before, the feasibility of this scheme relies on the
assumption that products and inverses in G can be
computed efficiently as well as the assumption that the
conjugacy problem is solvable. In order to obtain Bob’s
secret elements s and n from the public information gn and
w requires solving wn = s-1gns for n and s. Hence, the
security of this scheme rests on the assumption that there is
no practical algorithm for solving the power search
conjugacy problem for G.
The final protocol is due to Shpilrain and Zapata and
depends upon the computational difficulty of solving the
word problem in groups with efficiently solvable word
problems. The protocol works as follows: We assume that
the secret is to be sent from Bob to Alice and that the secret
can be presented as a binary sequence.
(1) Alice has a pool of finite group presentations with
efficiently solvable word problems. She makes these
public. Shpilrain and Zapata suggest using small
cancellation presentations (see [MSU1]).
(2) Alice randomly chooses a particular group presentation
〈A; R〉 from her pool and alters the presentation using
C1B1WB2C2 = B1C1WC2B2.
and
b =ΔP1P2 …Pr
δ = an,n-1 ‘ … a3,2a2,1.
We then get
Theorem 11.7.8. Each braid word w ∊ Bn has the following
unique expression
w = δnA1A2 …Ak
11.10 Exercises
11.1 Let G be B20 the braid group on 19 generators σ1,…,
σ19 .Let A be the subgroup generated by σ1, σ2, σ2, σ4, σ5
and B the subgroup generated by σ16, σ17, σ18, σ19. Clearly
A and B commute elementwise.
(a) Let g = O7O12O3-1O5~2O10 and a = o14o:2σ1, b =
o1σ7σ181σ17. Compute the Garside normal forms for g, ga
= a-1ga, andgb = b-1gb.
(b) What is the secret shared key using the Ko-Lee protocol?
11.2 Let G, A and B be as in problem 11.1. Given a, b, what
is the secret sheared key using the AAG protocol?
11.3 Let PBn stand for the pure braid group on n strands.
Show that this group has a presentation with generators
11.4 Show that the pure braid group PB3 is isomorphic to the
direct product F2 xZ2.
11.5 Show that the pure braid group on n strands, n > 3,
satisfies the generic free group property.
11.6 Let Fn be the free group of rank n on the free
generating system {x^…, xn} and P ∊ Aut(Fn). Show
that ∊ Bn if and only if satisfies the following two
conditions.
(1) P (Xj) is conjugate to another generator.
(2) P (x1x2 …xn) = x1x2 …xn.
11.7 Prove that the colored Burau group is a group under
the given multiplication.
11.8 Prove that the colored Burau representation actually
preserves the braid relations and hence is a group
representation.
12 Further Applications Using Group Theory
Wreath Products
W=F≀S
Put
a, x, y, s, t
U1…, Ui,….
Et,…,Eim,
if and only if u(i) does not commute with any one of the
subgroups E, ,…, E, . In order to effect this we set u(i) = 1 if
U, is not to have access to any of the files in the database.
Otherwise we put
ui = ai1 … aim
The idea here is to show how the entry control group can
enable Alice with the ability to access any of the websites
that she is interested in without having to remember
passwords. We again use the entry control group H.
List the websites that Alice is interested in as W1,…, Wm
together with the passwords as required. Install the
information about W,, its URL and the password that Alice
wants to use to gain access. W{ is in a non-trivial subgroup
E, of F, generated by a,. For each of these websites, say
W^,…, Wt , assign what we might term the website locator
acceptor
WA = ai1 …aim.
D = H0 × H1.
Additionally
Diophantine equations
and
Here the f, (i = 1,…, 8) are integral polynomials in the
commuting variables x1,…, xn. Now suppose that there is an
augmentation e from k = Z[x1,…, xn] onto Z such that
h1,…,h256
K = (H1,…,H256)
p = p(h1,…,h256)
P = p(H1,…,H256)
defined by
and
and
freely generate a free subgroup of GL(2, Z[Gj).
Let G be a torsion-free group given by a finite presentation
on the finite set S. Let R = Z[y] be the group ring of the
group G over the ring of integral polynomials in a single
variable y. Then we have the following simple lemma:
Lemma 12.4.8. Letg € G. Then the element x = y(1 − g) is
transcendental, that is, is not the root of an integral
polynomial f (x) ifg = 1.
The subring A of R, generated by y and g, is simply a
polynomial ring over Z, in the variables y and g. The
assertion in the lemma follows from this observation.
Now let w be a word in the generators S of G. We now
introduce two matrices A(w) and B(w) in GL(2, R), the group
of 2 x 2 matrices over R:
G = F/N.
s-−t-s = t+1.
Defining relations:
An XSG-version of Diffie-Hellman
The XSGs that we have in mind all contain a variety of
subgroups which lie partly in the infinitary symmetric group
and partly outside. In particular they all contain a finitely
generated non-trivial subgroup C and a second finitely
generated abelian subgroup D, given by finite presentations
generators s, t, u, v and a free abelian subgroup A of infinite
rank. We will think of these subgroups as public. However
the structure of the groups that they generate is hidden
inside the XSG’s that contain them. Alice initiates contact
with Bob with the aid of the challenge-response protocol
discussed previously. She then selects a non-trivial word w
= w(s, t) in s and t. Then she randomly chooses h1, h2, a € A
and sends Bob h1wh2.
where
Let
be a matrix in M.
(a) Show that
and
= [f1g1 + · + fsgs | s ≥ 0, f1 ϵ
I, gj ϵ P}
Example 13.1.7. Let P = K[x, y],let σ = drl, and letI = (f1, f2)
be the polynomial ideal generated by f1 = x2 - 1 and f2 = xy
- 1. Then we have x - y = yf1 - xf2 ϵ I and therefore x = Ltσ(x
- y) ϵ Ltσ (I). Thus the inclusion (Ltσ(f1), Ltσ(f2)) c Ltσ(I) is
strict.
and thus
Based these Keys, Alice and Bob use the Polly Cracker
cryptosystem.
The following observations show that the security of this
cryptosystem relies on the difficulty of solving the 3-
colouring search problem. First we check that (ajj) is a
common zero of the polynomials in the public Key.
(1) For i = 1,..., r,we havef (aj0, a^, aj2) = aj0 + aj1 + aj2 - 1
= 0, since every vertex has precisely one colour.
(2) For i = 1,..., r and 0 < j < k < 2, we havegjjk(aj0, aj1, aj2)
= ajjajk = 0 since every vertex has precisely one colour.
(3) For i,j ϵ {1,...,r} such that (i,j) ϵ E and for every k ϵ
{0,1,2}, we have hjjk(aj0, aj1, aj2) = ajkajk = 0 because
not both vertices vj and vj have colour K.
Conversely, let us show that every common zero (c j of the
polynomials in the public Key yields a 3-colouring of r.
(4) Since cjjcjk = 0 for j = K, at most one of the numbers
{cj0, cj1, cj2} is non-zero.
(5) Since cj0 + cj1 + cj2 = 1, it follows that precisely one of
the numbers {cj0, cj1, cj2} is one and the other two are
zero.
(6) Since cjkcjk = 0 for (i, j) ϵ E, two vertices which are
connected by an edge have different colours.
for all (a1,..., an) ϵ Kn. Of course, these polynomials f1,... ,fs
are not uniquely determined. Suppose that g1,...,gs ϵ K[x1,
...,xn] are further polynomials with the property that
Example 13.3.4. Suppose that Alice and Bob are using the
RSA cryptosystem with the public Keys n = 15, e =5 and the
secret Key d = 5. (Notice that ÿ(15) = 8 and de = 1(mod 8).)
The plaintext and ciphertext units are elements of (Z/15Z)X
and will be represented by elements a0 + 2a1 + 4a2 + 8a3
with a, e {0,1}.
Then the encryption map e(a0, a1, a2, a3) = (c0, c1, c2, c3)
is determined by c0 + 2 c1 + 4c2 + 8c3 = (a0 + 2a1 + 4a2 +
8a3)5. In view of the relations a2 = a, for a:j ϵ Z2, this yields
the polynomial representation c0 = a0a1a2a3 + a0a1a2 +
a0a2 + a0a3 + a2a3 + a0 + a3
c1 = a0a1a2a3 + a0a1a2 + a0a1 a3 + a0a2a3 + a0a1 + a1 +
a2 + a3
c2 = a1a2a3 + a0a1 + a1a2 + a1a3 + a1 + a2
c3 = a0a1a2a3 + a0a1a2 + a1a2 a3 + a0a1 + a0a2 + a0a3 +
a2a3 + a3.
For instance, if Eve intercepts the ciphertext bits (c0, c1,
c2, c3) = (1,1,0,0), she can now compute a Gröbner basis of
the ideal (fj(a0, a1, a2, a3) - c | i = 0,1, 2,3} where the
polynomials fi correspond to the right-hand sides above. The
result is G = {a0 - 1, a1 - 1, a2, a3}. This corresponds to the
fact that the plaintext a0 + 2a1 + 4a2 + 8a3 = 3 encrypts to
the given ciphertext.
with at ϵ K.
(4) I/ (v1,..., vs) = 0 then append the polynomial t - a^j to G
where sj is the i-th element o/S. Delete all multiples o/t
in L and continue with step (2).
(5) Now let (v1,..., vs) = 0. Append (v1,..., vs) as a new row
to M, append t - a^j to S, append t to O, and append to L
all elements o/the set {x1t,..., xnt, y1t,..., yet} which are
not in L or in Lto (G). Then continue with step (2).
(6) Using row operations, trans/orm M into a diagonal
matrix. Mimick these row operations on the elements
o/S.
(7) Forj = 1,...,m, let/j = c^j where sj is the i-th element o/S.
Return (/1,... ,/m) and G and stop.
/1(x1,...,x„) = 0
(S)
/s(x!,...,x„) = 0.
F1(a1,...,an) = 0 (mod 2)
Fs(a1,...,an) = 0 (mod 2)
x1,...,xf
+ xn}.
(1) Reduce f1,...,fs modulo the field equations, that is, make
their terms squarefree. For i = 1,..., s, let T be the set of
terms of degree > 2 in fj and sj the number of terms inf.
(2) For i = 1,..., s, introduce a new indeterminate Kj and
write down the linear inequality Kj : Kj < Lsj/2J.
(3) For every tj ϵ Tj, introduce a new indeterminate yjj. For i
= 1,..., s, write f = £;- tj +
The following lemma provides the central step for the logical
conversion process.
13.4 Exercises
13.1 Prove that the orderings <lex and <drl defined in
Example 13.1.3 are indeed term orderings.
13.2 Define an ordering relation <rlex on Tn by letting t =
x”1 ·x”“ <rlex t = x11 ·x”“ if and only if the last non-zero
component of (a1 - fi1,...,an - fin) is negative. Show that
this reverse lexicographic ordering is a multiplicative
ordering relation, but not a well-ordering. How are the
indeterminates ordered by <rlex?
13.3 Let σ be a term ordering on Tn, and let f ϵ K[x1, ...,xn] \
{0}. Prove that the leading term ideal of the principal
ideal f} is generated by Ltσ f).
13.4 Using the term ordering σ = drl, show that the
following sets of polynomials are σ-Gröbner bases of the
ideals they generate.
(a) G1 = {x2 - 1, xy - 1, x - y, y2 - 1} in K[x, y] (see
Example 13.1.9)
(b) G2 = {y2 - x, z3 - x} in K[x, y, z]
(c) G3 = {x2 - y2, xy2 - z3, y4 - xz3} in K[x,y,z]
13.5 Generalize Example 13.2.1 to a Graph-p-Colouring
Cryptosystem, wherep > 2 is a prime. Describe a
suitable polynomial ring and the polynomials which form
Alice’s public Key.
13.6 Let K be a field which contains three solutions of x3 =
1, i.e., three cubic roots of unity. Suppose that these
cubic roots of unity represent three colours. Define a
suitable ideal in a polynomial ring K[x1, ...,xn] such that
3-colourings of a graph r = (V, E) correspond uniquely to
zeros of this ideal.
13.7 Given a graph r = (V, E), a perfect code in r is a subset
S c V such that every vertex of r is in S or joined to
precisely one element of S by an edge. For every v ϵ V,
let Nv be the neighbourhood of v, i.e., the set consisting
of v and all vertices of r which are joined to v by an
edge. The problem of finding a perfect code in r is
Known to be NP-complete.
(a) Let V = {v1,..., vr}, andletP = Z2[x1 ,...,xn]. For i =
1,..., r,welet fj = 1 - Z;eN x;-,andifdistr(v;-, vk) < 2, we
letgjk = xjxk. Show that the polynomials f gjk generate
an ideal whose zeros correspond uniquely to perfect
codes inr.
(b) Using (a), construct an instance of the Polly Cracker
Cryptosystem whose security depends on the Graph
Perfect Code search problem in r.
13.8 Suppose that Alice and Bob are using the RSA
cryptosystem with the public Keys n = 77 and e = 11,
and the secret Key d = 11. We represent an element c0
+ 2c1 + 4c2 + 8c3 + 16c4 + 32c5 + 64c6 in Z77 with cj ϵ
{0,1} by the tuple (co,...,c6)inZf.
(a) Compute polynomials in Z2[x0,...,x6] which represent
the encryption map e : —> Zf.
(b) Decrypt the ciphertext (0,1,1,1,0,1,0) by solving the
corresponding polynomial system via a Gröbner basis
calculation.
14 Non-Commutative Grobner Basis Methods
0 : K(X>/I K(Y>/J
U n Fr+s = Syz(G).
14.5 Exercises
14.1 Let X = {x1,…,xn}, and let a be a complete ordering
relation on (X) which is compatible with multiplication.
Prove that the following conditions are equivalent.
(a) The relation a is a well-ordering, i.e., every non-
empty subset of (X) has a minimal element.
(b) Every descending chain w1 >a w2 >a … in (X) is
eventually stationary.
(c) For every w ϵ (X), we have w >a 1.
14.2 Show that the length-lexicographic word ordering llex
defined in Example 14.1.4 is indeed a word ordering.
14.3 Let K be a field, let I = (x2 - xy) c K (x, y), and let a be
a word ordering on (x, y) such that x >a y. Prove that
Lwa(I) = (xyix | i > 0) (see Example 14.1.10).
14.4 Prove the Non-Commutative Division Algorithm
14.1.13. Proceed as in the proof of the commutative
case 13.1.10.
14.5 Let P = Z2(x1,…,x6), let a = llex, and let G = (g1,…,g5),
where the non-commutative polynomials gi are defined
as in Example 14.1.17. Using Buchberger’s Criterion
14.1.16, prove that G is a a-Gröbner basis of the
twosided ideal (G).
14.6 Consider the dihedral group D3 = (x, y; x3 = y2 = (xy)2
= 1) and its group ring Z2[D3] = Z2(x,y)/I,whereI = (x3 +
1, y2 + 1, (xy)2 + 1).
(a) Show that I has the llex-Gröbner basis G = {y2 + 1,
yxy + x2, yx2 + xy, xyx + y, x2y + yx, x3 + 1}.
(b) Find the shortest word representing the inverse of
x2y in D3.
14.7 Let X = {x1, …,xn} and I ϵ {1,…, n}. Show that the
ordering elim on (X) defined in Example 14.2.2 is a
word ordering and an elimination ordering for L =
{x1,…,xf}.
14.8 Work out the proof of Lemma 14.2.3.
14.9 Consider the infinite dihedral group DTO = (x, y; y2 =
(xy)2 = 1).
(a) Using the method of Remark 14.2.7, prove that the
element x ϵ DTO has infinite order.
(b) Similarly, compute the order of the element yxy in
the group D3 = (x, y; x3 = y2 = (xy)2 = 1).
14.10 Let G = (x1,…,xn;r1 = … = rm = 1) be a finitely
presented group, let Y = {y1,…, yn} be a set of further
letters such that yi represents xr1, let h1,…,hk ϵ (X, Y)
be words whose residue classes generate a subgroup H
= (h1,…, hk) of G, andletS be the subalgebra S = Z2(h1 -
1,…,hk - 1) of Z2[G]. Prove that, for a word w ϵ (X, Y),
the following conditions are equivalent.
(a) w ϵ H
(b) w - 1 ϵ S
14.11 Consider the free Q(x, y)-module F2 of rank 2 and the
module term ordering T = Pos-llex on T(F2).Let M bethe
Q(x, y)-submodule of F2 generated by g1 = x2x1e1x2 +
e2 and g2 = exx\ + x1e1. Using Buchberger’s Procedure
for Modules 14.3.9, enumerate a T-Gröbner basis of M.
Showthat G = {g1, g2, x2x^-1e1 + (-1)ke2x2k-5 | k > 3}
is a T-Gröbner basis of M.
14.12 Formulate and prove a semi-decision procedure for the
submodule membership problem in finitely generated
K(X)-submodules of Fr.
14.13 Let K be a field, let X = {x1,…,x„},andletM = (v1 ,…,vs)
and N = (u1,…, ut ) be two K(X)-submodules of the two-
sided free module Fr. Consider the inclusions »1 : Fr ^
F2r given by »1(e,-) = ei and î2 : Fr ^ F2r given by *2(ef)
= er+i. Moreover, let
Med = M in Zpq
Med = M in ℤpq.
u . v =x1y1+…+ xnyn
vol(ϕ) = λ (ϕ)
V(ℱ) = vol(ℱ)
w =t1Vl + … + tnvn
v = a1v1 + … + anvn
p = mW.
The encrypted vector p is not in L but is close to the
lattice point mW since the session key vector r is small.
To decrypt, Alice uses Babai’s algorithm with her private
key v1,…, vn which is a good basis. She finds the vector in
the lattice L close to p. Since she has a good basis and r is
small the vector she obtains is mW. She then multiplies by
W-1 to recover the plaintext message m.
In 1999 Nguyen showed that the GGH encryption scheme
has a flaw in the design of the schemes. He showed that
every ciphertext reveals information about the plaintext and
that the problem of decryption could be turned into a
special closest vector problem much easier to solve than the
general CVP.
15.8 Exercises
v = a1v1 + …+ anvn
abelian group 1
abelianization 1
active attacker 1
adaptive chosen message attack 1
AES 1
affine cipher 1
Ajtai-Dwork cryptosystem 1
Ajtai hash function 1
AKS algorithm 1
Alberti code 1
algebraic attack 1
– ciphertext-only 1
– known plaintext 1
– public key system 1
algebraic closure 1
algebraic element 1, 2
algebraic eraser method 1
algebraic extension 1
algebraically closed 1
amalgam factors 1
Artin presentation 1
associated subgroups 1
asymmetric cryptography 1
asymptotically equal 1
Atabash code 1
attack 1, 2
– length based 1
authentication 1, 2, 3
authentication protocol 1
average case complexity 1
Babai’s algorithm 1
baby step giant step algorithm 1
base 1
base field equation 1
base field ideal 1
Big O-Little o Notation 1
Blakely scheme 1
block cipher 1, 2
braid group on n strands 1
broken cryptosystem 1
Buchberger’s algorithm 1
Buchberger’s criterion 1, 2
Buchberger’s procedure 1
– for modules 1
Buchberger-Moller algorithm 1
caesar code 1
Carmichael number 1
Cayley Table 1
CCM Mode 1
characteristic of a field 1
characteristic term attack 1
Chinese Remainder Theorem 1
chosen ciphertext attack 1, 2
chosen plaintext attack 1
cipher text only attack 1
ciphertext 1
classical cryptography 1
closest vector problem 1
closest vector secret sharing protocol 1
closest vector theorem 1
code 1
collision resistant 1
combinatorial group theory 1
commutative ring 1
commutator subgroup 1
complete lattice 1
component elimination module 1
computational security 1
congruence modulo n 1
congruence motion 1
conjugacy problem 1
conjugate subgroups 1
conjugator search problem 1, 2
coprime 1
cracking problem 1
critical pair 1
cryptanalysis 1, 2, 3
cryptographic protocol 1, 2
cryptography 1, 2
– classical 1
– public key 1, 2
– symmetric key 1, 2
cryptology 1, 2
cryptosystem 1, 2
– commutative Gröbner basis 1
– Courtois toy cipher 1
– free group 2
– graph 1
– colouring 2
– graph p-colouring 1
– graph perfect code 1
– Gröbner basis 1
– Polly Cracker 1
– Polly Two 2
cuttingnumber 1
CVP 1
cyclic group 1
cyclic subgroup 1, 2
data rate 1
decision Diffie-Hellman problem 1
decryption 1
decryption key 1, 2
decryption map 1, 2
defining relator 1
degree of a divisor 1
degree of an extension 1
DES 1
diagonal ideal 1
Diffie-Hellman Key Exchange 1
Diffie-Hellman Problem 1
Diffie-Hellman zero-knowledge protocol 1
digest 1
digital envelope 1, 2
digital forgeries 1
digital signature 1, 2, 3, 4
digital signature protocol 1
digital signing algorithm 1
dihedral group 1, 2, 3
– infinite 1
discrete log problem 1, 2, 3
discrete logarithm 1
discriminant 1
division algorithm 1, 2
– non-commutative 1
divisor 1
ECB Mode 1
ECDSA 1
ECES 1
ElGamal encryption 1, 2
ElGamal Signature Method 1
elimination ideal 1
elimination ordering 1
elliptic curve 1, 2, 3
elliptic curve cryptosystem 1
elliptic curve ElGamal cryptosystem 1
elliptic curve elliptography 1
elliptic curve encryption scheme 1
elliptic curve group 1, 2
embedding degree 1
encryption 1
encryption key 1, 1
encryption map 1, 2
Enigma Machine 1
enumerative procedure 1
enveloping algebra 1
Euclidean algorithm 1
Euclidean group 1
Euler phi function 1
Euler’s Theorem 1
exhaustive search 1, 1
exponential time algorithm 1
exponential time problem 1
extension field 1
F-isomorphism 1
factor group 1
factorization problem 1
fair strategy 1
Feistel network 1
Fermat factorization method 1
Fermat’s primality test 1
Fermat’s theorem 1
field 1, 2
finite extension 1
free abelian group 1
free associative algebra 1
free basis 1
free group 1
– rank 1
free group cryptosystem 1
free length 1
free monoid 1
free part 1
free products 1, 2
free products with amalgamation 1, 2
free reduction 1
freely reduced 1
Friedman test, 1
Friedmann Coincidence Index 1
Frobenius map 1, 2
Fuchsian group 1
Fundamental Theorem of Algebra 1
Galois field 1
Garside normal form 1
gaussian heuristic 1
general linear group 1, 2
generators 1
generic case complexity 1
generic complexity 1
geometry of numbers 1
GGH cryptosystem 1
Gram-Schmidt process 1
graph 1
ground field 1
group 1, 2
– abelian 1
– cyclic 1
– finite 1
– finitely generated 1
– finitely presented 1
– finitely related 1
– generating system 1
– generators 1, 2
– infinite 1
– order 1, 2
– presentation 1, 2
– relations 1
– relator 1
group amalgams 1
group based cryptography 1
group decision problems 1
group homomorphism 1
group presentation 1, 2
group products 1
group ring 1
group table 1
Grobner basis 1, 2, 3
– partial 1
GSO 1
hadamard ratio 1
handle 1
handle reduction 1
hash function 1, 2, 3, 4
hash value 1
HFE challenge 1
HKZ algorithm 1
HNN extension 1
ideal 1
– base field 1
– diagonal 1
– elimination 1
– finitely generated 1
– leadingword 1
– left 1
– right 1
– two-sided 1
– zero set 1
ideal membership test 1, 2
indeterminate 1
index calculus method 1
industrial grade primes 1
information-theoretic security 1
integer programming attack 1
integral lattice 1
intermediate field 1
irreducible polynomial 1
isometry 1
isomorphism problem 1
iterated block cipher 1
Kasiski test 1
key exchange 1, 2
key exchange protocol 1
key generation algorithm 1
key only attack 1
key space 1
key stream 1
key transport 1, 2
keystream gemerator 1
keyword 1, 2
known message attack 1
known plaintext attack 1
Korselt citerion 1
Kronecker’s Theorem 1
Lagrange’s theorem 1
lattice 1
– determinant 1
– fundamental domain 1
– good basis 1
lattice based cryptography 1
lattice basis 1
lattice basis reduction 1
lattice redcution algorithm 1
leading coefficient 1,2,3
leading monomial 1,2
leading term 1, 2
leading term ideal 1
leading term module 1
leading word 1
leading word ideal 1
Legendre symbol 1
length based attack 1
letter 1
linear algebra attack 1,2
linear congruence generator 1
linear shift feedback generator 1
LLL algorithm 1
Lucas-Lehmer test 1
Nielsen-Schreier Theorem 1
non-commutative algebraic cryptography 1
non-commutative cryptography 1
non-deterministic polynomial time 1
normal form 1, 2
normal remainder 1, 2
normal subgroup 1
NP Complete 1
NP-hard 1
NTRU cryptosystem 1
obstruction 1
– withoutoverlap 1
one-time pad 1
one-way function 1, 2, 3, 4
order ideal 1
order of an element 1
order of magnitude 1
P=NP 1
padding 1
passive attacker 1
perfect code 1
perfect security 1
permutation 1
permutation cipher 1, 2
permutation group 1
plaintext 1
Pollard algorithm 1
Polly Cracker cryptosystem 1
polyalphabetic ciphers 1
polynomial 1
– degree 1
– logical representation 1
polynomial ring 1
– non-commutative 1
polynomial time algorithm 1
polynomial time problem 1
practical security 1
preimage resistant 1
primality test
– deterministic 1
– probabilistic 1
primality testing 1
primitive element 1, 2
principal divisor 1
principal ideal 1
private key 1
probabilistic algorithm 1, 2
probable primes 1
product cipher 1
pseudoprime 1
public key 1
public key cryptography 1, 2, 3, 4
public key encryption map 1
quadratic residue 1
quadratic sieve 1
quantum algorithm 1
quotient group 1
Rabin Cryptosystem 1
Rabin Encryption 1
Reidemeister-Schreier Process 1
relations 1
relatively prime 1
residue 1
residue class 1
Rijnadel cipher 1
ring 1
– commutative 1
root of a polynomial 1
round 1
round keys 1
RSA Algorithm 1
RSA cryptanalysis 1
RSA decryption exponent 1, 2
RSA encryption exponent 1, 2
RSA Modulus 1, 2
RSA Problem 1
RSA Protocol 1
RSA secure primes 1
RSA Signature Method 1
S-box 1
S-polynomial 1, 2
S-vector 1
SAT attack 1
secret key 1
secret sharing 1, 2
secret sharing scheme 1
security reduction 1
secutity proof 1
self-obstruction 1
semantic security 1
semi-decision procedure 1
session key 1, 2, 3
Shamir Secret Sharing Scheme 1
shift cipher 1
Shor’s algorithm 1
shortest vector problem 1
side channel attack 1
sieve 1
Sieve of Eratosthenes 1
sieving methods 1
signature 1
social security control group 1
soundness error 1
special linear group 1
splits 1
splitting field 1
SQ-universality 1
stabilizer 1
stable letters 1
standard conversion strategy 1
statistical frequency attack 1
stream cipher 1
– softwaregeneration 1
stream ciphers 1
strong pseudoprime 1
subalgebra membership problem 1
subgroup 1
– conjugate 1
substitution cipher 1
substitution-permutation network 1
subword 1
successful attack 1
summit set 1
SVP 1
syllable length 1
symmetric group 1
symmetric key cryptography 1, 2, 3
symmetry group 1
system of generators 1
syzygy module 1
– computation 1
Tate pairing 1
term 1, 2
term ordering 1
– component elimination 1
– degree reverse lexicographic 1
– lexicographic 1
– module 1
The Class NP 1
The Fermat Primality Test 1
The Modular Group 1
The MOV Algorithm 1
theoretical security 1
transcendental element 1, 2
transcendental extension 1
transposition 1
trapdoor function 1, 2, 3, 4
unit 1, 2
unit group 1, 2
vanishing ideal 1, 2
verification 1
vernam ciphers 1
Vernam key-pad 1
Vigenere code 1
Vigenere cryptosystems 1
Weierstrass form 1
Weil-pairing 1
well-ordering 1
witness 1
word 1, 2
– cyclically reduced 1
– empty 1
– length 1
– reduced 1
– trivial 1
word ordering 1
– elimination 1
– length-lexicographic 1
– lexicographic 1
word problem 1, 2
– generalized 1
worst case complexity 1, 2
XOR Operation 1
zero of a polynomial 1
zero-knowledge proof 1, 2, 3