Security Analysis of MOR using GL(2,R) ×
θ
ZZ
n
Christian Tobias
Justus Liebig University Giessen, Department of Mathematics
Arndtstrasse 2, 35392, Germany
Abstract. This paper cryptanalyses the MOR cryptosystem [6] when
the group GL(2,R) ×
θ
ZZ
n
proposed in [7] is used.
We show generic attacks on the system that work with every ring R.For
a concrete choice of R even stronger attacks may be possible.
Key words: MOR cryptosystem, cryptanalysis, conjugacy problem
1 Introduction
In 2001 Paeng, Ha, Kim, Chee and Park proposed a new cryptosystem based
on the difficulty of the discrete logarithm problem in the inner automorphism
group Inn(G)ofanon-abeliangroupG [6]. Later this system was named MOR
cryptosystem [7].
Theusednon-abeliangroupG has to be chosen very carefully not to under-
mine the security of the system. The first proposal for G was the semi-direct
product group SL(2,ZZ
p
) ×
θ
ZZ
p
(see [6]). The authors themselves showed the
interrelation between MOR using SL(2,ZZ
p
)×
θ
ZZ
p
and MOR using SL(2,ZZ
p
).
Since the conjugacy and the special conjugacy problem can be efficiently solved
in SL(2,ZZ
p
), the security of MOR using SL(2,ZZ
p
) ×
θ
ZZ
p
could be reduced to
the hardness of the discrete logarithm problem in SL(2,ZZ
p
) (see [7]).
In 2003 a detailed analysis of MOR using SL(2,ZZ
p
) ×
θ
ZZ
p
[8] was published.
TheecientmodesofMORusingSL(2,ZZ
p
) ×
θ
ZZ
p
proved to be extremely
vulnerable to the presented attacks. In some cases an attacker is able to gain
information equivalent to the secret key.
In [7] Paeng, Kwon, Ha and Kim described how to construct a semi-direct prod-
uct group GL(2,R) ×
θ
ZZ
n
from a given ring isomorphism Φ : R R and
proposed to use this group for the MOR cryptosystem. The purpose of this arti-
cle is to evaluate the level of security provided by MOR using GL(2,R) ×
θ
ZZ
n
.
Our analysis focusses on the impact of the hardness of the computational Diffie-
Hellman and the discrete logarithm problem in <Φ>on the security of MOR
using GL(2,R) ×
θ
ZZ
n
. We show that if the computational Diffie-Hellman prob-
lem can be solved efficiently in <Φ>, then the efficient modes of MOR using
GL(2,R) ×
θ
ZZ
n
are vulnerable to chosen-ciphertext attacks. Furthermore, if
even the discrete logarithm problem can be solved efficiently in <Φ>,thenthe
secret key can be (partly) calculated from the public parameters.
The rest of this paper is organized as follows. In section 2 needed notations
Tobias C. (2004).
Security Analysis of MOR using GL(2, R) ×Îÿ ZZ n.
In Proceedings of the 2nd International Workshop on Security in Information Systems, pages 170-179
DOI: 10.5220/0002671201700179
Copyright
c
SciTePress
2
and definitions are described and the MOR cryptosystem is introduced. Sec-
tion 3 shows how to construct a semi-direct product group GL(2,R) ×
θ
ZZ
n
given a ring isomorphism Φ : R R and how to apply this group to the
MOR cryptosystem. We further demonstrate that the discrete logarithm prob-
lem in Inn(GL(2,R) ×
θ
ZZ
n
) can be reduced to the discrete logarithm problem
in <Φ>. In section 4 we show that MOR using GL(2,R)×
θ
ZZ
n
is vulnerable to
chosen ciphertext attacks if the computational Diffie-Hellman problem in <Φ>
can be solved efficiently. In the final section 5 the impact of the presented attacks
on the security of MOR using GL(2,R) ×
θ
ZZ
n
is discussed and directions for
future research are pointed out. The appendix briefly describes how to solve the
special conjugacy problem (SCP) in GL(2,R) by solving simultaneous instances
of the conjugacy problem (CP) in GL(2,R).
Related Work: The conjugacy problem is considered a hard problem in braid
groups. There is no known polynomial time algorithm which solves the decisional
or the computational conjugacy problem in braid groups. For a detailed discus-
sion of cryptography on braid groups we refer to [1, 3, 5]. Other cryptosystems
using the conjugation map on matrix groups have been published by Yamamura
[9, 10]. The systems later were broken by Blackburn and Galbraith [2].
2 Framework and Definitions
Definition 1 (Semi-Direct Product Group). Let G and H be groups and
θ : H Aut(G) be a homomorphism. The set G × H = {(g,h) | g G, h H}
together with the multiplication map
(g
1
,h
1
)(g
2
,h
2
)=(g
1
θ(h
1
)(g
2
),h
1
h
2
)
is a group, called the semi-direct product G ×
θ
H of G and H with respect to θ.
Definition 2 (The mapping Inn). Let G be a group. Then the mapping
Inn : G Aut(G)
g → Inn(g)
is given by Inn(g)(h)=ghg
1
.
We call Inn(g) an inner automorphism and Inn(G)={Inn(g) | g G} the
inner automorphism group. If G is an abelian group then Inn(g) is the identity
map for all g G and Inn(G) is trivial. Let {γ
i
} be a set of generators of G.
Since Inn(g) is a homomorphism, Inn(g) is totally specified for all m G if the
values {Inn(g)(γ
i
)} are given.
Definition 3 (center, centralizer). Let G be a group. The center Z(G) of G
is defined as Z(G):={g G | xg = gx x G}.
Let g G. The centralizer Z(g) of g is defined as Z(g):={h G | hg = gh}.
Note that Z(G)=
gG
Z(g).
171
3
In the appendix the terms ”center” and ”centralizer” are also used for rings resp.
ring elements. For a ring R and ring elements r R we define Z(R):={r R |
sr = rs s R} and Z(r):={s R | rs = sr}.
In some cases it may not be clear from the context which structure is referred
to, e.g. for g GL(2,R) M (2,R) the cenralizer Z(g)intheringM (2,R)may
be different from the centralizer Z(g) in the multiplicative group GL(2,R). In
this case the corresponding structure is added as an index, e.g. Z
M(2,R)
(g)=
{h M (2,R) | gh = hg} and Z
GL(2,R)
(g)={h GL(2,R) | gh = hg}.
Definition 4 (Conjugacy Problem). Let G be a group. For arbitrary x, y G
the conjugacy problem (CP) is to find w G such that wxw
1
= y.
Let w G be a solution of the instance (x, y) of the CP, i.e. wxw
1
= y.Then
w · Z(x) is the solution set for instance (x, y).
Definition 5 (Special Conjugacy Problem). For a given ϕ Inn(G) the
special conjugacy problem is to find an element g G satisfying Inn(g)=ϕ.
The solution set for instance Inn(g) of the special conjugacy problem is g ·Z(G).
In GL(2,ZZ
p
) the conjugacy problem is easy. To solve the special conjugacy prob-
lem in GL(2,ZZ
p
)twopairs(A
1
,Inn(A
1
)) and (A
2
,Inn(A
2
)) with A
1
/ Z(A
2
)
are needed (see [8] for details). A similar result holds for the group GL(2,R)of
invertible matrices over a commutative ring with identity R (see appendix A).
The MOR cryptosystem: MOR is an asymmetric cryptosystem with a ran-
dom value a as secret and the two mappings Inn(g)andInn(g
a
) (given as
{Inn(g)(γ
i
)} and {Inn(g
a
)(γ
i
)} for a generator set {γ
i
} of G) as corresponding
public key. The encryption process works as follows:
1. Alice expresses the plaintext m G as a product of the γ
i
.
2. Alice chooses a random b
R
ZZ
ord(Inn(g))
and computes (Inn(g
a
))
b
,i.e.
{(Inn(g
a
))
b
(γ
i
)}.
3. Alice computes E = Inn(g
ab
)(m)=(Inn(g
a
))
b
(m).
4. Alice computes Φ = Inn(g)
b
, i.e. {Inn(g
b
)(γ
i
)}.
5. Alice sends the ciphertext C =(E, Φ) to Bob.
Decryption Process:
1. Bob expresses E as a product of the γ
i
.
2. Bob computes Φ
a
, i.e. {Φ
a
(γ
i
)}.
3. Bob computes m = Φ
a
(E).
The MOR cryptosystem is very similar to the ElGamal cryptosystem [4]. The
Diffie-Hellman key establishment protocol is used to fix a common inner auto-
morphism (Inn(g))
ab
. The ciphertext of a message m G is the image of m
under Inn(g
ab
)=(Inn(g))
ab
.
In [6] no formal proof of security is given for the MOR system. If the discrete
logarithm problem is efficiently solvable in <Inn(g) >, then the secret key a can
be calculated from Inn(g),Inn(g
a
) which are part of the public key. However,
knowledge of the secret key is not necessary to attack the MOR cryptosystem
for certain non-abelian groups G (see [8] for details).
172
4
3 MOR using GL(2,R) ×
θ
ZZ
n
Let R be a commutative ring with identity and Φ : R R be a (non-trivial) ring
isomorphism. Then GL(2,R)={
a
1
a
2
a
3
a
4
M(2,R) | a
1
a
4
a
2
a
3
is invertible}
is a (multiplicative) group. A group automorphism φ is induced by Φ:
φ : GL(2,R) GL(2,R),
a
1
a
2
a
3
a
4
→
Φ(a
1
) Φ(a
2
)
Φ(a
3
) Φ(a
4
)
By setting θ(1) = φ we get a homomorphism θ : ZZ
n
Aut(GL(2,R)), i.e.
θ(k)=φ
k
:
a
1
a
2
a
3
a
4
Φ
k
(a
1
) Φ
k
(a
2
)
Φ
k
(a
3
) Φ
k
(a
4
)
We now examine MOR using the semi-direct product GL(2,R) ×
θ
ZZ
n
.
The conjugation map in GL(2,R) ×
θ
ZZ
n
:
Let (x, y), (m
1
,m
2
) G ×
θ
H. Then:
(x, y)(m
1
,m
2
)(x, y)
1
=((y)(m
1
)θ(m
2
)(x
1
),m
2
)
Applied to the group G = GL(2,R) ×
θ
ZZ
n
and homomorphism θ we get for
(x, y), (m
1
,m
2
) GL(2,R) ×
θ
ZZ
n
:
(x, y)(m
1
,m
2
)(x, y)
1
=(x · φ
y
(m
1
) · φ
m
2
(x
1
),m
2
)
The choice of Φ:
Let G = GL(2,R) ×
θ
ZZ
n
and Φ, φ and θ as defined above. Then
1. ord(Φ)=ord(φ)
2. θ(n)=Id
GL(2,R)
n 0(modord(Φ))
3. If (x, y), (x, ˆy) G,thenInn((x, y)) = Inn((x, ˆy)) y ˆy (mod ord(Φ))
4. The homomorphism θ is well-defined if and only if ord(Φ) | n.
Let (x, y) GL(2,R) ×
θ
ZZ
n
and (x, y)
ab
=(ˆx, aby (mod n)) for some ˆx
GL(2,R). Then a ciphertext of a message (m
1
,m
2
) GL(2,R) ×
θ
ZZ
n
looks as
follows:
Inn((x, y)
ab
)(m
1
,m
2
)=(ˆ
aby
(m
1
)φ
m
2
x
1
),m
2
)
The values a, b, y ZZ
n
should have no common divisor with the order of ho-
momorphism φ.Otherwiseφ
aby
is no generator of the cyclic group <φ>.This
reduces the number of possible ciphertexts for a plaintext message (m
1
,m
2
)
GL(2,R) ×
θ
ZZ
n
. To avoid this problem, we suggest to choose n prime.
173
5
Extracting φ
y
from Inn(g):
We now show that given an inner automorphism Inn(g)forsomeg =(x, y)
GL(2,R) ×
θ
ZZ
n
the group automorphism φ
y
can be calculated efficiently.
Step 1: To calculate φ
y
we make use of the fact that Φ
y
(0) = 0 and Φ
y
(1) = 1.
For a unimodular matrix m GL(2,R) (i.e. a matrix with entries only 0 and 1)
it follows that φ
y
(m)=m and we get
Inn(g)(m, 0) = (x, y)(m, 0)(x, y)
1
=(x · φ
x
(m) · φ
0
(x
1
), 0)
=(x · m · x
1
, 0)
This leads to an instance m, xmx
1
of the conjugacy problem in GL(2,R). By
solving the two instances
01
10
,
x
01
10
x
1
and
11
10
,
x
11
10
x
1
of the
conjugacy problem in GL(2,R) simultaneously the special conjugacy problem
can be solved and an element ˆx GL(2,R)withInn(x)=Innx)canbecal-
culated (see appendix A).
Step 2: For arbitrary m GL(2,R)weget
Inn(g)(m, 0) = (x, y)(m, 0)(x, y)
1
=(x · φ
y
(m) · x
1
, 0)
Since Inn(x)=Innx)weknowthatˆx
1
· x Z(GL(2,R)). The image of
martix m under φ
y
can be calculated as follows:
Innx
1
)(x · φ
y
(m) · x
1
)=(ˆx
1
x) · φ
y
(m) · x
1
x)
1
= φ
y
(m)
Using the same technique the homomorphism φ
ay
can be calculated given Inn(g
a
).
Since Inn(g)andInn(g
a
) are part of the public key, the two ring homomor-
phisms φ
y
and φ
ay
can be calculated efficiently. For the security of MOR using
GL(2,R) ×
θ
ZZ
n
it is necessary that the discrete logarithm problem is hard in
<φ>. Otherwise a (mod ord(φ)) can be calculated which gives partial infor-
mation of the secret key a.
4 Analysis of MOR using GL(2,R) ×
θ
ZZ
n
The most time consuming operations in the encryption and decryption process of
the MOR cryptosystem are the exponentiations in <Inn(g) >. The inner auto-
morphisms are given by the images of the generators γ
1
,...γ
n
of the used group
G. To calculate Inn(g
2
)(γ
i
), two steps are needed. In the first step Inn(g)(γ
i
)
has to be expressed as a product of the generators γ
i
and in the second step the
corresponding images Inn(g)(γ
i
) have to be multiplied. Since 2 (resp. 1) expo-
nentiations in <Inn(g) > have to be calculated during the encryption (resp.
decryption) process, the MOR cryptosystem in its basic form is much too inef-
ficient to be of practical interest.
Therefore a variant of MOR has been proposed [6] where the encryption expo-
nent b is used for multiple encryptions. Since the resulting encryption scheme
174
6
is deterministic, the authors of [6] recommend to use a probabilistic padding
scheme when fixing the encryption exponent.
We now show that MOR using GL(2,R) ×
θ
ZZ
n
with fixed encryption exponent
(even when the probabilistic padding scheme is used) is vulnerable to chosen
ciphertext attacks if the computational Diffie-Hellman Problem in <φ>can be
solved (efficiently). From Inn(g
a
) (which is part of the public key) and Inn(g
b
)
(which is part of the ciphertext) the homomorphisms φ
ay
and φ
by
can be com-
puted. Solving the computational Diffie-Hellman problem yields φ
aby
.
Let c =(c
1
,c
2
) GL(2,R) be a given challenge ciphertext of MOR using
GL(2,R) ×
θ
ZZ
n
. In a chosen ciphertext attack the attacker is assumed to have
access to a decryption oracle. He is allowed to send ciphertexts ˆc = c to the
oracle and gets the corresponding plaintext messages. A cryptosystem is secure
against chosen ciphertext attacks if such an attacker is not able to compute the
plaintext corresponding to c efficiently.
In our attack we make use of the fact that the encryption function Inn(g
ab
)is
an automorphism, i.e. every d =(d
1
,d
2
) GL(2,R) ×
θ
ZZ
n
is a valid ciphertext
of a (maybe unknown) message m =(m
1
,m
2
) GL(2,R) ×
θ
ZZ
n
.
Let g =(x, y) GL(2,R) ×
θ
ZZ
n
.Then(x, y)
ab
=(ˆx, aby (mod n)) for some
ˆx GL(2,R). Ciphertexts of MOR using GL(2,R) ×
θ
ZZ
n
are of the form
d =(d
1
,d
2
)=(ˆx · φ
aby
(m
1
) · φ
m
2
x
1
),m
2
)
The attack consists of two steps. In the first step an ¯x GL(2,R)withInnx)=
Innx) is computed. This element ¯x is used in the second step to decipher the
challenge ciphertext c.
Step 1: For every d
1
GL(2,R)thevalue(d
1
, 0) GL(2,R) ×
θ
ZZ
n
is a valid
ciphertext of the (unknown) message (m
1
, 0) GL(2,R) ×
θ
ZZ
n
:
(d
1
, 0) = (ˆx · φ
aby
(m
1
) · ˆx
1
, 0)
Sending (d
1
, 0) to the decryption oracle, the attacker gets the corresponding
plaintext message (m
1
, 0). Since we assumed that the attacker knows φ
aby
he is
able to compute φ
aby
(m
1
). The values φ
aby
(m
1
),d
1
x · φ
aby
(m
1
) · ˆx
1
form an
instance of the conjugacy problem in GL(2,R). Repeating this process generates
multiple simultaneous instances of the conjugacy problem in GL(2,R)whichcan
be used to solve the special conjugacy problem in GL(2,R) and get a group el-
ement ¯x GL(2,R)withInnx)=Innx) (see appendix A for details).
The oracle may not answer queries with zero as second component, because
GL(2,R) ×
θ
{0} is isomorphic to GL(2,R) and the conjugacy problem is effi-
ciently solvable in GL(2,R). In this case the attacker sends queries (d
1
,i), (
ˆ
d
1
,i)
GL(2,R) ×
θ
ZZ
n
with the same second component to the decryption oracle:
(d
1
,i)=(ˆx · φ
aby
(m
1
) · φ
i
x
1
),i)
(
ˆ
d
1
,i)=(ˆx · φ
aby
m
1
) · φ
i
x
1
),i)
175
7
With the plaintext messages (m
1
,i), m
1
,i) GL(2,R) ×
θ
ZZ
n
and homomor-
phism φ
aby
the attacker can compute φ
aby
(m
1
)· (φ
aby
m
1
))
1
= φ
aby
(m
1
· ˆm
1
1
)
and d
1
·(
ˆ
d
1
)
1
x·φ
aby
(m
1
· ˆm
1
1
)·ˆx
1
to get an instance of the CP in GL(2,R).
Step 2: Let (p
1
,p
2
) be the plaintext message encrypted in the challenge cipher-
text c =(c
1
,c
2
). Since ¯x x · z for a z Z(GL(2,R)) we get:
¯x
1
· c
1
· φ
c
2
x)=¯x
1
· x · φ
aby
(p
1
) · φ
c
2
x)) · φ
c
2
x)
= φ
aby
(p
1
) · z
1
· φ
c
2
(z)
Only one oracle query is necessary to calculate z
1
·φ
c
2
(z). The attacker chooses
a c
3
= c
1
GL(2,R)andsends(c
3
,c
2
) to the oracle. If ˆm is the answer of the
oracle, the attacker gets z
1
· φ
c
2
(z) as follows:
c
3
· (φ
c
2
x)φ
aby
m
1
x
1
)=(ˆ
aby
m)φ
c
2
x
1
)) · (φ
c
2
x)φ
aby
m
1
x
1
)
aby
m)φ
c
2
x
1
)φ
c
2
xz)φ
aby
m
1
)(ˆxz)
1
= z
1
· φ
c
2
(z)
Now the attacker can compute φ
aby
(p
1
).
Step 3: If the knowledge of φ
aby
is not sufficient to compute p
1
from φ
aby
(p
1
),
thedecryptionoracleisusedtocomputepreimagesunderφ
aby
. To obtain the
preimage of φ
aby
(p
1
) the attacker sends
(d
1
, 0) = (¯x · φ
aby
(p
1
) · ¯x
1
, 0) = (ˆx · φ
aby
(p
1
) · ˆx
1
, 0)
as query to the decryption oracle. The oracle reply equals the wanted preim-
age. If the oracle does not answer queries with zero as second component the
value ¯x · φ
aby
(p
1
) · ¯x
1
can be expressed as ¯x · φ
aby
(p
1
) · ¯x
1
= e
1
· ˆe
1
1
for
e
1
, ˆe
1
GL(2,R)and(e
1
,i)and(ˆe
1
,i) can be sent to the oracle. If a
1
and ˆa
1
are the oracle’s answers, the desired preimage is p
1
= a
1
· ˆa
1
1
(see also step 1
forasimilarargument).
Using a randomised padding scheme: In [6] the authors propose to use a
probabilistic padding scheme when fixing the encryption exponent. The plain-
text message m R is embedded in GL(2,R) by choosing a random matrix
M =
m
1
m
2
m
3
m
4
GL(2,R)withm
1
= m. After that the encryption function
Inn(g
ab
)isappliedtoM .
In [8] it has been shown that MOR using SL(2,ZZ
p
)×
θ
ZZ
n
is insecure even if the
randomised padding scheme is used: Two pairs consisting of plaintext and cor-
responding ciphertext are sufficient to calculate Inn(g
ab
). The same techniques
can be applied to step 1 of our attack to calculate an element ¯x GL(2,R)with
Innx)=Innx).
The first part of step 2 also works if the described padding scheme is used, i.e.
φ
aby
(p
1
) · z
1
· φ
c
2
(z) can be calculated. The second part of step 2 has to be
176
8
changed slightly: On input (c
3
,c
2
) the decryption oracle outputs only the (1, 1)-
component of ˆm. The other entries of matrix ˆm are not known to the attacker.
Since Z(GL(2,R)) = {c · Id | c R, c invertible},thevaluez
1
· φ
c
2
(z)isofthe
form z
1
· φ
c
2
(z)=
r 0
0 r
for an invertible r R. In particular z
1
· φ
c
2
(z)
Z(GL(2,R)). For ˆm =
ˆm
1
ˆm
2
ˆm
3
ˆm
4
we get
¯x
1
· c
3
· φ
aby
x)=(z
1
ˆx
1
) ·
aby
m)φ
c
2
x
1
)) · (φ
c
2
xz))
= φ
aby
m) · z
1
· φ
c
2
(z)
=
r · ˆm
1
r · ˆm
2
r · ˆm
3
r · ˆm
4
The value ˆm
1
can be obtained by sending (c
3
,c
2
) to the decryption oracle. If r
cannot be calculated given ˆm
1
and r · ˆm
1
this process has to be repeated with a
different value c
3
.
Step 3 also works when the randomised padding scheme is used but has to
be carried out for every single component, i.e. to compute the preimage of
φ
aby
(p
1
)=
Φ
aby
(p
11
) Φ
aby
(p
12
)
Φ
aby
(p
13
) Φ
aby
(p
14
)
step 3 is used to find preimages of d
i
GL(2,R),
1 i 4, where the (1, 1)-component of d
i
equals Φ
aby
(p
1i
).
5 Conclusion
We showed that MOR using GL(2,R) ×
θ
ZZ
n
with fixed encryption exponent
is vulnerable to chosen ciphertext attacks if the computational Diffie-Hellman
Problem is easy in <Φ>. The presented attacks still work if the randomised
padding scheme of [6] is used. They do not work if the encryption exponent b is
randomly chosen for every plaintext to be encrypted. However, in this case two
exponentiations in <Inn(g) > have to be calculated during the encryption and
one during the decryption process. The resulting cryptosystem is too inefficient
to be of practical interest.
Our results show that the hardness of the discrete logarithm problem (DLP) in
<Φ>is essential for the security of all modes of MOR (even when the encryp-
tion exponent b is chosen randomly and independently for every plaintext to be
encrypted). The DLP in <Φ>is much easier than the DLP in <Inn(g) >
(which has to be solved to calculate the secret key given the public key). It may
be more appropriate to use a variant of the ElGamal cryptosystem [4] using the
cyclic group <Φ>. The resulting cryptosystem would be provable secure and
more efficient than MOR using GL(2,R) ×
θ
ZZ
n
.
All attacks are generic attacks, i.e. they work for every ring R and every homo-
morphism Φ. For certain choices of R and Φ there may be even stronger attacks.
It is a task for future reserach to find a non-abelian group suitable for the use
with the MOR cryptosystem.
177
9
References
1. I. Anshel, M. Anshel, D. Goldfeld, ”An Algebraic Method for Public-Key Cryp-
tography”, Mathematical Research Letters, 6 (1999), pp. 287-291
2. S. Blackburn, S. Galbraith, ”Cryptanalysis of two cryptosystems based on group
action”, Advances in Cryptology - Asiacrypt 1999, LNCS 1716, pp. 52-61
3. P. Dehornoy, ”Braid-based cryptography”, Preprint, University of Caen, 2003,
http://matin.math.unicaen.fr/dehornoy/papers.html
4. T. ElGamal, ”A public key cryptosystem and a signature scheme based on discrete
logarithms”, IEEE Transactions on Information Theory, Volume 31, 1985, pp.
469-472
5. K. H. Koo, S. J. Lee, J. H. Cheon, J. W. Han, J. Kang, C. Park, ”New Public-
Key Cryptosystem Using Braid Groups”, Advances in Cryptology - Crypto 2000,
LNCS 1880, pp. 166-183
6. S.-H. Paeng, K.-C. Ha, J. H. Kim, S. Chee, C. Park, ”New Public Key Cryptosys-
tem Using Finite Non Abelian Groups”, Advances in Cryptology - Crypto 2001,
LNCS 2139, pp. 470-485
7. S.-H. Paeng, D. Kwon, K.-C. Ha, J. H. Kim, ”Improved public key cryptosys-
tem using finite non abelian groups”, IACR EPrint-Server, Report 2001/066,
http://eprint.iacr.org/2001/066
8. C. Tobias, ”Security Analysis of the MOR Cryptosystem”, 6th International
Workshop on Practice and Theory in Public Key Cryptography, PKC 2003, LNCS
2567, pp. 175-186
9. A. Yamamura, ”Public key cryptosystems using the modular group”, 1st Interna-
tional Public Key Cryptography Conference PKC 1998, LNCS 1431, pp. 203-216
10. A. Yamamura, ”A functional cryptosystem using a group action”, 4th Australian
Information Security and Privacy Conference, ACISP 1999, LNCS 1587, pp. 314-
325
A The Special Conjugacy Problem in GL(2,R)
Let Inn(g):GL(2,R) GL(2,R) be a public inner automorphism. We assume
that Inn(g) is given as a black box, i.e. an attacker is able to calculate images
under Inn(g) but does not know the used g GL(2,R). This approach assures
that our calculations are independent of the presentation of Inn(g). We now
show that the special conjugacy problem is efficiently solvable in GL(2,R).
Let B, C,X GL(2,R)andB,XBX
1
=
ˆ
B =
ˆ
b
1
ˆ
b
2
ˆ
b
3
ˆ
b
4
and C, XCX
1
=
ˆ
C =
ˆc
1
ˆc
2
ˆc
3
ˆc
4
be two simultaneous instances of the conjugacy problem in GL(2,R).
Let
ˆ
X GL(2,R) be a solution of these two instances. Then
ˆ
X = Z · X with
z
1
z
2
z
3
z
4
= Z Z(
ˆ
B) Z(
ˆ
C). By comparing the components of Z ·
ˆ
B,
ˆ
B · Z and
Z ·
ˆ
C,
ˆ
C · Z we get:
1
1
Since
ˆ
X could also be expressed as
ˆ
X = X ·
ˆ
Z for a
ˆ
Z Z(B) Z(C), the following
paragraph is also true if
ˆ
b
i
and ˆc
i
are replaced by b
i
and c
i
. In particular B
Z(C)
ˆ
B Z(
ˆ
C).
178
10
z
2
c
3
ˆ
b
2
ˆ
b
3
ˆc
2
)=0andz
3
c
3
ˆ
b
2
ˆ
b
3
ˆc
2
)=0
z
2
c
2
(
ˆ
b
1
ˆ
b
4
)
ˆ
b
2
c
1
ˆc
4
)) = 0 and z
3
c
2
(
ˆ
b
1
ˆ
b
4
)
ˆ
b
2
c
1
ˆc
4
)) = 0
z
2
c
3
(
ˆ
b
1
ˆ
b
4
)
ˆ
b
3
c
1
ˆc
4
)) = 0 and z
3
c
3
(
ˆ
b
1
ˆ
b
4
)
ˆ
b
3
c
1
ˆc
4
)) = 0
If ˆc
3
ˆ
b
2
=
ˆ
b
3
ˆc
2
c
2
(
ˆ
b
1
ˆ
b
4
)=
ˆ
b
2
c
1
ˆc
4
)and ˆc
3
(
ˆ
b
1
ˆ
b
4
)=
ˆ
b
3
c
1
ˆc
4
), then
ˆ
B Z(
ˆ
C). Therefore, were
ˆ
B,
ˆ
C GL(2,R) chosen such that
ˆ
B/ Z(
ˆ
C), one of
the equations has to be false and z
2
and z
3
are zero divisors.
If
ˆ
B,
ˆ
C GL(2,R) where chosen such that ˆc
3
ˆ
b
2
ˆ
b
3
ˆc
2
c
2
(
ˆ
b
1
ˆ
b
4
)
ˆ
b
2
c
1
ˆc
4
)or
ˆc
3
(
ˆ
b
1
ˆ
b
4
)
ˆ
b
3
c
1
ˆc
4
) is no zero divisors it further follows that z
2
= z
3
=0.If
one of the ring elements
ˆ
b
2
,
ˆ
b
3
c
2
or ˆc
3
is no zero divisor, then Z =
z
1
0
0 z
1
for a
z
1
R.SinceZ ·M = M ·Z for all M M(2,R), we get that Inn(X)=Inn(
ˆ
X),
i.e.
ˆ
X GL(2,R) is a solution of the instance Inn(X) of the special conjugacy
problem in GL(2,R).
We now show that a simultaneous solution of these two instances can be calcu-
lated efficiently. The equations XBX
1
=
ˆ
B and XCX
1
=
ˆ
C are equivalent to
XB =
ˆ
BX and XC =
ˆ
CX.IfB/ Z(C)thisyieldstoasystemofthreelinear
equations. In the presented attack in section 4 the elements
ˆ
B,
ˆ
C GL(2,R)
canbechosenfreely.If
ˆ
b
3
is invertible, the obtained system of linear equations
is equivalent to:
x
1
+
ˆ
b
4
b
1
ˆ
b
3
· x
3
b
3
ˆ
b
3
· x
4
=0
x
2
b
2
ˆ
b
3
· x
3
+
ˆ
b
4
b
4
ˆ
b
3
· x
4
=0
c
4
c
1
ˆc
3
·
ˆ
b
4
b
1
ˆ
b
3
) · x
3
(c
3
ˆc
3
·
b
3
ˆ
b
3
) · x
4
=0
For arbitrary r R this system is solved by x
1
= k
1
·r, x
2
= k
2
·r, x
3
= k
3
·r and
x
4
= k
4
·r where k
4
c
4
c
1
ˆc
3
·
ˆ
b
4
b
1
ˆ
b
3
, k
3
=(c
3
ˆc
3
b
3
ˆ
b
3
)·k, k
2
=
b
2
ˆ
b
3
·k
3
ˆ
b
4
b
4
ˆ
b
3
·k
4
and k
1
=
b
3
ˆ
b
3
· k
4
ˆ
b
4
b
1
ˆ
b
3
· k
3
.
If either
ˆ
b
3
c
3
ˆc
3
b
3
or
ˆ
b
3
c
4
c
1
) ˆc
3
(
ˆ
b
4
b
1
)isnozerodivisor,
k
1
k
2
k
3
k
4
GL(2,R)and
rk
1
rk
2
rk
3
rk
4
=
ˆrk
1
ˆrk
2
ˆrk
3
ˆrk
4
for r, ˆr R with r r, i.e. we get | R |
distinct solutions. In this case we further know that
rk
1
rk
2
rk
3
rk
4
GL(2,R)if
and only if r R is no zero divisor.
Since X GL(2,R), the equation XB =
ˆ
BX is equivalent to
ˆ
B = XBX
1
.For
an element
ˆ
X M(2,R)with
ˆ
XB =
ˆ
B
ˆ
X wegetthat(X
1
ˆ
X)B = B(X
1
ˆ
X)
holds, i.e.
ˆ
X = X · Z with Z Z
M(2,R)
(B).
Thus, the simultaneous solutions (in M(2,R)) of the equations XB =
ˆ
BX and
XC =
ˆ
CX are of the form Z · X where Z Z
M(2,R)
(
ˆ
B) Z
M(2,R)
(
ˆ
C). If
ˆ
B,
ˆ
C GL(2,R) were chosen such that Z
M(2,R)
(
ˆ
B)Z
M(2,R)
(
ˆ
C)=Z(M(2,R)),
there are | Z(M(2,R)) |=| R | many solutions, i.e. all solutions are given by
x
1
= k
1
· r, x
2
= k
2
· r, x
3
= k
3
· r and x
4
= k
4
· r with r R.
179