On the Information Security Using Fibonacci Series Balasaheb S Tarle, Assistant Professor in Computer Engg., MVPS’s KABGT College of Engg., Nashik-13.
[email protected]
Abstract As data communication is becoming more pervasive, complex and the use of digital data is becoming much more widespread, data security has become a wider, complex and more important problem. Encryption can be an important tool to help in improving data security. The critical concern in designing an encryption algorithm is the security of the algorithm against undesirable attacks. In my project, the performance of the leading secret key algorithms has been compared on different platforms, using input data files of varying sizes and formats. While comparing the performance of algorithms, the time required to set up the key(s) has been ignored.
Now a day information security becomes a wider, complex and more important problem. Encryption can be an important tool to help in improving day information security. Information encryption mainly is the scrambling of the content of data, such as text, image, audio, video and so forth to make the data invisible during transmission. In this paper work, I developed techniques for securing information to avoid hacking as well as providing the user with some additional features such as key for integrity and validation of user. In this technique one can secure any type of files using Fibonacci series. The proposed encrypt/decrypt algorithm is loss-less, key-dependent. The performance of the popular symmetric key algorithms including DES, 3DES, AES ,Blow fish these algorithms compared with Fibonacci 1.2 Series encryption by encrypting input files of varying contents and sizes. The present Fibonacci encryption/decryption algorithm is implemented in C sharp language, and tested on two different Intel processors, to compare its performance. At present Fibonacci Series Algorithm is used for securing input files of varying contents and sizes using graphical password as key. The results reveal that Fibonacci encryption is the fastest among symmetric
Scope The requirements of data security of any application focus on three major questions: 1: What are user’s needs and how does Data security system meets them? 2: What resources are available for a given security system? Is Problem worth solving? 3: What is the likely impact of the security system on the organization? How can the Problem is redefined? Data security algorithm can be used to avoid hacking of confidential data. Without knowledge of this software a third person cannot access data. The key used for algorithms should be known to the user. This algorithm is most useful in e-commerce, banking, and online transaction processing applications, small or large-scale industry, medical imaging, telemedicine, and military communication and Banking etc.
algorithms.
Keywords Encryption, decryption, keys, Message matrix, cryptography
1. Introduction 1.1
Overview
1.3
Fibonacci Series The Fibonacci series is the emerging area in the data security. The theory of Fibonacci numbers and Fibonacci series has wide use in theoretical physics in resent decades. The new class of square Fibonacci (p+1) (p+1) matrixes are based on Fibonacci pnumbers (p=0, 1, 2, 3 ...). It has been proved that the determinant of any Fibonacci matrix or its power is equal to ±1. An original Fibonacci coding/decoding method follows from the Fibonacci matrices.
Data security is a much wider term than hardware or a software feature. In the entire environment of security, it is necessary to really insure privacy. Everyone in the group must be aware of the security goals and be conscientious in achieving them. Usually security is lost due to slip of security guard. It must be even maintained during the disposal of printouts of previously encrypted data.
1
The general idea of the Fibonacci Series Encryption/Decryption Algorithm is similar to the Fibonacci coding and based on the application of the generalized Fibonacci matrices, the Qp-matrices, for encryption and decryption of the initial message.
between two or more parties that can be used to maintain a private information link.Other terms for symmetric-key encryption are single-key and privatekey encryption.. 2.2 Generalized Fibonacci numbers
1.4
Performance Comparisons
Measurement
and In mathematics, the Fibonacci numbers form a sequence defined recursively by:
The performance of the popular secret key algorithms including DES, 3DES, AES, Blowfish, [3] is compared by encrypting input files of varying contents and sizes. The present Fibonacci encryption/decryption algorithm is implemented in C sharp language, and tested on two different Intel processors, to compare its performance. At present Fibonacci Series Algorithm is used for securing input files of varying contents and sizes. In the end, I conclude that Fibonacci encryption is the fastest among symmetric algorithms. Another advantage of this algorithm is the use of graphical password to generate numerical key. 1.5
That is, after two starting values, each number is the sum of the two preceding numbers. The first Fibonacci numbers, also denoted as Fn, for n = 0, 1, … , are: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657. Sometimes a definition is seen, starting the sequence at F1 = 1, but it is more common to include F0 = 0. It is called generalized Fibonacci numbers.[10] For the given non-negative integer p (p = 0, 1, 2, 3 ...) the generalized Fibonacci numbers called the pFibonacci numbers are given with the following recurrent formula: Fp(n)=Fp(n-1)+Fp(n-p-1) with n>p+1; (2.1) Fp(1) = Fp(2) = ... = Fp(p) = Fp(p+1) = 1 (2.2) The recurrent formula (2.1) at the initial conditions (2.2) generates the infinite number of the numerical series, which numbers are called the p-Fibonacci numbers [10] Form recurrent relation eq.(2.1) and the initial condition eq.(2.2) for calculation of the pFibonacci numbers Fp(0), Fp(-1), Fp(-2), ..., Fp(-p), ..., Fp(-2p + 1). Representing the p-Fibonacci number of Fp (p + 1) in the form of eq. (2,1) we get: Fp (p+1) = Fp (p) + Fp (0). (2.3) Since according to eq. (2.2) Fp(p) = Fp(p + 1) = 1 it follows from eq. (2.3) that Fp(0) = 0. Continuing this process, which is, representing the p-Fibonacci numbers Fp (p), Fp (p - 1),...,Fp(2) in the form eq.(2.1) we get: Fp(0) = Fp(-1) = Fp(-2) = ... = Fp(-p + 1) = 0. (2.4) Let's represent the number Fp (1) in the form: Fp (1) = Fp (0) + Fp (-p). (2.5) Since Fp(1) = 1 and Fp(0) = 0 it follows from eq.(2.5) that Fp(-p) = 1. (2. 6) Representing the p-Fibonacci numbers Fp (0), Fp (1)... Fp (-p + 1) in the form eq. (2.1) we can find that Fp(-p - 1) = Fp(-p - 2) = .. = Fp(-2p +1) = 0.(2. 7) Continuing this process we can get all values of the p-Fibonacci numbers Fp(n) for the negative values of n[10] and now we have all reasons to introduce one more complicated concept, the concept of the generalized Fibonacci matrix called Qp-matrix.
Paper Organization The rest of this paper is organized as follows: section 2 gives a brief introduction of some of existing algorithms used encryption/decryption along with required explanation of Fibonacci series; section 3 provides Fibonacci Series encryption/decryption algorithm that have been chosen for implementation; section 4 provides implementation details, performance measurement and comparison results and finally section 5 concludes the work.
2 Introduction During this time when the Internet provides essential communication between millions of people and is being increasingly used as a tool for commerce, security becomes an important issue to deal with. There are many aspects to security and many applications, ranging from secure commerce and payments to private communications and protecting passwords. 2.1 Symmetric-key algorithms Symmetric key algorithms are a class of algorithms for cryptography that use trivially related cryptographic keys for both decryption and encryption.The encryption key is trivially related to the decryption key, in that they may be identical or there is a simple transform to go between the two keys. The keys, in practice, represent a shared secret
2
2.3 Fibonacci Q-Matrix
Fn n Fn+1 Fn
Fibonacci series was supplemented by the theory of so-called Fibonacci Q-matrix. The latter presents itself the simplest 2 x 2 matrix of the following form: 1 1 Q= 1 0
(2.8)
Fn Fn−1
(2.9)
n
Fn −1 + Fn − 2 Fn − 2 + Fn −3
Fn = F n −1
n-1
Fn −1 Fn − 2
Fn −1 +F n−2
Fn − 2 Fn −3
(2.12)
Q0 = ( 1)
Inverse matrix Q -n from the direct matrix Qn it is necessary to rearrange in eq. (2.2) the diagonal entries Fn+1 and Fn-1 and to take them with the
F
1 -5 -3 5
1
0 -7 -8 -13
-6 5 -8
n −1 n −n opposite sign that is: Q = F − F (2.16) n+1 n Other method to get the matrix Qn follows directly from the expression of (2.9). For that it is necessary to present two sequences of Fibonacci numbers shifted one to another in one column (Table 2.4).
Table 2.4 Fibonacci numbers shifted one to another in one column n
7
6
5
4
3
2
1
0
Fn+1
21
13
8
5
3
2
1
1
1 1 Q1 = 1 0
1 1 0 = Q Q2 = 0 0 1 Q3 1 0 0
1 0 = 0 1
1 0 0 0
0 1 0 0
1 1 0 0 0 0 Q4 = 0 0 1 0 0 0 1 0
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
Let's compare the neighboring matrices Q4 and Q3. It is easy to see that the matrix Q4 is reduced to the matrix of Q3 if we cross out in the matrix Q4 the last (5th) column and the next to the last (4s) row. Note that we have 1 on the crossing out of the 5th column and 4s row. Because the sum 5 + 4 is equal to the odd number of 9 it means that determinant of the matrix of Q3 differs from the determinant of the matrix of Q3 only by the sign, that is, Det Q4 = - Det Q3. (2.18) You should believe that the result eq.(2.18) is valid and that the latter follows from the matrix theory. By analogy it is easy to prove the following correlations for determinants of the neighboring Fibonacci Qpmatrices: Det Q3 = - Det Q2; Det Q2 = - Det Q1. Taking in consideration that Det Q0 = 1 and Det Q1 = -1 we get the following unique mathematical property of the Qp-matrices in the general case.
(2.15)
−F
2 -4 2 -3
(2.17) Where the index of p takes the following values: 0, 1, 2, 3,.....Note that the Qp-matrix is the square (p + 1) (p + 1)-matrix. It contains the p × p unit matrix bordered by the last row of 0's and the first column, which consists of 0's bordered by 1's. For p = 0, 1, 2, 3, 4 the Qp-matrices have the following forms, respectively:
n-2
− Fn Fn+1
3
One can use the idea of the Fibonacci Q-matrix for obtaining the general Q-matrix for the p-Fibonacci numbers [10]. Let's introduce now the following definition for the Qp-matrix:
or Q = Q + Q . (2.13) Let's write the expression (2.13) in the following form: Qn-2 = Qn - Qn-1. (2.14) The inverse matrix Q -n has the following form: F Q − n = n −1 − Fn
5 -3 -1 2
2.4 Fibonacci Matrices
Where Fn-1, Fn, Fn+1 are the Fibonacci numbers. But we know that Det (An) = (Det A)n. It follows from this the following property for the determinant of the Q-matrix: Det Qn = (-1)n (2.10) Where n is an integer. But if we calculate Det Qn using eq.(2.9) and use eq. (2.10) then we get the following identity connecting three neighboring Fibonacci numbers: n D et Q n = Fn −1 + Fn+1 − Fn2 = (− 1 ) (2.11) Thus, this means that the Q-matrix express one of the most important properties of Fibonacci numbers given with eq.(2.11) Let's represent now the matrix eq.(2.9) in the following form: F + Fn −1 Qn = n Fn −1 + Fn − 2
8 -2 1 -1
If we select number n = 1 in the first row of Table 2.4 and then four Fibonacci numbers in two lower rows we can see that a totality of the four Fibonacci numbers forms the Q-matrix. Moving along Table 2.4 to the left about Q-matrix we will get consecutively the matrices Q2, Q3, ..., Qn. Moving to the right about Q-matrix we will get consecutively the matrices Q0, Q -1, ..., Q -n. As example we can see in Table 2.4 the matrix Q 5 and the inverse matrix Q -5.
The determinant of the Q-matrix is equal -1. But what relation has the Q-matrix to Fibonacci numbers? To answer this question it is necessary to take the nth power of the Q-matrix.[11] Then we will get: F Q n = n +1 Fn
13 -1 0 1
3
Det Qp = (-1)p (2.19) Thus the determinant of each matrix eq.(2.17) depends on the value of the index p. If the index p is even then the Det Qp = 1 for all matrices of the kind eq.(2.17). In the opposite case (p is the odd number) Det Qp = 1. Let's consider now the matrix being the nth power of the Qp-matrix.
3 Fibonacci Series Encryption / Decryption Algorithms 3.1. Introduction The Fibonacci series is an emerging area in data security. The general idea of the Fibonacci series encryption/decryption is based on the application of the generalized Fibonacci matrices, the Qp-matrices, for encryption and decryption of the initial message. Let us represent an initial message in the form of the square matrix m of the size (p+1) (p+1), where p=0, n 1, 2, 3, …. Let us choose the Fibonacci Qp-matrix Q p of the size (p+1) (p+1) as an encryption matrix and its inverse matrix Q of the same size as a decryption matrix. Table 3.1 demonstrates the general idea of the Fibonacci encryption/decryption algorithm. Table 3.1: Fibonacci encryption/decryption algorithm
(2.20) Thus, the matrix Q
n p is
expressed through p-Fibonacci
numbers resulting from Pascal Triangle, and the result eq.(2.20) is the new secret of the Pascal Triangle[11]. And now we will try to calculate the determinant of the matrix eq.(2.20). it follows from the matrix theory that DetQpn = ( DetQ p ) n (2.21) Using eq.(2.19) we can write the expression (2.21) in the form: np DetQ p = ( −1) (2.22) Where p = 0, 1, 2, 3... n = 0, ±1, ±2, ±3... And now I can express regarding the result of eq. (2.22) and regarding the power of the mathematical theories. It is really impossible to image that the pFibonacci numbers resulting from Pascal Triangle and this can become the basis of the new and infinite class of the square matrices expressed by eq. (2.17) and (2.20). The result of eq.(2.22) seems to us absolutely incredible. It is impossible to imagine that the determinant of the matrix eq. (2.20) is always equal to 1 or to (-1) that follows from eq.(2.22). It is clear that the expressions (2.20) and (2.22) give unlimited opportunities for the "Fibonacci investigations" because they allow obtaining the infinite number of the fundamental correlations connecting the p-Fibonacci numbers Fp(n). For example for the 2-Fibonacci numbers (p = 2) we have the following correlation connecting the neighboring 2-Fibonacci numbers: Det = F2(n + 1)[F2(n - 2)F2(n - 2) - F2(n - 1)F2(n 3)] +F2(n)[F2(n)F2(n - 3) - F2(n - 1)F2(n - 2)] + F2(n 1)[F2(n - 1)F2(n - 1) - F2(n)F2(n-2)] = 1. n We cannot predict now the role of the Qp -matrices given with (2.20) and their applications in different branches of mathematics, physics and other sciences. However I believe that this result can become fundamental as Pascal Triangle generating pn Fibonacci numbers and Qp -matrices eq. (2.20).
−n p
Encryption
Decryption
E = M × Qpn
M = E × Qp− n
Let us now consider the following transformations based on matrix multiplication: Note that the encryption/decryption key is the pair of the numbers of p and n. Since p = 0, 1, 2, 3, .. and n = 1, 2, 3, ... this means that this method has theoretically we can use unlimited number of the encryption /decryption keys. Let's consider the Fibonacci encryption method:
E = M × Qpn
(3.8)
And then the Fibonacci decryption method M = E × Qp− n (3.9) It follows from eq.(3.8) and eq.(3.9) that the Fibonacci encryption algorithm eq.(3.8) is reduced to the n times multiplication of the initial matrix M by the matrix Qp and the Fibonacci decryption algorithm is reduced to the n-multiple multiplication of the −1 secret message E by the inverse matrix Q p . Note that for the case p=0 the matrix Qp reduces to the trivial matrix Q0 = (1) and for this case the encryption/decryption method given by Table 3.1 is trivial. For the case p=1 the matrix Qp reduces to the classical Q-matrix eq.(2.8). Following terms are used in Fibonacci Encryption/decryption matrix. Where, M - Message Matrix, Q - Matrix generated from Fibonacci series. p - Message matrix i.e. (p+1) (p+1) size and n - nth power of Q- matrix i.e. key 3.2 Fibonacci Series Coding/Decoding
4
1. Read the contents of the source file and store it in one dimensional array named file. 2. Calculate the number of padding bit required. 3. Get the extension of the source file. 4. Allocate the buffer named File Data. It stores the adder bit and file extension. 5. Copy the entire content of the file which was previously stored in file variable into File Data. 6. Allocate the 2D array of size (p+1) (p+1). Then copy the content of the File Data into this 2D array, let us say 2D array as M i.e. Message Matrix. 7. Generate Fibonacci Series as per the values of p & n. 8. Create Qpn matrix depending upon the value of p and n from Fibonacci Series l and neg_l, i.e., positive and negative series respectively. 9. Convolution of Qpn and M matrix to get the resultant value and store these contents in Binary format. i.e. Encrypted Data (E).
n
To develop new coding theory based on the Q p matrices since the simplest Fibonacci Q-matrix. Let's consider the following method of coding. Let's represent the initial message in form of the 2 × 2 m
m
1 2 matrixes: M = m m (3. 1) 4 3 Let us assume that all elements of the matrix eq.(3.1) are positive integers, that is: m1>0; m2>0; m3>0; m4>0 The simplest method e.g. considers a text message is the sequence of the decimal numerals: 358 091 466 725. (3.2) Then I can represent this message (3. 2) in the matrix
358 091 M = 466 725
form:
(3.3)
Suppose now that we have selected for coding a Fibonacci Q-matrix of the 5th power: 8 Q5 = 5
5 3
(3.4)
At the preceding pages I have introduced the notion of the matrix "inverse" to eq.(3.4). Because the number 5 is odd than the matrix "inverse" to eq. (3.4) has the following form: −3 5 Q −5 = 5 −8
Then, the Fibonacci coding of the message M given in the matrix form eq.(3.1) consists of the multiplication of the initial matrix eq.(3.1) by the coding matrix eq.(3.4) that is: m2 8 5 8 + 5m1 × m4 5 3 8 + 5m3
m M × Q5 =1 m3
5m2 = 5m4
3m+m1 1' 3m+m3 3'
m2' m4'
(3.5)
m1' = 8m1 + 5m2
Where,
m2' = 5 m1 + 3m2
(3.6)
m3' = 8 m3 + 5m4 m4' = 5 m3 + 3m4
We remember that the "matrix multiplication" is mathematical operation distinguished from the traditional "multiplication". We can see from the example eq.(3.5) that the product of two square matrices M and Q5 is the matrix E of the same size, which elements are calculated according to (3..6).Let's apply my calculations to our example eq. (3.3). Then the procedure of the Fibonacci coding brings us into the following matrix E: 3 58 M× Q = 466 5
After
09 1 725
that
8 5
5 × × 3 ×
8 +3 5 8 × 5 9 1 = 8 4+ 6 6 × 5 7 2 5
the
E = m1' m2' m3' m4' = 3319206373534505
5 × 3 5 8 +3 9×1 5 × 4 6 6 3+ 7 ×2 5
3.4 Fibonacci Series Decryption algorithm 1. Read the contents of the encrypted file. 2. Create the buffer of the size (p+1) (p+1) and transfer the content from file variable into this buffer. 3. Let say this buffer as E i.e. Encryption data Matrix 4. Generate Fibonacci Series as per the values of p & n. E = 5. Generate= Q inverse matrix by using this Fibonacci Series. Which is stored l and neg_l i.e. +ve & -ve series respectively. 6. Then Q & E Matrix is convolution 7. Resultant value is manipulated depending upon the counter value if the counter value is 1 the resultant values represent the padding bit. 8. If the resultant value of counter in the range of 2-4, the convolution value represents file extension of the counter. 9. The convolution values are written to the File. i.e. original message (M). −n p
−n p
3.5 Graphical Password 3319 7353
coded message is sent to the
communication channel. 3.3 Fibonacci Series Encryption algorithm
5
A graphical password is an authentication system that select from images, in a a graphical user interface (GUI). For this reason, the graphical-password approach is sometimes called graphical user authentication (GUA). A graphical password is easier than a text-based password for most people to remember. Suppose an 8-character password is necessary to gain entry into a particular computer network. Instead of numerical
2 0 6works 3 user E by = having the = 4 5 0specific 5 order, presented in
character, for example, a user might select images from the image file. Graphical passwords may offer better security than text-based passwords because many people, in an attempt to memorize text-based passwords, use plain words (rather than the recommended jumble of characters). A dictionary search can often hit on a password and allow a hacker to gain entry into a system in seconds. But if a series of selectable images is used on successive screen pages, and if there are many images on each page, a hacker must try every possible combination at random. If there are 100 images on each of the 8 pages in an 8-image password, there are 1008 possible combinations that could form the graphical password, According the concepts of graphical password, possible combinations are 2’s power of 640x480 due to the image size is 640 x 480. The value of p and n are calculated from the standard deviation of the x and y coordinates the following formulas are used to calculate the p and n.
4.2. Measuring Execution Time Methodology Performance measurements were conducted by determining the amount of time required to perform cryptographic operations of an algorithm. I measured how many bytes of data could be encrypted in one second. We measured the time taken to perform a particular operation. We used the stopwatch to calculate the execution time for data Encrypt/Decrypt [12]. API to calculate the processor time consumed in the execution of the algorithms. A tick counts which increments 100 times per second when the algorithm is in the running mode. This stopwatch is initialized to zero every time when it is reset. Since the rate of the tick count is not so high, several iterations of the same operation are required to be carried out in order to achieve a finer resolution on the speed of that operation. Execution time is manipulated after every 10ms .For this algorithm, a number of tests was conducted. 4.3. Measuring Execution Times
p = ∑ { ( Xi max X) gridnumber}
Measuring Execution Times Obtaining accurate and repeatable execution time measurements proved to be more difficult than was originally anticipated. After many experiments, it was decided to settle on the use of a Pentium-III 700 MHz machine (running Microsoft Windows operating system) and a Pentium-4, 2.4 GHz machine (running Microsoft Windows XP operating system)[10] as the basis for time measurements. Because the primary goal was to measure the encryption/decryption times of algorithms, the initialization and key set-up times were excluded from the comparison. Also, because decryption time is generally the same as encryption time for almost all the algorithms, therefore only the encryption times are taken for comparison.
n = ∑ { ( Yi max Y) gridnumber}
Where, Xi and Yi are the co-ordinates p - Message matrix size n - Numerical key generate through above formula. Where user had clicked on the image from the above formulae, we can generate random values of p and n, i.e. numerical keys are generated. We can use this key for file encryption/decryption.
4 Implementation and Testing 4.1. 1.
2.
3.
The C# Platform: C# is considered platform independent because this feature of C# makes sure that the programs will run on any platform. Thus, the implemented algorithm can be tested on a variety of platforms for comparison purposes. C# provides a large library of built-in classes and methods that assist the programmer in writing code for cryptographic algorithms. For example, the Int32 Integer class in c# Conversion from integer to string and vice versa. Dot net provides in built classes File Info Binary Reader, Binary Writer, Stream Reader, and Stream Writer, are used for file reading and writing in binary format. Fibonacci Series algorithm was implemented as is, using a C sharp language, and was tested on a different platform.
4.4. Performance Results for Block Ciphers The execution results of symmetric key algorithms in ECB (Electronic Codebook) mode are presented first. These results are shown Table 4.1and Table 4.2, for execution of code on a Pentium-III 700 MHz machine, and Pentium-4, 2.4 GHz machine respectively.
6
Input file size (KB) 20.05 35.16 44.45 58.50 68.00 134.1 155.35 162.50 187.00 227.00 1085.44 4454.40 11673.60 21606.40 29593.60
*DES
*3DES
*AES
*BF
FC
2 4 5 7 9 17 20 21 24 30 -
7 13 17 23 26 51 60 62 72 87 -
4 6 8 11 13 26 30 31 36 44 -
2 3 4 6 7 14 16 17 19 24 -
0 0 0 0 0 0 0 5 10 22 55 190 225 414 743
*All the data above table is according the ref. [10]. Table 4.1: Comparative execution times (in sec) of algorithms in ECB Mode on a Pentium-III, 700 MHz machine
Fig 4.1: Performance graph DES and Fibonacci Table 4.2: Comparative Execution Times (in seconds) of algorithms in ECB mode on a Pentium4.2.4 GHz machine Input file size (KB) 20.05 35.16 44.45 58.50 68.00 134.1 155.35 162.50 187.00 227.00 1085.44 4454.40 11673.60 21606.40 29593.60
*DES
*3DES
*AES
*BF
FC
24 48 57 74 83 160 190 198 227 275 -
72 123 156 202 243 451 543 569 655 799 -
39 74 94 126 143585 324 355 378 460 228 -
19 35 46 58 67 135 158 162 176 219 -
6 10 12 15 20 38 42 44 46 48 54 229 575 1176 1598
*All the data above table is according the ref.[10].
Fig. 4.2: Performance graph DES and Fibonacci Encryption Algorithm on a Pentium 4.2.4 GHz machine 4.5. Performance Results for Different File Sizes and Formats In my paper work, I have tested different sizes of files and formats with their encryption and decryption execution time. Following table shows the execution time (ms) with file size (KB). The Fibonacci Encryption/Decryption algorithm the execution time was measured to any type of file format. Table 4.3: Comparative execution times (in sec) of Fibonacci Encryption/Decryption algorithm in different files size & format mode on a Pentium-4, 3.06 GHz machine
7
I/P file size (KB) 41.00 KB 62.00 KB 227.00 KB 515.00 KB 1.06 MB 2.32 MB 5.10 MB 11.70 MB 40.4 MB 49.30 MB
File format type DOC AVI MP3
PPT
DAT
0.00 0.00 0.04 0.11 0.18 0.43 1.05 2.45 9.37 10.6
0.00 0.00 0.05 0.12 0.19 0.45 1.05 2.47 9.40 10.7
0.00 0.00 0.05 0.11 0.20 0.45 1.04 2.44 9.38 10.6
0.00 0.00 0.05 0.11 0.18 0.43 1.30 2.48 9.38 10.6
0.00 0.00 0.05 0.12 0.20 0.44 1.05 2.41 9.36 10.62
5
1
8
3
A proposed direction for the future work could be to analyze the performance/security trade-off in greater depth. For instance, the impact of these and other such factors on the overall performance of an algorithm needs to be measured.
References [1] W. Diffie and M. E. Hellman, “New directions in cryptography,” IEEE Trans. Inform Theory, vol. IT22, pp. 644–654, Nov. 1976 [2] R. L. Rivest, A. Shamir, and L. Adleman, “A method for obtaining digital signatures and publickey cryptosystems”, Commun. ACM, vol. 21, no. 2, pp, 120–126, Feb.1978. [3] Gary C. Kessler,” An Overview of Cryptography”, McGraw-Hill, May 1998. [4] Duncan S. Wong, Hector Ho Fuentes and Agnes H. Chan, “The Performance Measurement of Cryptographic Primitives on Palm Devices”,IEEE MILCOM 2001 Conference Proceedings, Oct 2001. [5] Schneider, B.:"Description of a New VariableLength Key, 64-Bit Block Cipher (Blowfish)", Fast Software encryption, Cambridge Security Workshop Proceedings Dec. 1993. [6 Atul Kahate,“Cryptography and Network Security”, Tata McGraw-Hill,2003. [7] Christian Nagel, Bill Evjen, Jay Glynn, Morgan Skinner, Karli Watson, Allen Jones,” Professional C# 2005”, Wrox , Wiley Publication. [8] Aamer Nadeem, Dr. M.Y.Younus Javed, “A Performance Comparison of Data Encryption Algorithms”, 2005 IEEE. [9] Jiancheng Zou , Rabab K. Ward , Dongxu Qi, “ A New digital image Scrambling method based on Fibonacci Numbers”, 2004, IEEE. [10] Najib A. Kofahi, Turki Al-Somani and Khalid Ai-Zamil, “Performance Evaluation of Three Encryption/Decryption Algoriithms”, 2004 IEEE. [11] A.P. Stakhov, “Fibonacci Matrices, A Generalization of the “Cassini Formula”, and new coding theory”, Chaos, Solitons and Fractals, Volume 30, Issue 1, 2006, [12] A.P. Stakhov, “Fibonacci Matrices, A Generalization of the “Cassini Formula”, and new coding theory”, Chaos, Elsevier, Volume 30, Issue 1, 15 Feb 2006.
In my paper work, I measured file Encryption/Decryption time for different file size as well as different files format, as per the results was getting to encrypt/decrypt file the execution time is same. Only the difference is ±0.05 ms.
5
Conclusion
The Fibonacci encryption/decryption algorithm is the main application of the Fibonacci Qp- matrices. Fibonacci encryption/decryption algorithm reduces to matrix multiplication, i.e. to well-known algebraic operation, which is realized very well in modern computers. The performance of the popular secret key algorithms including DES, 3DES, AES and Blowfish, is compared with Fibonacci Series encryption by encrypting input files of varying contents and sizes. The present Fibonacci encryption/decryption algorithm is implemented in a C sharp language, and tested on two different Intel processors, to compare its performance. At present Fibonacci Series Algorithm is used for securing input files of varying contents and sizes. Thus a demo of new techniques of Encryption, Decryption in any type file is being presented in my paper. The results reveal that Fibonacci encryption is the fastest among symmetric algorithms. Another advantage of this algorithm is the use of graphical password to generate numerical key. Thus the implemented algorithm finds its place in variety of applications such as e-commerce, banking, and online transaction processing applications, small or large-scale industry, Internet communication, multimedia systems, medical imaging, telemedicine, and military communication, Software Developers, Personal use, Educational, Business, and Banking etc.
8