0% found this document useful (0 votes)
28 views6 pages

Paper 12-Application of The Tabu Search Algorithm

This document summarizes a research paper that applies the Tabu search algorithm to cryptography. Specifically: 1) The researchers designed a symmetrical encryption algorithm based on the Tabu search heuristic. Tabu search performs multiple searches among solutions and stores the best ones in adaptive memory. 2) They coded the encryption problem as a scheduling problem that Tabu search could solve. Then they applied Tabu search using an appropriate coding and evaluation function. 3) Experiments showed the strengths of their new "Symmetrical Tabu Search Ciphering" system (STSC) and areas for improvement. It was compared to other symmetrical encryption algorithms like SEC and SMC.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views6 pages

Paper 12-Application of The Tabu Search Algorithm

This document summarizes a research paper that applies the Tabu search algorithm to cryptography. Specifically: 1) The researchers designed a symmetrical encryption algorithm based on the Tabu search heuristic. Tabu search performs multiple searches among solutions and stores the best ones in adaptive memory. 2) They coded the encryption problem as a scheduling problem that Tabu search could solve. Then they applied Tabu search using an appropriate coding and evaluation function. 3) Experiments showed the strengths of their new "Symmetrical Tabu Search Ciphering" system (STSC) and areas for improvement. It was compared to other symmetrical encryption algorithms like SEC and SMC.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

(IJACSA) International Journal of Advanced Computer Science and Applications,

Vol. 8, No.7, 2017

Application of the Tabu Search Algorithm to


Cryptography
Zakaria KADDOURI1
Fouzia OMARY2
Laboratory of computer science research
Laboratory of computer science research
Department of Computer Science
Department of Computer Science
Mohammed V University Abu Dhabi
Mohammed V University – Faculty of Sciences Rabat
Abu Dhabi, United Arab Emirates
Rabat, Morocco

Abstract—Tabu search is a powerful algorithm that has been This design is based on the enrichment of the search space
applied with great success to many difficult combinatorial and the application of a well-defined model during the process
problems. In this paper, we have designed and implemented a of Tabu search. We notice that the random aspect used in our
symmetrical encryption algorithm whose internal structure is algorithm is crucial to the success of the method, especially if
mainly based on Tabu search algorithm. This heuristic performs the number of iterations is relatively small.
multiple searches among different solutions and stores the best
solutions in an adaptive memory. First of all, we coded the In the next section of this article, we describe the general
encryption problem by simulating a scheduling problem. Next, algorithm of TABU search and we present a detailed
we have used an appropriate coding for our problem. Then we description of our encryption algorithm entitled Symmetrical
used the suitable evaluation function. Through the symmetric Tabu Search Ciphering (STSC). Then, we will analyze the
key generated by our algorithm, we have illustrated the principle security of our approach, and we will compare it with same
of encryption and decryption. The experimentations of our kind of systems SEC (Symmetrical Evolutionist-based
approach are given at the end of this paper, from which we Ciphering) and SMC (Symmetrical Memetic Ciphering).
examined our new system strengths and the elements that could
be improved. II. DESCRIPTION OF TABU SEARCH
Keywords—Symmetric encryption; heuristic; Tabu search; A. Definition
algorithm; scheduling problem; combinatorial problems Tabu search was proposed by F.Glover in 1986. The
algorithm is called Tabu because there is prohibition from
I. INTRODUCTION resuming recently visited solutions [8]. Since then, the method
Since the invention of writing, men expressed the need to has become very popular, thanks to its successes to solve many
transmit information securely making it unintelligible to problems. This algorithm introduces a notion of memory in the
anyone outside the exchange. Indeed the messages cannot be strategy of the search space exploration [9]. Tabu search uses
understood by the enemy, even if they are intercepted. At the local or neighborhood iterative procedures to move from
current time, information in all its form circulates in digital solution x to a solution x' (in the vicinity of x) until the
format throughout the world in a split second on the networks. stopping conditions are met [10].
This information is exchanged every day from one point to
another either by telephone, cable, optical fiber or satellite. It is B. Principle of Tabu Search
likely to be read, deleted or falsified. Cryptography is a science The principle of Tabu search is based on a method of
in full operation and meets the needs of today’s information moving on the space of the solutions, while continually seeking
security [1]. Metaheuristics are a family of optimization to improve the current best solution and by storing in memory
algorithms that are designed to solve general classes of the list of previous moves [11], thus guiding the research
mathematical problems by combining research procedures to outside the previously traveled zones.
quickly find the best solution [2]. Tabu search is an example of
The basic idea is inspired by the research techniques used
such a heuristic. It starts from an initial solution and attempts to
in artificial intelligence. That is to keep the track of the past
improve it by transforming it iteratively. At each iteration, the
path of the research process in one or more memories and to
neighborhood of the current solution is generated and the best
use this information in order to orient future development. In
solution in this neighborhood is chosen. To avoid circling, a
practice, we will not memorize all the displacement (very
Tabu list is defined to prohibit revisiting of the solutions
costly in memory), but we will prevent only the access to some
already examined [3], [4].
solutions during a certain number of iterations.
We will apply the Tabu search in the main phase of
The neighborhood of a solution is defined by an elementary
cryptography. To start, we have transformed the problem of
transformation (movement) permitting the switch from a
encrypting a message M to an optimization problem like to
solution to another solution nearby with a slight modification
Evolutionary Ciphering System [5]-[7]. Then, we coded this
of the structure of the solution.
problem in a particular way to bring us back to scheduling
problems. The Tabu search is based on:

82 | P a g e
www.ijacsa.thesai.org
(IJACSA) International Journal of Advanced Computer Science and Applications,
Vol. 8, No.7, 2017

 The use of flexible memory structures (short, medium Put T ← and s* ← s;
and long term) allowing the full exploration of the Repeat
evaluation criteria and the search history. Choose s' that minimizes f (s') in NT (s)
 A control mechanism based on alternating between the If f (s') <f (s*) then put s * ← s'
conditions that restrict (restriction Tabu) and those that Put s ← s' and update T
liberate (aspiration criterion) the search process. Until the termination criterion is satisfied
End
 The incorporation of the strategies of intensification and
diversification of the search: III. DESCRIPTION OF OUR ALGORITHM
o Intensification strategy uses the medium term A. Problem formalization
memory, and serves to strengthen the search in the
regions of the best solutions found recently. We denote by M , the binary encoding of the message M0:

o Diversification strategy uses the long term We represent the message to be encrypted by the lists
memory, and serves to search in new regions. which are the elements of a partition of the set {1, 2, ..., m}.
The lists are composed by the different positions of each binary
C. General Algorithm of Tabu Search block. Let B1, B2, ..., Bm the different blocks of M.
We present below the general algorithm of Tabu search: Let Li (1 ≤ i ≤ m) a list containing the different positions
1) Get an initial solution (initialization). of the block Bi and card (Li) the number of occurrences of Bi.
2) Create a list of candidates’ movements. Note. This breakdown only takes place for larger size
3) Choose the best candidate. This choice is based on messages.
Tabu restrictions and the aspiration criteria.
We note that Li ∩ Lj = ø if i ≠ j, ∀ i, j ∈ {1,2,..., m}.
This provides an alternative, which will not be registered
only if it is better than the previous solution [12]. The message M may be represented by the following
vector:
4) Apply the stopping criterion.
(B1,L1) (B2,L2) … (Bm,Lm)
 Continue: change the candidates of eligibility (Tabu
restriction and aspiration criterion). Go to 2. Our algorithm seeks to create a maximum disorder in the
 Stop: Go to strategies of intensification and positions of the blocks. For this, we iteratively change the
diversification. distribution of lists Li (1 ≤ i ≤ m) on the different blocks of B
(without changing the content of the lists) so that the difference
The flowchart of Tabu search method is shown in Fig. 1. between the cardinal of the new list assigned to each block Bi
The general algorithm can be represented with the and the cardinal of the original list Li is maximal [13].
following pseudo-code: Therefore, we are faced with a problem of optimization and we
can use the Tabu search method, including that used in
Let NT (s) be all candidate solutions, T the tabu list, N(s) scheduling problems. The latter has several versions, the most
the neighborhood of solutions and s* the current optimal used is the one described below:
solution:
NT (s) = {s'  N (s) such as s'  T or f (s') <f (s*)} Definition of variables
Process Tabu_method (initial solution s)  i: the current solution
 i’: the next solution achieved (neighbor solution)
 N(i): the space of neighboring solutions at i (the set of
i')
 m: movement from i to i'
 Best_Sol: the global optimal solution that minimizes
the objective function f(i).
 i*: the current optimal solution f(i*)
 T: list of Tabu movements. There can be multiple lists
simultaneously. The elements of the list are t(i, m).
 a (i, m): criterion for aspiration. Determines when it is
advantageous to undertake m, despite its status Tabu.
B. Skeleton of the Algorithm
To represent this, we have:
Fig. 1. Flowchart of Tabu search method.

83 | P a g e
www.ijacsa.thesai.org
(IJACSA) International Journal of Advanced Computer Science and Applications,
Vol. 8, No.7, 2017

 Tabu List: contains prohibited movements.


 Movement (to go from one solution to another) is to
swap randomly the positions of the two lists of the
current solution
 The function f to minimize: eliminates solutions for
which only a minority of list values have changed over
initial solution.
Step 1: Choose an initial solution i in S (the set of
solutions) that we call Original-Sol
A solution is a vector v of size m. The content of v is the list
Li (1 ≤ i ≤ m) of position blocks. Lj is the jth list which contains
the new positions that will take the block Bj.
We apply a random permutation algorithm on the initial
solution.
i *= i
k=0 Fig. 2. Flowchart of STSC algorithm.

T=0 Let Best_Sol (the global optimal solution) the final solution
given by STSC. We create our encryption key (Tabu-key) from
Step 2: k = k +1 and generate a neighborhood of solutions Original_Sol and Best_Sol, Then, using the Tabu-key generated
in N (i, k): by our algorithm we set the corresponding cipher text block by
The neighborhood of the solutions will be generated by the changing the distribution lists on the various characters of the
application of permutations on the positions of the lists. message M. Then, we concatenate the encrypted blocks
Precisely, we apply random permutation on the positions of the (obtained by different processes). Thus, we obtain the
current solution in order to generate neighboring solutions. encrypted message M from the original message M0.
 The Tabu movements are not selected. C. Decryption
Decryption must begin by looking for the reciprocal
 An aspiration criteria a (i,m) is applicable.
operation of the last encryption one. The message M will be
Step 3: Choose the best solution i' from the set of neighboring broken down again into m blocks Bi that have the same size.
Because of the Tabu-key the blocks are going to recover their
solutions N (i, k) lists of corresponding positions [22].
i = i' The principle of encryption and decryption can be
Let i’ be a solution of N (i, k) in which the lists are L’j1, L'j2 summarized by the scheme in Fig. 3.
... L'jm, and let f be the evaluation function on the set of
solutions i'
by:
f (i') = -∑ –
Step 4: If f (i) ≤ f (i *), a better solution was found
i*= i
Step 5: Update the list T and the criteria aspiration.
Add the best solution in Tabu list (it is Tabu for the next r
iterations).
Step 6: If a stop condition is reached, stop.
Alternatively, return to Step 2.
The flowchart of STSC algorithm is shown in Fig. 2. Fig. 3. Scheme of our encryption system.

84 | P a g e
www.ijacsa.thesai.org
(IJACSA) International Journal of Advanced Computer Science and Applications,
Vol. 8, No.7, 2017

IV. EXPERIMENT RESULTS TABLE. I. RECAPITULATIVE OF THE RESULTS OF THE CONVERGENCE


SYSTEM
We used our algorithm to encrypt and decrypt files such as
document, image, audio, etc. The experimental environment is Size of Size of Blocks
Neighbors
as follows: Processor: Intel® Core ™ i5-2450M (2.50 GHz), 4 plaintext 5 6 7 9 10 11 12
Go of RAM; Operating System: Windows 7-x64; 20 47 57 44 55 64 79 91
Programming language: Java. 1000
30 59 60 78 71 60 75 89
Characters
A. Comparison of the Frequencies Analysis 40 67 54 90 78 76 89 98
Comparing the frequency analysis is a very important
indicator in cryptography [14]-[16]. To illustrate the 20 42 59 76 63 98 86 73
performance of the new system STSC, we tested our program 3000
30 56 48 79 98 120 93 112
on several messages with different sizes. Characters
40 66 54 96 102 80 115 104
The results are shown graphically in Fig. 4.
In fact, due to the binary coding and the implementation of 20 46 66 59 75 92 84 106
the system encryption STSC, the frequencies of the characters 6000
30 61 63 72 88 90 81 95
Characters
are no longer recognized. Therefore, cryptanalysis based on the 40 71 72 86 99 93 82 99
study of the occurrence frequency cannot rely on incorrect
statistics.
20 56 61 77 73 93 107 90
B. Configuration 10000
30 58 67 81 70 83 85 94
Characters
We test our system on several texts of different sizes, and 40 53 51 80 79 76 87 111
for each one of them, we try to find the best parameters to
achieve the optimal solution in an ideal time. For this, we Denote by NL the maximum number of different lists
record the results on the number of iterations needed for the constituting our key, KN the maximum number of different
convergence of the system. Table 1 shows these results. keys generated by STSC and by PA the probability to
encounter the right key is equal to the inverse of KN.
We can see that in the case where the size of the binary
blocks is k = 5 or k = 6, our system converges and generates the Table 2 summarizes the relation between the number of
encryption key in less operations compared to the other cases. different blocks and the security of our approach.
C. Security Analysis It is noted that even in the case where the size of the text
1) Security key desired to be encrypted is small and the number of different
Let Xn = {1, 2, ..., n} be a permutation of n separate lists. blocks is reduced, the probability to fall on the correct key is
For n ∈ ℕ*, denote by En the set of the possible permutations of very small or almost nil. We also note that the security of our
Xn., En = <X1; X2; X3 ; X4 ; ...... ; Xn >. approach clearly increases along with the number of different
blocks.
Counting the permutations of X back to enumerate all n-
tuples formed of integers from 1 to n in some order. There are 2) Complexity of Brute Force Attack
n choices for the first term of the permutation. Then for each of The key length is an important security parameter [17].
these first choice, there are n–1 possibilities for the second Generally, the level of security of the encryption system is
choice, n-2 to the third, and so on. Finally, according to this based on the size of the keys used (the longer the key size, the
principle the cardinal of En is n! more robust the encryption system). The key to our system is
composed of two elements: the Tabu-key and the block size 'k'.
 The Tabu-key size is the product of the number of
different blocks (NDB) and 8 bits.

TABLE. II. SUMMARY SHOWING THE RELATION BETWEEN THE NUMBER


OF DIFFERENT BLOCKS AND THE SECURITY OF OUR APPROACH

Size of NL KN PA
blocks
5 25 32! 3 ,80 e-36

7 27 128! 2,59 e-216

9 29 512! 2,87 e-1167

10 210 1024! 1,84 e-2640


Fig. 4. Graphical representation of the appearance frequencies of different 11 211 2048! 5,97 e-5895
characters in the plaintext and the cipher text with STSC.

85 | P a g e
www.ijacsa.thesai.org
(IJACSA) International Journal of Advanced Computer Science and Applications,
Vol. 8, No.7, 2017

TABLE. III. RECAPITULATIVE PRESENTION OF THE RESULTS OF THE KEYS TABLE. IV. VALUES OF PARAMETERS RELATING TO SEC, SMC AND STSC
SIZE GENERATED BY STSC AND THE COMPLEXITY OF THE BRUTE-FORCE SYSTEMS
ATTACK
Parameters SEC SMC STSC
Size of blocks Population size 30 30 -
Size of
Data
Plaintext 5 6 7 9 10 11 Probability of crossover 0.7 0.7 -
NDB 26 55 109 297 310 485
Probability of mutation 0.03 0.03 -
1000 STSC Key
216 448 880 2384 2488 3888 Size of neighborhood - 10 50
characters (bit)
Complexity 216 448 880 2384 2488 3888 Size of the tabu list - - 100
2 2 2 2 2 2
of BFA
Aspiration Criterion - - 50
NDB 27 59 115 315 324 599
STSC Key Nombre d’itérations Max 100 100 200
3000 224 480 928 2528 2600 4800
characters (bit)
Complexity TABLE. V. SIMULATION RESULTS OBTAINED BY SEC, SMC AND STSC
2224 2480 2928 22528 22600 24800
of BFA SYSTEMS
NDB 30 68 116 335 378 629
Memetic
STSC Key Optimization Evolutionary Tabu search
6000 248 552 936 2688 3032 5040 algorithm
(bit) methods algorithm (SEC) (STSC)
characters (SMC)
Complexity
2248 2552 2936 22688 23032 25040 Number of
49 28 88
of BFA iterations
We calculate the number of different blocks existing in the Optimum Global 5 20 50
texts to determine the size of the encryption STSC key.
Execution time (ms) 69 55 47
In the case of keys used by the system STSC the length is Time for a single
1,40 1,96 0,53
given in bits. In this case, the number of possibility to explore iteration (ms)
for a brute force attack (BFA) is in the order of 2N where N is They actually present the best configuration for which the
key length in bit, since the key is randomly generated. global minimum is obtained.
Table 3 summarizes the results of the key size generated by
STSC and the complexity of the brute-force attack.
With the current technology a 128-bit key length is already
a limit impossible to achieve. If we compare the minimum key
length of our system with the recommended size for symmetric
systems that ensure a basic security, we can deduce that our
system is able to resist against the brute-force attacks more
than most other existing systems. The attacker must consider
other cryptanalysis strategies if they exist. It should
nevertheless take into account that the power of computers is
increasing every day and an indecipherable message today can
be decipherable in the future.
D. Comparison Between the Performances of STSC System
with Existing Systems
To illustrate the effectiveness and performance of the new
Fig. 5. Evolution of the cost by applying the SEC algorithm.
STSC system compared to older systems, we tested our
program on multiple messages with different sizes and we
recorded the number of iterations required for the system to
converge.
The comparison is based not only on the quality of the
results but also on the speed of convergence and computation.
Table 4 summarizes the values of the parameters used by
the SEC, SMC and STSC systems to encrypt a text whose size
is 6000 characters.
Table 5 presents the results obtained by applying the three
precited algorithms.
Fig. 5 to 7 shows graphs of different values of the
evaluation function.
Fig. 6. Evolution of the cost by applying the SMC algorithm.

86 | P a g e
www.ijacsa.thesai.org
(IJACSA) International Journal of Advanced Computer Science and Applications,
Vol. 8, No.7, 2017

[2] Colin B. Reeves. Modern Heuristic Techniques for Combinatorial


Problems. JohnWiley & Sons. Great Britain, 1993.
[3] Glover F, Laguna M. Tabu Search. Kluwer Academic Publishers,
Norwell, MA, 1997.
[4] Glover F, Kelly J.P, Laguna M. Genetic Algorithms and Tabu Search:
Hybrids for Optimization. Computers and Operations Research 1995;
22: 111 – 134.
[5] Omary F. Applications des algorithmes évolutionnistes à la
cryptographie. University of science, Rabat, Morocco, 2006.
[6] Omary F, Tragha A, Lbekkouri A, Bellaachia A, Mouloudi A. An
Evolutionist Algorithm to Cryptography. Brill Academic Publishers –
Lecture Series and Computational Sciences 2005; 4: 1749-1752.
[7] Omary F, Tragha A, Bellaachia A, Mouloudi A. Design and Evaluation
of Two Symmetrical Evolutionist-Based Ciphering Algorithms.
International Journal of Computer Science and Network Security
(IJCSNS) 2007; 7: 181-190.
[8] Glover F, Tabu search, part I. ORSA. Journal of Computing 1989; 1:
Fig. 7. Evolution of the cost by applying the STSC algorithm. 190-206.
[9] Ji M, Tang H. Global Optimizations and Tabu Search Based on
From Fig. 5, we can notice that the convergence of the SEC Memory. Applied Mathematics and Computation 2004; 159: 449 - 457.
system is achieved in the 49th iteration to a global minimum [10] Hanafi S. On the Convergence of Tabu Search. Journal of Heuristics
equal to 5. From Fig. 6, the SMC system stops at the 28th 2001; 7: 47-58.
iteration with an optimum value of 20 and from Fig. 7 we can [11] Hertz A, Taillard E, Werra D. A Tutorial on Tabu Search. Proc.
see that the best configuration for the STSC system, giving the of Giornate di Lavoro AIRO 1995; 95: 13-24.
optimum overall equal to 50, is reached after 88 iterations. [12] Hertz A, Widmer M. Guidelines for the use of meta-heuristics in
combinatorial optimization. European Journal of Operational Research
From Table 5, the encryption system STSC turns out faster 2003; 151: 247-252.
in terms of computation time than the other two SEC and SMC [13] Mouloudi A, Omary F, Tragha A, Bellaachia A. An Extension of
systems. evolutionary Ciphering System. International Conference on hybrid
Information Technology 2006; 1: 314-321.
V. CONCLUSION [14] Labouret G. Introduction à la cryptographie. Support du cours du
cabinet Hervé Schauer (HSC). France, 2001.
Tabu search is a very efficient new meta-heuristic; it can
solve a wide range of problems. [15] Stinson D. cryptography theory and practice. Discrete Mathematics and
Its Applications. Canada, 2003.
In this article, the first adaptation of the meta-heuristic [16] Schneier B. Applied Cryptography. John Wiley & Sons, France, 1996.
“Tabu search” cryptography was presented. The proposed [17] Florin G, Natkin S. Les techniques de la cryptographie. CNAM. France,
algorithm uses a variable-length encoding to represent a 2002.
symbol of the data input, which allows the encryption of any http://deptinfo.cnam.fr/Enseignement/DESS/surete/securite/courcry.pdf
kind of information (text, image, sound, etc.). [18] Omary F, Tragha A, Lbekkouri A, Bellaachia A, Mouloudi A. A New
Ciphering Method Associated with Evolutionary Algorithm.
Our system generates a secret key that we call “Tabu-key” Computational Science and Its Applications; ICCSA 2006; Lecture
which has the essential qualities to be efficient and able to Notes in Computer Science 2006; 3984: 346-354.
resist against the brute-force attacks. According to the results [19] Kaddouri Z, Mise en œuvre de nouvelles techniques pour la securite
informatique basees sur les algorithmes evolutionnistes et les fonctions
of the occurrence frequencies of the characters obtained, we de hachage. University of science, Rabat, Morocco, 2014.
have shown that this method blocks the way against all the [20] Kaddouri Z, Omary F, Abouchouar A. Binary Fusion Process to the
attacks which are based on the study of the occurrence Ciphering System “Sec Extension to Binary Blocks”. Journal of
frequencies of characters in a cipher text. We can also increase Theoretical and Applied Information Technology 2013; 48: 067-075.
the security of our system by combining it with another [21] Kaddouri Z, Omary F, Abouchouar A, Daari M. Balancing Process to
encryption method such as [18]-[22]. the Ciphering System Sec. Journal of Theoretical and Applied
Information Technology 2013; 52: 092-093.
REFERENCES
[22] Kaddouri Z, Omary F. New Symmetrical Ciphering Approach Based on
[1] Delfs H, Knebl H. Introduction to Cryptography: Principles and Memetic Algorithm. International Journal of Engineering and
Applications. Second edition. Springer. United States of Technology 2014; 6: 2728-2737.
America, March 2007.

87 | P a g e
www.ijacsa.thesai.org

You might also like