You are on page 1of 11

FractalCrypt: Secure Data Encryption using

Chaos Game Algorithm

Shreyash Hatkar1

Vellore Institute of Technology, Chennai, India


shreyash071003@gmail.com

Abstract. FractalCrypt is a novel data encryption algorithm that uti-


lizes the Chaos Game Algorithm to provide secure data encryption. This
research paper explores the implementation, analysis, and evaluation of
FractalCrypt as a potential encryption solution. The paper begins with
an introduction to the Chaos Game Algorithm and its application in
FractalCrypt, highlighting the algorithm’s unique properties and advan-
tages. The fractal pattern generation of Chaos Game with different im-
pact factors is also analysed. The performance of FractalCrypt is then
assessed through a comprehensive evaluation of encryption speed and
computational complexity, comparing it with widely used encryption al-
gorithms such as AES and RSA which exists in encrytion techniques
over years. The findings demonstrate that FractalCrypt exhibits com-
petitive encryption speeds for smaller data sizes, along with efficient
resource utilization. A detailed security analysis is conducted, assessing
FractalCrypt’s resistance against common cryptographic attacks, includ-
ing brute-force attacks, differential attacks, and chosen-plaintext attacks.
The analysis reveals that FractalCrypt highlights ensuring resistance
against these attacks, while acknowledging the need for ongoing research
and evaluation. Additionally, the key management aspects of Fractal-
Crypt are discussed, covering key generation, distribution, and storage,
emphasizing the significance of robust key management practices. The
paper concludes by highlighting the contributions of FractalCrypt to the
field of data encryption and discussing its potential for practical applica-
tions, particularly in scenarios where efficient encryption of smaller data
sizes and resource-constrained environments are essential. Furthermore,
the research paper proposes future research directions, including opti-
mization for larger data sizes, enhancing key management techniques,
better security aspect and formal cryptanalysis. Overall, this research pa-
per provides valuable insights into FractalCrypt’s performance, security,
and key management considerations, offering a foundation for further
advancements and exploration in the field of data encryption.

Keywords: Fractals · Chaos game Algorithm ·

1 Introduction
Data encryption is crucial in today’s digital world, as it plays a vital role in
safeguarding sensitive content across various fields and domains across the in-
ternet. In this context, encryption techniques have emerged as essential tools for
2 FractalCrypt: Secure Data Encryption using Chaos Game Algorithm

ensuring the secure use of information. However, existing encryption methods


often have limitations that may impact their effectiveness in providing robust
security. To address this, FractalCrypt introduces a unique approach by leverag-
ing the Chaos Game Algorithm, which employs self-repeating structures known
as fractals. By harnessing the inherent properties of fractals, FractalCrypt aims
to enhance security and resistance to decryption attacks. Through the imple-
mentation of this innovative data encryption technique, FractalCrypt strives to
offer a promising solution for protecting sensitive data in the digital landscape.

1.1 Chaos Game Algorithm

Fractals are self-similar patterns. The so-called chaos game (also called a random
iteration algorithm) is a method to generate iterative fractals with the help of
polygons.
The rules are simple and will be explained using the example of a triangle.
It has the corner points A, B and C. You start the chaos game at a random
point P1 within the triangle. To calculate the next position P2, you choose one
of the three corner points of the triangle at random and place P2 in the middle
of the route between point P1 and the randomly selected corner point. Repeat
this process.
This concept can be applied to various shapes and polygons and defining new
rules of traversals affecting complexity and efficiency of algorithm.

Fig. 1. Sierpinski triangle: 7 steps of the chaos game for the corner points ACABBCB.

1.2 Limitations of Existing Encryption techniques

Existing Encryption techniques are efficient but comes with their own shortcom-
ings like AES, RSA and ECC. Some of the common limitations include,
FractalCrypt: Secure Data Encryption using Chaos Game Algorithm 3

Key Management Complexity: Encryption algorithms often rely on the use


of encryption keys, and the management of these keys can be very difficult and
hectic process. Key generation, distribution, and storage require careful planning
and implementation to prevent unauthorized access or loss of keys.
Vulnerability to Quantum Computing: Many widely used encryption algo-
rithms, such as RSA (Rivest, Shamir, Adleman) and ECC (Elliptic Curve Cryp-
tography), are based on mathematical problems that can be efficiently solved
by quantum computers. Advancement of quantum computing shows that these
algorithms may become vulnerable to attacks, necessitating the development of
quantum-resistant encryption methods.
Computational Overhead: Strong encryption algorithms, particularly those
based on asymmetric cryptography, can impose a significant computational over-
head. Encryption and decryption may require substantial processing power and
time, especially when dealing with large datasets or real-time communication
eventually wasting resources.
Limited Forward Secrecy: In certain scenarios, such as in the case of compro-
mised private keys or a breach in the encryption system, forward secrecy ensures
that past encrypted communications remain secure. However, many existing en-
cryption techniques do not provide strong forward secrecy guarantees, leaving
past encrypted data vulnerable.
Susceptibility to Side-Channel Attacks: Side-channel attacks exploit infor-
mation leaked through various channels, such as power consumption, electro-
magnetic radiation, or timing analysis, to extract sensitive information. Some
encryption algorithms may be vulnerable to such attacks if not implemented
properly or if the used hardware is not adequate.

2 Literature Review

Fractal-based encryption techniques have garnered attention due to their unique


approach to data encryption. Fractal geometry, known for its self-repeating pat-
terns, provides a foundation for developing encryption algorithms that offer en-
hanced security. FractalCrypt stands out in this regard, leveraging the Chaos
Game Algorithm to create self-similar structures that strengthen the encryption
process.
The Chaos Game Algorithm, originally used in the field of fractal geometry,
has been adapted for data encryption in FractalCrypt. This algorithm utilizes
pseudo-random iterations to encrypt data, introducing a high level of complexity
and unpredictability. FractalCrypt takes advantage of the inherent chaotic prop-
erties of the Chaos Game Algorithm, enhancing the security of the encrypted
data.
Several studies have focused on evaluating the performance of FractalCrypt.
These analyses have primarily examined encryption speed and computational
complexity. Comparisons with traditional encryption algorithms, such as AES
and RSA, have revealed that FractalCrypt exhibits competitive encryption speeds
for smaller data sizes. However, its encryption speed can be relatively slower
4 FractalCrypt: Secure Data Encryption using Chaos Game Algorithm

Fig. 2. Visual representation of iterative approach of chaos game algorithm followen


for a tringular surface leading ultimately to fractal structure.

for larger data sizes. The computational complexity of FractalCrypt has shown
potential for efficient resource utilization, particularly in resource-constrained
environments.
Effective key management is crucial for any encryption algorithm, and Frac-
talCrypt is no exception. Research in this area has explored key generation,
distribution, and storage techniques. Robust key management practices are es-
sential to ensure the confidentiality and integrity of encryption keys and protect
against unauthorized access.
Addressing these limitations necessitates ongoing research and development
efforts. Novel cryptographic solutions, such as lattice-based cryptography or ho-
momorphic encryption, are emerging as potential alternatives to overcome the
shortcomings of existing encryption techniques. These advancements aim to pro-
vide stronger security guarantees, enhanced efficiency, and adaptability to evolv-
ing threats.
FractalCrypt holds potential for practical applications in scenarios where
efficient encryption of smaller data sizes and resource-constrained environments
are paramount.

3 Methodology
In the first part of the methodology, the FractalCrypt algorithm will be imple-
mented using the Chaos Game Algorithm in Python. The implementation will
involve several key steps to ensure the proper functioning of the algorithm:
Define the Alphabet: The first step is to define the alphabet that will be used
for encryption. This includes all the characters that can be encrypted (letters,
numbers, characters, etc.). The size of the alphabet will determine the number
of vertices of the polygon used in the Chaos Game Algorithm.
Define the Polygon Vertices: Based on the number of characters in the al-
phabet and the vertices of the polygon will be defined based on technique and
FractalCrypt: Secure Data Encryption using Chaos Game Algorithm 5

seed value stored. Each vertex represents a character from the alphabet. The
Chaos Game Algorithm requires the coordinates of these vertices to generate
the encrypted coordinates.
Implement the Chaos Game Function: The chaos-game() function will be
implemented to generate the pseudo-random iterations based on the seed value.
This function will use the random module in Python to generate random numbers
that will determine the next vertex for each iteration. The function will yield
the x and y coordinates for each iteration which gives each character code.
Develop the Encryption Function: The encrypt-text() function will encrypt
the input text using the FractalCrypt algorithm. This function will take the
input text and the seed value. It will iterate through each character in the input
text, generate the pseudo-random iterations using the chaos-game() function,
and calculate the encrypted coordinates for each character.
Ensure Secure Coding Practices: Throughout the implementation, secure
coding practices should be followed to ensure the integrity and security of the
FractalCrypt algorithm. This includes avoiding common vulnerabilities such as
buffer overflows, input validation issues, and secure handling of sensitive infor-
mation like encryption keys.

Fig. 3. Python demonstration of proposed encryption function

The above python code shows implementation of proposed methodology. For


various situations polygon parameters and seed value can modified to get de-
sirable output. We have also shown a sample encryption coordinate system for
a sample string as shown below in Fig.4. This figure shows encryption of word
”Hello” as coordinates on a 2d-plane achieved from fractal theory.

3.1 Performance Analysis

The performance analysis of FractalCrypt aims to evaluate its encryption speed


and computational complexity compared to other commonly used encryption
algorithms such as AES and RSA.
6 FractalCrypt: Secure Data Encryption using Chaos Game Algorithm

Fig. 4. Encrypted data for the text ”Hello” as frame of coordinates

A range of input text sizes will be selected for performance evaluation. This
includes both small and large data sizes to assess the scalability of FractalCrypt.
The selected input texts should cover a variety of real-world scenarios. The
encryption speed of FractalCrypt will be measured by encrypting the selected
input texts using the implemented algorithm. The execution time for each en-
cryption operation will be recorded, and the encryption speed will be calculated
in terms of characters per second. This measurement will provide insights into
how efficiently FractalCrypt can encrypt data. The computational complexity of
FractalCrypt will be analyzed by considering the execution time and resource
utilization during the encryption process. This analysis will help assess the effi-
ciency and scalability of FractalCrypt for different input text sizes. It will also
provide insights into the algorithm’s feasibility for resource-constrained environ-
ments.
Table 1 contains the speed benchmarks for some of the most commonly used
cryptographic algorithms. All were coded in C++, compiled with Microsoft Vi-
sual C++ .NET 2003 (whole program optimization, optimize for speed, P4 code
generation), and ran on a Pentium 4 2.1 GHz processor under Windows XP SP
1. 386 assembly routines were used for multiple-precision addition and subtrac-
tion. SSE2 intrinsic were used for multiple-precision multiplication. It can be
noticed from the table that not all the modes have been tried for all the algo-
rithms. Nonetheless, these results are good to have an indication about what the
presented comparison results should look like.
To evaluate the performance of FractalCrypt in context, a comparison will be
made with widely used encryption algorithms like AES and RSA. The encryption
speed and computational complexity of FractalCrypt will be compared to those
of AES and RSA for the same input text sizes. This comparison will shed light
on FractalCrypt’s relative strengths and weaknesses in terms of performance.
The collected data on encryption speed and computational complexity will be
analyzed and interpreted. The results will provide insights into the performance
characteristics of FractalCrypt and its suitability for different use cases. Factors
such as data size, resource constraints, and real-time constraints will be taken
FractalCrypt: Secure Data Encryption using Chaos Game Algorithm 7

Table 1. Time Analysis of standard industrial encryption algorithms.

Algorithm Megabytes(220 bytes) Processed Time Taken MB/Second


Blowfish 256 3.976 64.386
Rijndael (128-bit key) 256 4.196 61.010
Rijndael (192-bit key) 256 4.817 53.145
Rijndael (256-bit key) 256 5.308 48.229
Rijndael (128) CTR 256 4.436 57.710
Rijndael (128) OFB 256 4.837 52.925
Rijndael (128) CFB 256 5.378 47.601
Rijndael (128) CBC 256 4.617 55.447
DES 128 5.998 21.340
(3DES)DES-XEX3 128 6.159 20.783
(3DES)DES-EDE3 64 6.499 9.848

into consideration during the interpretation process. Industry standard analysis


is shown in this section and can be compared with fractal techniques.

Fig. 5. Performance results with CBC(cipher blocker chaining) mode

By conducting a comprehensive performance analysis, the methodology aims


to assess the encryption speed and computational complexity of FractalCrypt.
The comparison with other encryption algorithms will provide valuable insights
into FractalCrypt’s performance advantages and potential limitations. The anal-
ysis results will inform the overall assessment of FractalCrypt and contribute to
understanding its practical applicability.
8 FractalCrypt: Secure Data Encryption using Chaos Game Algorithm

3.2 Security Analysis

The security analysis of FractalCrypt focuses on assessing its resistance against


common cryptographic attacks and evaluating the security guarantees provided
by the algorithm. The analysis involves theoretical considerations and explores
the strengths and potential vulnerabilities of FractalCrypt in various attack sce-
narios.
Brute-Force Attacks: A brute-force attack involves attempting all possible
encryption keys to decrypt the ciphertext. The security analysis of FractalCrypt
assesses its resistance against brute-force attacks by evaluating the complexity of
the key space. The Chaos Game Algorithm, with its pseudo-random iterations,
introduces a high level of key space complexity, making it challenging for an
attacker to guess the correct encryption key.
Differential Attacks: Differential attacks aim to exploit patterns or differen-
tials in the encryption process to recover plaintext or the encryption key. The
security analysis of FractalCrypt considers the inherent chaotic nature of the
Chaos Game Algorithm, which introduces unpredictability and randomness into
the encryption process. This property makes it difficult for an attacker to identify
patterns or differentials that could aid in decrypting the data.
Chosen-Plaintext Attacks: Chosen-plaintext attacks involve the attacker hav-
ing the ability to encrypt chosen plaintexts and analyze the corresponding ci-
phertexts. In the security analysis, the resistance of FractalCrypt against chosen-
plaintext attacks is evaluated. The pseudo-random iterations generated by the
Chaos Game Algorithm make it challenging for an attacker to deduce any mean-
ingful information about the encryption key or the encryption process from the
chosen plaintext-ciphertext pairs.
Cryptographic Strength: The security analysis also focuses on assessing the
cryptographic strength of FractalCrypt. This involves evaluating the random-
ness, uniformity, and distribution properties of the encrypted data. The Chaotic
Game Algorithm, with its self-repeating structures and randomness, contributes
to the cryptographic strength of FractalCrypt, making it resistant to statistical
attacks and cryptographic analysis.
Potential Vulnerabilities: While FractalCrypt exhibits promising security prop-
erties, the security analysis also considers potential vulnerabilities. It examines
any weaknesses in the implementation of the algorithm, such as insecure key
management practices or vulnerabilities in the underlying Python code. These
vulnerabilities need to be identified and addressed to ensure the robustness of
FractalCrypt in real-world deployment.
The security analysis of FractalCrypt is conducted to understand its strengths
and weaknesses in the face of common cryptographic attacks. The theoretical
examination of the algorithm’s resistance against brute-force attacks, differential
attacks, and chosen-plaintext attacks helps assess its security guarantees. By
identifying any potential vulnerabilities, the analysis provides insights into areas
that require further research and improvement to enhance the overall security
of FractalCrypt.
FractalCrypt: Secure Data Encryption using Chaos Game Algorithm 9

3.3 Key Management

Key management is a critical aspect of any encryption system, including Frac-


talCrypt. It is needed for confidentiality, integrity, and availability of encryption
keys, which are vital for the secure operation of data flow in network. In the
context of FractalCrypt, the following key management techniques can be pro-
posed:
Robust key generation techniques should be employed to ensure the strength
and randomness of encryption keys. Cryptographically secure pseudo-random
number generators (CSPRNGs) can be used to generate the required key mate-
rial. It is crucial to select an appropriate key length that offers an adequate level
of security based on the desired application and encryption requirements.
Secure key distribution mechanisms need to be implemented to implement
secure sharing of encryption keys between authorized parties. The use of secure
channels, such as Transport Layer Security (TLS) or secure messaging protocols,
can enhance the confidentiality and integrity of key distribution.
Secure key storage is vital to prevent unauthorized access or loss of encryp-
tion keys. Encryption keys should be stored in a secure environment, such as
hardware security modules (HSMs) or secure key management systems. These
systems provide physical and logical protection for the keys, including tamper
resistance and access control mechanisms. Additionally, the keys should be en-
crypted themselves to further enhance their security.
Regular key rotation should be implemented to mitigate the impact of key
compromise. This involves generating new encryption keys periodically and se-
curely distributing them to authorized parties. Additionally, a key revocation
mechanism should be in place to revoke compromised or compromised keys to
prevent unauthorized access to encrypted data.
Implementing strong access control mechanisms and authentication protocols
is essential for secure key management. Multi-factor authentication and robust
user access controls needs to be implemented such that only authorized indi-
viduals can access and manipulate encryption keys. This helps protect against
unauthorized key usage and potential insider threats.
Monitoring and auditing key management activities are critical to detect
and respond to any security incidents or unauthorized access attempts. Robust
logging and auditing mechanisms should be implemented to track key usage,
changes, and any suspicious activities related to key management. Regular re-
views of the audit logs can help identify potential security breaches or weaknesses
in the key management process.
Regularly backing up encryption keys and establishing comprehensive disas-
ter recovery procedures are essential to ensure the availability of keys in case of
unexpected events. Regular backups, secure off-site storage, and periodic restora-
tion testing are crucial to mitigate the risk of key loss or destruction.
By implementing these key management techniques, the security and in-
tegrity of encryption keys can be effectively maintained in FractalCrypt. Strong
key generation, secure key distribution, robust key storage, key rotation and re-
vocation, access control, authentication, audit and monitoring, as well as backup
10 FractalCrypt: Secure Data Encryption using Chaos Game Algorithm

and disaster recovery procedures, collectively contribute to a comprehensive and


robust key management framework for FractalCrypt.

4 Conclusion
FractalCrypt: Secure Data Encryption using Chaos Game Algorithm presents a
novel approach to data encryption by leveraging the Chaos Game Algorithm and
fractal geometry. Throughout this research paper, we have explored the imple-
mentation, performance analysis, security analysis, key management, and poten-
tial applications of FractalCrypt. The implementation of FractalCrypt demon-
strated the successful integration of the Chaos Game Algorithm into a data en-
cryption algorithm. The algorithm effectively encrypted data using self-repeating
structures known as fractals, showcasing its unique encryption methodology. The
performance analysis revealed that FractalCrypt exhibits competitive encryption
speeds for smaller data sizes. However, encryption speed may decrease for larger
data sizes, requiring further optimization. The algorithm demonstrated promis-
ing computational complexity, making it suitable for resource-constrained en-
vironments. The security analysis highlighted FractalCrypt’s resistance against
common cryptographic attacks. The Chaos Game Algorithm’s pseudo-random it-
erations enhanced its robustness against brute-force attacks, differential attacks,
and chosen-plaintext attacks. While the algorithm showcased strong security
properties, further research is needed to identify potential vulnerabilities and
ensure its resilience against sophisticated attacks. The key management aspect
of FractalCrypt emphasized the importance of robust key generation, secure key
distribution, proper key storage, key rotation, and access control mechanisms.
Effective key management practices play a crucial role in maintaining the confi-
dentiality and integrity of encryption keys. FractalCrypt’s potential applications
were explored, showcasing its suitability for scenarios requiring efficient encryp-
tion of smaller data sizes and resource-constrained environments. Its competitive
encryption speeds and efficient resource utilization make it applicable to domains
such as Internet of Things (IoT) devices and edge computing.

In conclusion, FractalCrypt offers a promising approach to data encryption


with its unique utilization of the Chaos Game Algorithm and fractal geometry.
The research conducted in this paper has shed light on the algorithm’s strengths,
limitations, and potential applications. Further research is recommended to op-
timize performance, enhance security, and explore integration possibilities with
existing encryption standards. The findings presented here contribute to the field
of data encryption and provide a foundation for future advancements in secure
data protection.

References
1. Nadeem A. & Javed M. Y. (2005, August). A performance comparison of data
encryption algorithms. In 2005 international Conference on information and com-
munication technologies (pp. 84-89). IEEE.
FractalCrypt: Secure Data Encryption using Chaos Game Algorithm 11

2. Ahmad, M., Agarwal, S., Alkhayyat, A., Alhudhaif, A., Alenezi, F., Zahid, A. H., &
Aljehane, N. O. (2022). An image encryption algorithm based on new generalized
fusion fractal structure. Information Sciences, 592, 1-20.
3. Diffie, W., & Hellman, M. E. (1976). New directions in cryptography. IEEE Trans-
actions on Information Theory, 22(6), 644-654.
4. Barnsley, M. F. (1988). Fractals Everywhere. Academic Press.
5. Jeffrey, H. J. (1992). Chaos game visualization of sequences. Computers & Graph-
ics, 16(1), 25-33.
6. Talatahari, S., & Azizi, M. (2021). Chaos game optimization: a novel metaheuristic
algorithm. Artificial Intelligence Review, 54, 917-1004.
7. Patil, P., Narayankar, P., Narayan, D. G., & Meena, S. M. (2016). A comprehen-
sive evaluation of cryptographic algorithms: DES, 3DES, AES, RSA and Blowfish.
Procedia Computer Science, 78, 617-624.
8. Fumy, W., & Landrock, P. (1993). Principles of key management. IEEE Journal on
selected areas in communications, 11(5), 785-793.
9. Anandkumar, R., & Kalpana, R. (2020). A review on chaos-based image encryption
using fractal function. Examining Fractal Image Processing and Analysis, 23-37.
10. Dakate, D. K., & Dubey, P. (2012). Performance comparison of symmetric data
encryption techniques. IDEA, 128, 58.
11. https://www.cse.wustl.edu/ jain/cse567-06/ftp/encryption-perf/
12. https://beltoforion.de/en/recreational-mathematics/chaos-game.php

You might also like