183
Views
0
CrossRef citations to date
0
Altmetric
Research Article

On the tropical two-sided discrete logarithm and a key exchange protocol based on the tropical algebra of pairs

, &
Pages 4115-4134 | Received 12 Jan 2024, Accepted 06 Apr 2024, Published online: 23 Apr 2024

Abstract

Since the existing tropical cryptographic protocols are either susceptible to the Kotov-Ushakov attack and its generalization, or to attacks based on tropical matrix periodicity and predictive behavior, several attempts have been made to propose protocols that resist such attacks. Despite these attempts, many of the proposed protocols remain vulnerable to attacks targeting the underlying hidden problems, one of which we call the tropical two-sided discrete logarithm with shift. An illustrative case is the tropical Stickel protocol, which, when formulated with a single monomial instead of a polynomial, becomes susceptible to attacks based on solutions of the above mentioned tropical version of discrete logarithm. In this paper we will formally introduce the tropical two-sided discrete logarithm with shift, discuss how it is solved, and subsequently demonstrate an attack on a key exchange protocol based on the tropical semiring of pairs. This particular protocol is compromised due to the existence of efficient (albeit heuristic) solution of the tropical two-sided logarithm problem, and this highlights the ongoing challenges in search of a “good” key exchange protocol in tropical cryptography.

2020 Mathematics Subject Classification:

1 Introduction

Tropical cryptography is a new and promising area that seeks to transform the traditional public key exchange methods in cryptography using tropical mathematics. Grigoriev and Shpilrain [Citation5] pioneered the use of tropical algebra as an alternative framework for cryptographic protocols. In particular, they developed a tropical version of Stickel’s key exchange protocol [Citation18], the original version of which had been previously compromised by Shpilrain [Citation16] using a linear algebra attack. We also note here that Stickel’s protocol appears to be a special case of a more general protocol studied by Sidel’nikov, Cherepnev, and Yashchenko [Citation17] in early 1990s.

One of the motivations for the development of tropical cryptography came from the non-invertible nature of matrices in tropical algebra. The scarcity of invertible matrices makes the tropical implementation resistant to attacks resembling the ones faced by the original Stickel protocol (such as described in [Citation16]). However, the tropical implementation of Stickel’s protocol has been attacked by Kotov and Ushakov [Citation8]. The Kotov-Ushakov attack was further generalized in [Citation11] where it was shown how to apply the same idea to other implementations of Stickel protocol based on matrix commutativity. This has prompted the exploration of alternative ideas beyond matrix commutativity in Stickel protocols to implement tropical cryptographic protocols.

In response, Grigoriev and Shpilrain [Citation6] proposed two protocols based on tropical semi-direct product, but one of them was shown to be invalid by Isaac and Kahrobaei [Citation7] and the other was successfully attacked by the same authors as well as by [Citation14] and [Citation12]. The underlying problem that was solved and led to compromising the protocol was the tropical one-sided discrete logarithm. Subsequently, several alternative tropical protocols have been proposed that do not rely on this problem or matrix commutativity. Notably, one such protocol is based on the tropical algebra of pairs, as presented by Ahmed, Pal, and Mohan [Citation1].

The main ideas of the present paper are to formulate the problem which we call the “tropical two-sided discrete logarithm with shift” and present some heuristic methods of solving it, and then, based on a reduction of the matrix algebra over the tropical semiring of pairs to the usual tropical matrix algebra, develop some attacks on the above mentioned protocol of Ahmed, Pal, and Mohan [Citation1] and demonstrate their efficiency and success rate. More specifically, the paper is organized as follows. In Section 2 we start with some preliminaries and basic definitions, particularly those related to tropical matrix periodicity. In Section 3 we present the tropical two-sided discrete log with shift problem and two heuristic algorithms to solve it, showing their efficiency and success rate. In Section 4 we recall the tropical semiring of pairs and the implementation of Stickel protocol suggested in [Citation1]. In Section 5 we cryptanalyze this implementation using the solution of the tropical two-sided discrete log with shift problem, and present some numerical experiments showing the efficiency and performance of the attacks. Our codes have been uploaded to GitHub.Footnote1

2 Preliminaries

In this section, we present some of the standard definitions in tropical matrix algebra, for most of this part closely following Butkovič [Citation3]. Note that we use the standard notation [m]={1,,m} and [n]={1,,n} for most common index sets.

Definition 2.1

(Tropical Semiring and Tropical Matrix Algebra). We define the tropical/max-plus semiring as Rmax=(R{},,), where traditional addition + and multiplication × are replaced by tropical addition ⊕ and tropical multiplication ⊗, respectively. These new arithmetical operations are defined by xy=max{x,y} and xy=x+y for all x,yRmax.

The tropical arithmetic operations are naturally extended to include matrices and vectors. In particular, the operation Aα=αA, where αRmax,ARmaxm×n and (A)ij=aij for i[m] and j[n], is defined by (Aα)ij=(αA)ij=αaiji[m] and j[n].

The tropical addition AB of two matrices ARmaxmxn and BRmaxm×n, where (A)ij=aij and (B)ij=bij for i[m] and j[n], is defined by j[n]

The tropical multiplication of two matrices is also similar to the “traditional” algebra. Namely, we define AB for two matrices, where ARmaxmxp and BRmaxp×n, as follows: (AB)ij=k=1paikbkj=(ai1b1jai2b2jainbnj)i[m] and j[n].

Note that, despite introducing this tropical arithmetic, we will also quite often utilize the usual arithmetical operations to introduce concepts and explain arguments.

Definition 2.2

(Tropical Matrix Powers). For MRmaxn×n, the n-th tropical power of M is denoted by Mn, and is equal to Mn=MMMn times 

We now introduce elements of graph theory to define the upcoming concepts. We begin by defining the directed graph (or digraph) associated with A and recalling the definitions of cycles, strongly connected components and other related concepts.

Definition 2.3

(Digraphs, Walks and Cycles). The digraph associated with ARmaxn×n, where (A)ij=aij for i,j[n], is the pair G(A)=(NA,EA), where NA=[n] is called the set of nodes of G(A) and EA={(i,j):aij} is called the set of arcs of G(A).

A walk on GA can be defined as a sequence of nodes (i1,,im) where each (il,il+1) for l=1,,m1 is an arc. A closed walk is a walk that starts and finishes at the same node, and a cycle is any closed walk that does not contain any repeated nodes, except for the beginning node and the end node.

The tropical analogue of irreducible matrix can be now defined (closely following its classical prototype).

Definition 2.4

(Irreducibility). A matrix ARmaxn×n is called irreducible if GA is strongly connected, i.e., if for each i,j[n] there exists a walk on GA whose starting node is i and end node is j. A is called reducible if it is not irreducible.

We now introduce the concept of a maximum cycle mean, which is the value of the cycle that has the greatest average weight. We then also introduce a special subgraph of G(A) called the critical digraph of A. Formal definitions are given below.

Definition 2.5

(Maximum Cycle Mean and Critical Digraph). For ARmaxn×n, the maximum cycle mean λ(A) is defined in the usual notation as λ(A)=maxkmaxi1,,ik[n]ai1i2++aiki1k,which is the same as λ(A)=ki1,,ik[n]ai1i2aiki1k in the tropical notation.

By definition, a cycle that attains the maximum cycle mean is a critical cycle. The critical graph of A, denoted by GAc=(NAc,EAc) is the subgraph of GA which consists of all nodes and arcs of GA that belong to the critical cycles. The nodes belonging to NAc and the arcs belonging to EAc are also called critical.

The matrix inverses in tropical algebra can be defined only for a limited class of matrices, but the analogue of (IA)1 is more convenient to define.

Definition 2.6

(Kleene Star and Tropical Identity Matrix). Let MRmaxn×n have λ(M)0. The Kleene star of M is defined by M*=IMM2M(n1),where I is the tropical identity matrix, whose all diagonal entries are equal to 0 and all off-diagonal entries are equal to .

One of the key ideas of solving the discrete logarithm problems (or, more specifically, Problems 1–4 formulated below) is to use the ultimate periodicity properties of tropical matrix powers. Strictly speaking, 1) the ultimate periodicity (in the sense of Theorem 2.1) occurs with a certain shift, that is, instead of repeating themselves the powers get multiplied in the tropical sense by some scalar, 2) the ultimate periodicity does not occur for general square matrix A, but is guaranteed only under certain conditions which (at their best) only slightly generalize the irreducibility property. For simplicity, the ultimate periodicity theorem is stated below only for the irreducible case, close to the original formulation in Cohen et al. [Citation4].

Theorem 2.1

(Ultimate Periodicity of Tropical Matrix Powers [Citation4]). Let ARmaxn×n be irreducible and let λ=λ(A) be the maximum cycle mean of A. Then for some natural numbers TA and γ we have (1) A(t+γ)=λγAt=γ·λ+AttTA(1)

Below we will also use the more particular ultimate periodicity of the ith columns and the ith rows: (2) A·i(t+γ)=λγA·it=γ·λ+A·itt(TA)i,(2) (3) Ai·(t+γ)=λγAi·t=γ·λ+Ai·tt(TA)i,(3)

The ultimate periodicity gives rise to a number of important concepts, of which we will define the following one.

Definition 2.7

(Periodicity Transients). The smallest integer TA for which (1) holds or, respectively, the smallest integers (TA)i and (TA)i for which (2) and (3) hold, is called the periodicity transient of (the tropical matrix powers of) A or, respectively, the periodicity transient of the ith column and the ith row of those powers.

Obviously, the periodicity transients of ith row and ith column can be much smaller than the periodicity transient of A, and this is particularly relevant in the case where iNAc (i.e., when i is a critical node of A). It is also known that, for iNAc, the properties (2) and (3) take place also for general reducible matrices A. Below we will recall a particularly useful result due to Nachtigall [Citation13].

Theorem 2.2

(Ultimate Periodicity of Critical Rows and Columns [Citation13]). Let ARn×n and k be a critical node on a critical cycle Z of length lZ. Then (TA)k(n1)·lZ and (TA)k(n1)·lZ.

To explain how to compute the critical rows and columns in the ultimately periodic regime, let us also present the following result, which is a variation of the weak CSR theorems of [Citation9] and can be seen as a slight simplification of [Citation12], Proposition 2.5.

Theorem 2.3

(Weak CSR Expansion [Citation9]). Let ARmaxn×n have λ=λ(A), and let Z be a critical cycle of A with length lZ. Then for some integer Tweak we have At=λt(CZSZtRZ)BZttTweak=λt(CZSZt(remlZ)RZ)BZttTweak.where t(remlZ) is the remainder when t is divided by lZ and CZ,SZ,RZ, and BZ are defined by (CZ)ij={(UZ)ij if j is in Z otherwise (RZ)ij={(UZ)ij if i is in Z otherwise (SZ)ij={(aijλ1) if (i,j) is in Z otherwise (BZ)ij={ if iZ or jZaij otherwise  where UZ=((Aλ1) l/Z)* (i.e., the Kleene star of ((Aλ1) l/Z)).

Combining Theorem 2.2 with Theorem 2.3 as well as with [Citation15] Corollary 3.7, we obtain the following result, which we will be using below in some algorithms:

Theorem 2.4

(CSR Formula for Critical Rows and Columns). Let ARmaxn×n have λ=λ(A), and let Z be a critical cycle of A with length lZ. Then for any iZ we have Ai·t=λt(SZt(remlZ)RZ)i·, A·it=λt(CZSZt(remlZ))·i, t(n1)lZ.

This theorem can be utilized to solve the different forms of tropical discrete logarithm problems, which are summarized below.

Problem 1.

Given U,M,DRmaxn×n such that U=MDt for some tN, find this t.

Problem 2.

Given U,M,DRmaxn×n, such that U=αMDt for some tN and αRmax, find τ and t such that U=τMDt.

Solution to Problem 1 was discussed in [Citation12] and further in [Citation10], and Problem 2 can be solved by similar methods. However, since it involves a scalar, Problem 2 typically has an infinite number of solutions, unlike Problem 1, whose solution is typically unique. Also note that one can pose a version of Problem 1, respectively Problem 2, with DtM instead of MDt, which can be regarded as a transposition of Problem 1, respectively Problem 2, and can be solved similarly.

Let us now pose two other problems, which will be referred to as tropical two-sided discrete logarithm problems.

Problem 3.

Given D1,D2,M,URmaxn×n such that U=D1t1MD2t2 for some t1,t2N. Find t1,t2 such that U=D1t1MD2t2.

Problem 4.

Given D1,D2,M,URmaxn×n such that U=αD1t1MD2t2 for some t1,t2N and αR. Find t1,t2 such that U=τD1t1MD2t2, where τRmax.

An attempt to solve Problem 3 can be found in [Citation10], where it is observed, in particular, that the solution to this problem is in general non-unique. However, the number of solutions to this problem (unlike the number of solutions to Problem 4 is typically finite).

It is natural to solve the problems listed above by exploiting the ultimate periodicity properties of the tropical matrix powers or, in particular, by using the more precise information about those powers in the ultimate periodic regime as given, e.g., by the CSR decomposition. Let us note, however, that this approach has some limitations. Firstly, tropical matrix powers are not ultimately periodic in general (see, e.g., [Citation3]), and both Alice and Bob can opt to use matrices whose powers are not ultimately periodic, which offers them some protection against attacks based on ultimate periodicity of entire tropical matrix powers. Secondly, the periodicity transient of tropical matrix powers depends on the matrix entries and it can be quite high.

In view of the above observations it looks more reasonable to exploit the ultimate periodicity of those columns and rows of tropical matrix powers whose indices correspond to the critical nodes. These columns and rows are ultimately periodic for any matrix and some of the known bounds on their periodicity transients are quadratic or even linear, if such columns and rows belong to a critical cycle of a known length.

This was the approach adopted in [Citation12] and [Citation10] and the same approach will be developed in the next section, see Algorithms 2, and 4. The more “naive” approach, based on the assumption that the tropical matrix powers are ultimately periodic, is more relevant to Algorithms 1 and 3.

3 Heuristic attacks on the tropical two-sided discrete logarithm with shift

In this section, we will discuss two approaches to how Problem 4 can be solved. Let us first note that this problem differs from the tropical two-sided discrete logarithm problem (Problem 3) since it includes a coefficient. The introduction of this coefficient enhances the solvability of the problem since it becomes sufficient to find a pair of exponents t1, t2 that makes U a shifted version of D1t1MD2t2. For this reason, if there is a pair (t1,t2) satisfying this equation, where t1, respectively t2, are above the ultimate periodicity thresholds for D1, respectively D2, then there are infinitely many such pairs. The first algorithm, which we are going to propose, will utilize this property, since we are relying on the intuition that the smallest pair of exponents t1 and t2 satisfying the equation is small enough, which is true if the sequences of matrix powers of D1 and D2 are ultimately periodic in the sense of Theorem 2.1 and if the threshold of their ultimate periodicity is small enough.

Algorithm 1

Solving the tropical two-sided discrete logarithm with shift using the non-uniqueness of exponents

Input: U,D1,M,D2,maxt

Output: t1,t2,τ

1: for t1=0 to maxt do

2: for t2=0 to maxt do

3: if (UD1t1MD2t2)ij=βi,j[n] for some βR then

4: t1=t1, t2=t2, τ=β.

5: end if

6: end for

7: end for

Algorithm 1 has a perfect success rate in solving Problem 4 when maxt is equal to the maximum exponent that could be used in the problem, but it is also expected to have a high success rate for lower values of maxt for the reasons outlined above.

For the second algorithm, we apply Theorem 2.4 for the powers of D1 and D2 to solve Problem 4. Note that here we can find t1,t2 by only searching in a search space of a size equal to the product of the two critical cycle lengths of the two matrices D1 and D2, while the previous algorithm has a maximum search space equal to the product of the maximum exponents that could be used in the problem (or, to be more precise, our estimates of such maximum exponents).

Note that this algorithm is heuristic in nature in particular since the CSR formulas of Theorem 2.4 are only guaranteed to hold when the exponent is larger than (n1)·max(lZ,lW) where lZ and, respectively, lW are the lengths of the critical cycle Z of D1 and, respectively, the critical cycle W of D2. The algorithm might not solve the problem if the original exponents t1, t2 are lower than this bound. One might add to the algorithm some parts where the exponents lower than this bound are also checked, similarly to the algorithms in [Citation12] and [Citation10].

To justify and explain the second algorithm we observe that we can use the CSR formulas of Theorem 2.4 for the rows of powers of D1 with indices in Z and for the columns of powers of D2 with indices in W, and then focus on the submatrix of U extracted from the rows with indices in Z and columns with indices in W. We then obtain the following equation (U)ij=(αλ1t1λ2t2(SZt1rem(lZ)RZMCWSWt2rem(lW))ij(i,j) where iZ and jW and t1(n1)lZ and t2(n1)lW,where λ1,λ2 denote the maximum cycle means of the two matrices.

Then we want to solve the problem of finding (t1,t2,τ) for some t1,t2N and τR such that (U)ij=(τλ1t1λ2t2(SZt1rem(lZ)RZMCWSWt2rem(lW))ij(i,j) where iZ and jW and t1(n1)lZ and t2(n1)lW,and this is achieved by firstly finding a pair of exponents (t1rem(lZ),t2rem(lW)) among lZ·lW possibilities such that it will make the above described submatrix of U and the same submatrix of SZt1rem(lZ)RZMCWSWt2rem(lW) “in phase”.

We will denote t1rem(lZ),t2rem(lW) by t¯1,t¯2 respectively. In particular, we begin by finding t¯1{1,2,,lZ} and t¯2{1,2,,lW} that makes the submatrix of U extracted from the rows with indices in Z and the columns with indices in W a shifted version of the same submatrix of (SZt¯1RZMCWSWt¯2)ij. Then we try to find (t1,t2,τ) by solving the following equation (4) β=τ+t1·λ1+t2·λ2, whereβ=(USZt¯1RZMCWSWt¯2)ij(i,j):iZ, jW.(4)

As it follows from numerical experiments, it is also reasonable to impose some lower bounds on t1 and t2 which guarantee that the submatrix of U with rows in Z and columns in W is in the ultimately periodic regime.

We now formulate (4) (with the above mentioned lower bounds on t1 and t2) in a more precise way as a mixed-integer linear programming problem. Recall that t¯1 and t¯2 denote the remainders when t1, respectively t2 are divided by lZ and, respectively, lW. Thus t1=lZ·x+t¯1 and t2=lW·y+t¯2 where x,yN. We obtain β=τ+(lZ·x+t¯1)·λ1+(lW·y+t¯2)·λ2,

which can be rearranged to give βτλ1·t¯1λ2·t¯2=λ1·lZ·x+λ2·lW·y

We also impose the lower bounds t1(n1)lZ and t2(n1)lW since we are counting on the critical rows and columns reaching the ultimate periodic regime, which may not be the case if these inequalities do not hold. We then have t1=lZ·x+t¯1(n1)lZ and t2=lW·y+t¯2(n1)lW,which we can rearrange to obtain x(n1)lZt¯1lZ and y(n1)lWt¯2lW

Then we can find solutions (t1,t2,τ) by solving (5) {βτλ1·t¯1λ2·t¯2=(λ1·lZ)x+(λ2·lW)yx(n1)lZt¯1lZy(n1)lWt¯2lW(5) for (x,y)N2 and τR. Note that this is a mixed integer linear programming problem with unknowns x,y,τ. We are now ready to formulate the solution method, see Algorithm 2.

Algorithm 2

Solving the tropical two-sided discrete logarithm with shift using CSR

Input: U,D1,M,D2

Output: t1,t2,τ

1: Calculate λ(D1)=λ1,λ(D2)=λ2

2: Find a critical cycle Z from D1, and W from D2, let their lengths be lZ and lW, respectively.

3: Calculate SZ, RZ, CW and SW as in Theorem 2.3

4: for t¯1=0 to lZ do

5: for t¯2=0 to lW do

6: if (U(SZt¯1RZMCWSWt¯2)ij=β  for some  βR and for all i, j where iZ and jW then

7: Check if (5) is solvable. If it is, then return (t1,t2,τ) where t1=lZ·x+t¯1 and t2=lW·y+t¯2.

8: end if

9: end for

10: end for

The following numerical experiments show the success rate and time consumption for Algorithm 1 and Algorithm 2 as a function of matrix dimension. For all experiments, the entries of the matrices are random integers in [1000,1000], and 100 trials were performed for each dimension. All numerical experiments are implemented on MATLAB R2023b running on Windows 11 64-bit, equipped with an Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz and 16.0 GB RAM.

Success rate for Algorithm 1 is shown in . The exponents t1, t2 in Problem 4 are randomly chosen among integers in [1,n5], and the scalar value α is in [1,1000]. Algorithm 1 parameter maxt is n5 for the left hand side of the figure and n3 for the right hand side of the figure.

Fig. 1 Algorithm 1 success rate with maxt=n5 (left) and maxt=n3 (right).

Fig. 1 Algorithm 1 success rate with maxt=n5 (left) and maxt=n3 (right).

We notice that Algorithm 1 never fails when the maximum searchable exponent maxt is the same as the one used in Problem 4 since the algorithm searches for all possible matrix exponents that make U in phase or equal to D1t1MD2t2. The guaranteed success results from testing all potential exponent combinations. The efficiency and quickness of the algorithm in finding appropriate exponents depends on the cyclicity pattern of the matrices D1 and D2. When we limit maxt to a lower exponent, we lose the guaranteed success rate, but we still achieve a high success rate with a faster time.

Success rate for Algorithm 2 is shown in . The exponents t1, t2 in Problem 4 are allowed to be less than (n1)lZ and (n1)lW for the left hand side, and are required to be larger than (n1)lZ and (n1)lW for the right hand side, and the scalar value α is in the interval [1,1000].

Fig. 2 Algorithm 2 success rate when t1<(n1)lZ and t2<(n1)lW (left), and when t1(n1)lZ and t2(n1)lW (right).

Fig. 2 Algorithm 2 success rate when t1<(n−1)lZ and t2<(n−1)lW (left), and when t1≥(n−1)lZ and t2≥(n−1)lW (right).

We notice that Algorithm 2 has a high success rate when the exponents used in Problem 4 are larger than (n1)lZ and (n1)lW for t1 and t2 respectively since the critical entries are guaranteed to enter the ultimately periodic regime after such bounds. The attack however does not perform so well when the used exponents are lower than this threshold which is expected since the CSR formulas do not necessarily hold for such exponent values (i.e., entries in the critical rows or columns have not necessarily entered the ultimate periodicity).

The time consumption for the two algorithms is quite different, as shown in . Here, the exponents t1, t2 in Problem 4 are random integers larger than (n1)lZ and (n1)lW, respectively, and the scalar value α is in the interval [1,1000].

Fig. 3 Time taken for Algorithms 1 and 2.

Fig. 3 Time taken for Algorithms 1 and 2.

We notice that Algorithm 2 is faster than Algorithm 1 since it limits its search to a finite set of values equal to the product of the critical cycle sizes of the two matrices D1, D2. However, for lower values of n, we note that Algorithm 1 is faster since the search space is small and Algorithm 2 requires more steps such as computing the CSR terms and maximum cycle means.

Note that one can combine the two algorithms to get better overall performance in terms of success rate and execution time. One possible combination is to apply Algorithm 1 for t1 until (n1)lZ and t2 until a big enough number, then for t2 until (n1)lW and for t1 until a big enough number, and then to perform Algorithm 2 for larger exponents.

4 The tropical semiring of pairs and the key exchange protocol

In this section, we examine a key exchange protocol proposed in [Citation1]. The protocol employs a modified tropical structure and is claimed to resist the known attacks on conventional tropical key exchange protocols. We will begin by introducing the modified tropical structure, followed by presenting the associated protocol and outlining its construction.

4.1 The tropical semiring of pairs

Let Rmax be the tropical semiring defined in 2.1, then we have the following definition.

Definition 4.1.

(Tropical Algebra of Pairs [Citation1, Citation2]). We define the tropical algebra of pairs Rmax2 as Rmax2=(Rmax×Rmax,,)with elements of the shape (a(1),a(2)) such that a(k)Rmax for k{1,2} denotes the first and second element of a two-dimensional vector in Rmax2 with the operations (,) defined as (a(1),a(2))(b(1),b(2))=(a(1)b(1),a(2)b(2))(a(1),a(2))(b(1),b(2))=((a(1)b(1))(a(2)b(2)),(a(1)b(2))(a(2)b(1)))such that(a(1),a(2)),(b(1),b(2))Rmax2anda(1),a(2),b(1),b(2)Rmax

The following example illustrates these operations.

Example 4.1.

Let (1,3),(2,5)Rmax2 then (1,3)(2,5)=(12,35)=(2,5)(1,3)(2,5)=((12)(35),(15)(32))=(8,6)

The operations of this semiring can also be extended to include matrices following the same manner as the conventional tropical matrix operations in Definition 2.1 but with replacing the elements of Rmax by the elements of Rmax2 and (,) by (,). Thus, we will denote the semiring of matrices over Rmax2 by (R2)maxn×n.

4.2 Key exchange protocol based on the semiring of pairs

We now present the key exchange protocol proposed by the authors in [Citation1] which is based on the tropical algebra of pairs (R2)maxn×n. Note that the authors in this protocol altered the second operation of Rmax2 to be (x,y)c(z,w)=((cxz)(cyw),(cxw)(cyz)) where 0cZ. This modification constructs a new semiring Rmaxc2 with multiplicative identity (c,).

Protocol 1 (Key Exchange Protocol based on the Semiring of Pairs).

  1. Alice and Bob agree upon two public matrices X,Y(R2)maxn×n.

  2. Alice chooses a semiring Rmaxc2=(Rmax×Rmax,c,c) where

    (a(1),a(2))c(b(1),b(2))=(a(1)b(1),a(2)b(2))(a(1),a(2))c(b(1),b(2))=((ca(1)b(1))(ca(2)b(2)),(ca(1)b(2))(ca(2)b(1)))

    Here, cZ is her fixed private parameter. Bob also picks Rmaxd2=(Rmax×Rmax,d,d) where

    (a(1),a(2))d(b(1),b(2))=(a(1)b(1),a(2)b(2))(a(1),a(2))d(b(1),b(2))=((da(1)b(1))(da(2)b(2)),(da(1)b(2))(da(2)b(1)))

    and dZ is his fixed private parameter.

  3. Alice picks two private natural numbers k, l and calculates A=XckYcl. She then chooses another private integer p and sends A(p) to Bob, where A(p) is pA.

  4. Bob also picks his private natural numbers r, s, calculates B=XdrYds and sends B(q) to Alice, where B(q) is qB and qZ is Bob’s private parameter.

  5. Alice computes her key KAlice=(Xck)(p)B(q)Ycl and Bob’s key is KBob=(Xdr)(q)A(p)Yds.

The two parties end up with the same key KAlice = KBob as proved in [Citation1].

The following example illustrates the above key exchange protocol.

Example 4.2.

Alice and Bob agree on the public matrices X and Y: X=[(9,6)(1,2)(8,4)(4,1)] and Y=[(2,0)(8,2)(6,10)(8,5)]and they choose the private parameters c=3,k=27,l=18,p=2 for Alice, and d=4,r=17,s=23,q=5 for Bob.

Alice calculates A=X327Y318=[(532,534)(532,530)(531,533)(531,529)] and sends

A(2)=[(530,532)(530,528)(529,531)(529,527)] to Bob.

Bob calculates B=X417Y423=[(509,511)(509,511)(508,510)(508,510)] and sends

B(5)=[(514,516)(514,516)(513,515)(513,515)] to Alice.

Then Alice and Bob compute their keys using those received transmissions: KAlice=(X327)(2)B(5)Y318=[(1048,1046)(1048,1046)(1047,1045)(1047,1045)]KBob=(X417)(5)A(2)Y423=[(1048,1046)(1048,1046)(1047,1045)(1047,1045)]

Thus they end up with the same shared key.

5 Cryptanalysis of the protocol

In this section, we introduce our attacks on the proposed protocol. It is claimed that it is more resilient than its conventional tropical counterparts since it doesn’t reveal a cyclicity pattern for high powers, but we will show otherwise. We begin by presenting an alternative representation of matrices in (R2)maxn×n, providing a foundation for constructing our attacks which are based on solving Problem 4. Subsequently, we implement our attacks showing their efficiency and success rate.

5.1 Representing matrices in (R2)maxn×n as matrices in Rmax2n×2n

Observe that a matrix with entries in the tropical semiring of pairs can be associated with a conventional tropical matrix in Rmax2n×2n by replacing each entry of the matrix over that semiring with a 2 × 2 square matrix. More formally this representation is defined as follows.

Definition 5.1.

Suppose A(R2)maxn×n is given by A=[(a11(1),a11(2))(a12(1),a12(2))(a1n(1),a1n(2))(a21(1),a21(2))(a22(1),a22(2))(a2n(1),a2n(2))(an1(1),an1(2))(an2(1),an2(2))(ann(1),ann(2))],then we define A˜Rmax2n×2n as follows: A˜=[a11(1)a11(2)a12(1)a12(2)a1n(1)a1n(2)a11(2)a11(1)a12(2)a12(1)a1n(2)a1n(1)a21(1)a21(2)a22(1)a22(2)a2n(1)a2n(2)a21(2)a21(1)a22(2)a22(1)a2n(2)a2n(1)an1(1)an1(2)an2(1)an2(2)ann(1)ann(2)an1(2)an1(1)an2(2)an2(1)ann(2)ann(1)].

We now observe that this representation gives rise to an injective homomorphism from the matrix algebra (R2)maxn×n to the matrix algebra Rmax2n×2n. In other words, each matrix in (R2)maxn×n is uniquely represented by a matrix in Rmax2n×2n and this representation respects the matrix addition (obviously), and also the matrix multiplication, due to the following proposition.

Proposition 5.1.

Let A,B(R2)maxn×n, then A˜B˜=AB˜ where A˜,B˜,(AB)˜Rmax2n×2n.

Proof.

We infer from the definition of the multiplication over Rmax2 (Definition 4.1) that if A=[(a11(1),a11(2))(a1n(1),a1n(2))(an1(1),an1(2))(ann(1),ann(2))]and B=[(b11(1),b11(2))(b1n(1),b1n(2))(bn1(1),bn1(2))(bnn(1),bnn(2))]

Then we have (AB)pq=(k=1napk(1)bkq(1)apk(2)bkq(2),k=1napk(1)bkq(2)apk(2)bkq(1))(AB)pq=(zpq(1),zpq(2))p,q[n]where zpq(1)=k=1napk(1)bkq(1)apk(2)bkq(2) and zpq(2)=k=1napk(1)bkq(2)apk(2)bkq(1). Using Definition 5.1 to obtain matrices A˜, B˜ and (AB)˜Rmax2n×2n, we have that A˜=[a11(1)a11(2)a1n(1)a1n(2)a11(2)a11(1)a1n(2)a1n(1)an1(1)an1(2)ann(1)ann(2)an1(2)an1(1)ann(2)ann(1)]B˜=[b11(1)b11(2)b1n(1)b1n(2)b11(2)b11(1)b1n(2)b1n(1)bn1(1)bn1(2)bnn(1)bnn(2)bn1(2)bn1(1)bnn(2)bnn(1)](AB)˜=[z11(1)z11(2)z1n(1)z1n(2)z11(2)z11(1)z1n(2)z1n(1)zn1(1)zn1(2)znn(1)znn(2)zn1(2)zn1(1)znn(2)znn(1)]

Then it is clear that we have a 2 × 2 sub-matrix in (A˜B˜) for each pair (p,q)[n]×[n], which has k=1napk(1)bkq(1)apk(2)bkq(2)=zpq(1)for the two diagonal elementsand k=1napk(1)bkq(2)apk(2)bkq(1)=zpq(2)for the two non‐diagonal elements

Therefore A˜B˜=[z11(1)z11(2)z1n(1)z1n(2)z11(2)z11(1)z1n(2)z1n(1)zn1(1)zn1(2)znn(1)znn(2)zn1(2)zn1(1)znn(2)znn(1)]=(AB)˜.

Example 5.1.

Suppose we have A=[(7,1)(6,2)(4,9)(4,8)] and B=[(2,2)(6,7)(1,10)(3,2)]

Then AB=[(7,1)(6,2)(4,9)(4,8)][(2,2)(6,7)(1,10)(3,2)]=[(12,16)(9,5)(11,14)(16,3)]

The above operation can be equivalently calculated using the conventional tropical matrix algebra, as we have A˜=[7162172649489484],B˜=[226722761103210123]A˜B˜=[7162172649489484][226722761103210123]=[12169516125911141631411316]=(AB)˜

Notice that the odd numbered rows of A˜B˜ are identical to the rows of AB. We will exploit this observation to attack Protocol 1.

5.2 Attacks on Protocol 1 based on solving the tropical two-sided discrete logarithm

After the suggested matrix transformation, we observe that the problem of attacking the proposed protocol is essentially reduced to solving Problem 4. Thus, to attack the protocol, it is sufficient to find a pair of exponents (k,l) that makes the tropical product of the public matrices XkYl in phase with the transmitted matrix A(p), and not necessarily the exact exponents that generated the instance. In particular, we know from the definition of the proposed protocol that A=XckYcl=(k1)cXk(l1)cYl

Then when the two sides are multiplied by p, we get A(p)=p(k1)cXk(l1)cYl.

This A(p) can be intercepted by the attacker, and he can transform it to A˜(p)Rmax2n×2n using Definition 5.1. Similarly, the attacker also transforms public matrices X and Y to X˜ and Y˜. The attacker can then utilize the following equality, which holds by Proposition 5.1 (6) A˜(p)=p(k+l2)cX˜kY˜l(6)

This equation resembles Problem 4 which can be solved by finding a pair of exponents k,l such that A˜(p) is a shifted version of X˜kY˜l by a fixed integer τ which equals to the scalar part of the above equation (τ=p+(k+l2)c). In other words, all entries of A˜(p) differ by the same amount from the corresponding entry of X˜kY˜l. There are highly likely infinite number of solutions due to the ultimate periodicity of tropical matrices. Note that the attacker can find the private parameters p,c by solving the equation τ=p+(k+l2)c for p,c. However, these parameters are not required to construct the shared key as it suffices to use τ.

The shared key can then be computed using the found exponents (k,l) and τ and the other intercepted massage B(q) as (7) KAttack =τ(XkB(q)Yl)=(p+(k+l2)c+q+(r+s2)d)(XkXrYsYl)=(p+(k+l2)c+q+(r+s2)d)(XrXkYlYs)=(p+(k+l2)c+q+(r+s2)d)(XkXrYsYl)=KAlice =KBob (7)

The attack is described in Algorithm 3. We also present an example illustrating this attack.

Algorithm 3

Attacking Protocol 1 by using Algorithm 1

Input: X,Y,A(p),B(q),maxt

Output: Key

1: Transform X,Y,A(p) to X˜,Y˜,A˜(p) using Definition 5.1

2: Perform Algorithm 1 with Input:A˜(p),X˜,I,Y˜,maxt, then we get the output k,l,τ

3: Key=τ(XkB(q)Yl)

Example 5.2.

Suppose that Alice and Bob agree on the public matrices X and Y that are shown in Example 4.2, with the private parameters being c=3,k=27,l=18,p=2 for Alice and d=4,r=17,s=23,q=5 for Bob. The attacker intercepts A(p) and transforms it to a conventional tropical matrix A˜(p) in Rmax2n×2n. He also transforms the public matrices X and Y to X˜ and Y˜, respectively. Let the results of this transformation be A˜(p)=[530532530528532530528530529531529527531529527529],X˜=[9612692184414814]Y˜=[208202286108510658]

The attacker then searches for a pair of exponents k and l that satisfies the following equation (A˜(p)X˜kY˜l)ij=τ for some τRi,j[2n]

The attacker notices that any pair from k{2,3,4,} and l{10,14,18,} satisfies the above equality. Suppose the attacker picks k = 2 and l = 10 (A˜(p)X˜2Y˜10)ij=424i,j[2n]

Then, the shared key can be computed as: K˜Attack =τ(X˜2B˜(q)Y˜10)=424[624622624622622624622624623621623621621623621623]=[1048104610481046104610481046104810471045104710451045104710451047]

which represents [(1048,1046)(1048,1046)(1047,1045)(1047,1045)]=KAlice=KBob

We notice that the attacker successfully recovered the secret key using smaller exponents than those that generated the protocol instance.

We now describe the attack based on the CSR solution to the two-sided discrete logarithm problem. Starting from (6) we focus on the submatrix extracted from the rows with indices in a critical cycle Z of X˜ and the columns with indices in a critical cycle W of Y˜, for which we obtain (A˜(p)=τλ1kλ2lSZkrem(lZ)RZCWSWlrem(lW))ij iZ,jWk(2n1)lZ,l(2n1)lW.

Here lZ, lW denote the lengths of Z and W, and τ=p(k+l2)c. Then, we want to find a pair of exponents k,l such that (A˜(p))ij is a shifted version of (SZkrem(lZ)RZCWSWlrem(lW))ij by a fixed integer β which equals to the scalar part (β=τλ1kλ2l). To achieve that, we firstly need to find k¯=krem(lZ) and l¯=lrem(lW){1,2,,lZ} ×{1,2,,lW} that satisfies this shift requirement, and then find (k,l,τ) by solving the following mixed integer linear programming problem (8) {βτλ1·k¯λ2·l¯=(λ1·lZ)x+(λ2·lW)yx(2n1)lZk¯lZy(2n1)lWl¯lW(8) with unknowns τ,x and y. Then we obtain k=x·lZ+k¯ and l=y·lW+l¯. If it happens that (6) holds for the pair of exponents thus found, then this method also yields a common key, by applying the same argument as in (7). The attack is formally written as Algorithm 4.

Algorithm 4

Attacking Protocol 1 by Using Algorithm 2

Input: X,Y,A(p),B(q)

Output: Key

1: Transform X,Y,A(p) to X˜,Y˜,A˜(p) using Definition 5.1

2: Calculate λ(X˜)=λ1,λ(Y˜)=λ2

3: Find a critical cycle Z from X˜, and W from Y˜, let their lengths be lZ and lW, respectively.

4: Calculate SZ, RZ, CW and SW as in Theorem 2.3

5: Perform Algorithm 2 with Input:A˜(p),X˜,I,Y˜, then we get the output k,l,τ

6: Key=τ(XkB(q)Yl)

5.3 Numerical experiments

Both of the suggested attacks on Protocol 1 have been tested numerically. Specifically, we looked at the success rate for each attack as a function of matrix dimension. Additionally, we analyzed the time required for the attacker to construct the secret shared key. This analysis serves as a basis for comparison with the process of original secret key generation. For all experiments, the protocol parameters p,q,c,d and the matrix entries are random integers in [1000,1000], and 100 trials are performed for each dimension.

Success rate for Algorithm 3 is presented on . Here, the private exponents k,l,r,s in the protocol are random integers in [1,n5], where n is the dimension of the matrices, and the parameter maxt is n5 (on the left) and n3 (on the right).

Fig. 4 Attack 3 success rate with maxt=n5 and maxt=n3.

Fig. 4 Attack 3 success rate with maxt=n5 and maxt=n3.

Since Algorithm 3 uses Algorithm 1, it never fails when the maximum searchable exponent maxt is the same as the one used in the protocol since the algorithm searches for all possible matrix exponents that make A(P) in phase or equal to XkYl. The guaranteed success results from testing all potential exponent combinations. The efficiency and quickness of the algorithm in finding appropriate exponents depends on the ultimate periodicity threshold of the public matrices X and Y.

Success Rate for Algorithm 4 is shown in . The private exponents k, r are random integers less that (n1)lZ, in [(n1)lZ,(2n1)lZ], larger than (2n1)lZ for the left, middle and right figure, respectively. The same follows for l, s but with lW as the critical cycle length. For easier notations, we will denote both lZ, lW as lZ in what follows.

Fig. 5 Attack 4 success rate with protocol’s exponents less than (n1)lZ, in [(n1)lZ,(2n1)lZ] and larger than (2n1)lZ respectively.

Fig. 5 Attack 4 success rate with protocol’s exponents less than (n−1)lZ, in [(n−1)lZ,(2n−1)lZ] and larger than (2n−1)lZ respectively.

We notice that it is sufficient for Attack 4 to perform almost optimally when the original protocol’s exponents are larger than (n1)lZ and not necessarily larger than (2n1)lZ, which is the guaranteed threshold for the CSR formulas of Theorem 2.4 to hold. This might indicate that after transforming the matrices from (R2)maxn×n to Rmax2n×2n, the periodicity behavior is still maintained. The small number of failures are probably due the critical graph of 1 or more of the public matrices having multiple strongly connected components. We also notice that Algorithm 4 does not perform as well when the used exponents are lower than (n1)lZ which is expected since the CSR decomposition does not necessarily hold for such exponent values (i.e., entries in the critical rows or columns haven’t necessarily converged yet to ultimate periodicity).

The time consumption comparison between the protocol and the two attacks is presented on . The private exponents k,l,r,s in the protocol are random integers larger than (2n1)lZ.

Fig. 6 Time taken to attack and to generate Protocol 1.

Fig. 6 Time taken to attack and to generate Protocol 1.

We notice that recovering the key with Algorithm 4 is faster than Algorithm 3 since it limits its search to a finite set of values equal to the product of the critical cycle sizes of the two public matrices. We see that there is no significant difference between the attacker’s time and the users’ time in generating the secret key.

5.4 An attack based on absolute values of tropical pairs

In this section, we describe another attack that does not require the attacker to double the matrices sizes, which makes it more efficient than the previous ones. However, while performing this attack we lose some information and this worsens the success rate. We firstly present the following definition, inspired by the symmetrized semiring introduced in [Citation2].

Definition 5.2

(Absolute Value). Let (a(1),a(2))Rmax2. Then the absolute value of this pair is defined by |(a(1),a(2))|=a(1)a(2).

For two pairs (a(1),a(2)),(b(1),b(2))Rmax2 the following properties hold: |(a(1),a(2))(b(1),b(2))|=|(a(1)b(1),a(2)b(2))|=a(1)a(2)b(1)b(2)=|(a(1),a(2))||(b(1),b(2))|and |(a(1),a(2))(b(1),b(2))|=|(a(1)b(1)a(2)b(2)),(a(1)b(2)a(2)b(1))|=(a(1)b(1)a(2)b(2))(a(1)b(2)a(2)b(1))=(a(1)a(2))(b(1)b(2))=|(a(1),a(2))||(b(1),b(2))|

The first of them is rather unusual, since we only have |a+b||a|+|b| in the usual algebra.

These properties can be also extended to matrices over tropical pairs, as we have |(AB)ij|=|A|ij|B|ij,

which directly follows from the above definition, and |(AB)ij|=|k=1naikbkj|=k=1n|aikbkj|=k=1n|aik||bkj|=(|A||B|)ij

Here A, B(R2)maxn×n and aij,bijRmax2i,j[n].

We can use the above operations to perform the (R2)maxn×n matrix addition and multiplication, and we will get a half sized conventional Rmaxn×n matrix. These operations with half sized result are often sufficient to attack the proposed protocol. The attack is very similar to Attack 4, but they only differ in the type of matrix transformation. It is formally presented below as Algorithm 5.

Algorithm 5

Attacking Protocol 1 using the absolute values

Input: X,Y,A(p),B(q)

Output: Key

1: Transform X,Y,A(p) to |X|,|Y|,|A(p)| using Definition 5.2

2: Calculate λ(|X|)=λ1,λ(|Y|)=λ2

3: Find a critical cycle Z from |X|, and W from |Y|, let their lengths be lZ and lW, respectively.

4: Calculate SZ, RZ, CW, and SW as in Theorem 2.3

5: Perform Algorithm 2 with Input:|A(p)|,|X|,I,|Y|, then we get the output k,l,τ

6: Key=τ(XkB(q)Yl)

We expect this attack to have a lower success rate than the previous ones due to the observation that α|X|t1|Y|t2=|U| does not always imply that αXt1Yt2=U. Hence, the attack in this case will not successfully recover the secret key since the found exponents do not really solve the original tropical two-sided discrete log with shift problem over the tropical pairs. However, it is going to be faster since it does not require doubling the matrix size which expedites the process of computing the CSR terms and finding the exponents through solving the tropical two-sided discrete logarithm with shift. We performed a numerical experiment in which we observed that the algorithm had approximately 50–60% success rate but roughly twice the speed of Algorithm 4.

6 Conclusion

In this paper, we presented the tropical two-sided discrete logarithm with shift problem and its solution. We showed that two algorithms solve the problem with a high success rate. The first algorithm relies on the non-uniqueness of the exponents that can satisfy the problem’s equation, and it showed a perfect success rate but potentially slower convergence. The other algorithm heuristically solves the problem using the CSR decomposition, demonstrating a high success rate and a much faster execution time. We then presented a key exchange protocol that is based on the tropical semiring of pairs. We firstly showed that the matrix operations over the tropical semiring of pairs can be equivalently calculated using the conventional tropical semiring by doubling the matrices’ size. After the transformation to the conventional tropical semiring, the problem was reduced to the tropical two-sided discrete logarithm with shift, which can be solved using the two proposed algorithms. Lastly, we introduced an even faster approach that does not require the attacker to double the matrix size, showing roughly twice the speed of the previous heuristic attack, but it has a lower success rate.

We also note that the proposed protocol remains vulnerable to the known tropical cryptographic attacks even if the parties use matrix polynomials over the semiring of pairs. If Alice and Bob use matrix polynomials over the semiring of pairs, then the problem will not reduce to the tropical two-sided logarithm with shift, but in this case it may be possible to apply a modified version of the Kotov-Ushakov attack [Citation8] (which, however, shows an exponential blow up in the number of operations as the maximal degree of the polynomials increases). The main reason for insecurity of the protocols using the matrix algebra over the tropical semiring of pairs is the existence of injective homomorphism from this matrix algebra to the ordinary tropical matrix algebra.

Acknowledgments

The authors are grateful to Sergeĭ’s M.Sci. student Sarah Elt who gave them the idea to try using also the absolute value of pairs and its extension to matrices. We are also grateful to our anonymous referee for careful reading and comments which helped to improve our paper.

Notes

References

  • Ahmed, K., Pal, S., Mohan, R. (2023). Key exchange protocol based upon a modified tropical structure. Commun. Algebra 51(1):214–223. DOI: 10.1080/00927872.2022.2095566.
  • Baccelli, F. L., Cohen, G., Olsder, G. J., Quadrat, J. P. (1994). Synchronization and linearity - an algebra for discrete event systems. John Wiley and Sons.
  • Butkovič, P. (2010). Max-Linear Systems: Theory and Algorithms. London: Springer.
  • Cohen, G., Dubois, D., Quadrat, J. P., and Viot, M. (1983). Analyse du compartement périodique de systémes de production par la théorie des dioïdes. Research Report RR-0191, INRIA.
  • Grigoriev, D., Shpilrain, V. (2013). Tropical cryptography. Commun. Algebra 42:2624–2632. DOI: 10.1080/00927872.2013.766827.
  • Grigoriev, D., Shpilrain, V. (2019). Tropical cryptography II: extensions by homomorphisms. Commun. Algebra 47(10):4224–4229. DOI: 10.1080/00927872.2019.1581213.
  • Isaac, S., Kahrobaei, D. (2021). A closer look at the tropical cryptography. Int. J. Comput. Math. Comput. Syst. Theory 6(2):137–142. DOI: 10.1080/23799927.2020.1862303.
  • Kotov, M., Ushakov, A. (2018). Analysis of a key exchange protocol based on tropical matrix algebra. J. Math. Cryptol. 12(3):137–141. DOI: 10.1515/jmc-2016-0064.
  • Merlet, G., Nowak, T., Sergeev, S. (2014). Weak CSR expansions and transience bounds in max-plus algebra. Linear Algebra Appl. 461:163–199. DOI: 10.1016/j.laa.2014.07.027.
  • Muanalifah, A. (2023). Public key cryptography based on tropical algebra. PhD thesis, University of Birmingham.
  • Muanalifah, A., Sergeev, S. (2020). Modifying the tropical version of Stickel’s key exchange protocol. Appl. Math. 65:727–753. DOI: 10.21136/AM.2020.0325-19.
  • Muanalifah, A., Sergeev, S. (2022). On the tropical discrete logarithm problem and security of a protocol based on tropical semidirect product. Commun. Algebra 50(2):861–879. DOI: 10.1080/00927872.2021.1975125.
  • Nachtigall, K. (1997). Powers of matrices over an extremal algebra with applications to periodic graphs. Math. Methods Oper. Res. 46:87–102. DOI: 10.1007/BF01199464.
  • Rudy, D., Monico, C. (2020). Remarks on a tropical key exchange system. J. Math. Cryptol. 15(1):280–283. DOI: 10.1515/jmc-2019-0061.
  • Sergeev, S., Schneider, H. (2012). CSR expansions of matrix powers in max algebra. Trans. Amer. Math. Soc. 364(11):5969–5994. DOI: 10.1090/S0002-9947-2012-05605-4.
  • Shpilrain, V. (2008). Cryptanalysis of Stickel’s key exchange scheme. In: Hirsch, E. A., Razborov, A. A., Semenov, A., Slissenko, A., eds. Computer Science – Theory and Applications. Berlin, Heidelberg: Springer, pp. 283–288.
  • Sidel’nikov, V. M., Cherepnev, M. A., Yashchenko, V. V. (1994). Public key distribution systems based on noncommutative semigroups [Doklady Akademii Nauk]. 332(5):566–567, 1993 (in Russian). Translated in: Russian Acad. Sci. Dokl. Math. 48(2):384-386.
  • Stickel, E. (2005). A new method for exchanging secret keys. In: Third International Conference on Information Technology and Applications (ICITA’05), vol. 2, pp. 426–430.