You are on page 1of 16

Chapter 1

Introduction
1.1 Problem Definition
A lot of engineers find it difficult to properly understand and visualize cipher algorithms because
of their complex nature. In this project we wanted to create a user-friendly website for
visualizing the cipher algorithms and addressing the challenges developers face in understanding
these abstract algorithm constructs.
Understanding and visualizing cipher algorithms pose a significant challenge for many engineers
due to their intricate and abstract nature. In response to this challenge, we have developed a user-
friendly website aimed at providing intuitive visualization tools for various cipher algorithms.
The website offers a seamless interface with options to explore algorithms such as RSA, Caesar
Cipher, MAC, and Vigenère Cipher. Each algorithm is accompanied by a dedicated visualization
page, where users can interactively engage with the algorithm's operations and mechanisms. By
bridging the gap between complexity and comprehension, our website aims to empower
developers in grasping the nuances of cipher algorithms effectively. Through this project, we
contribute to enhancing accessibility and understanding in the field of cryptography, facilitating
broader adoption and implementation of secure communication protocols.

Department of Information Technology TY Mini-Project -2023 Page 1 of 16


Chapter 2
Background Work

2.1 Literature survey


The research papers that we used are "RSAvisual: a visualization tool for the RSA cipher" by Jun
Tao et al., and "The Design and Use of Interactive Visualization Applets for Teaching Ciphers"
by Dino Schweitzer and Leemon Baird.
Tao et al. present "RSAvisual," a comprehensive visualization tool specifically designed for the
RSA cipher. Their tool not only provides visualization of the RSA encryption and decryption
processes but also facilitates teaching factorization algorithms and basic attacks. By offering a
user-friendly interface and interactive features, RSAvisual enables users to gain insights into the
intricate workings of RSA cryptography, thus bridging the gap between theoretical knowledge
and practical application.
In a similar vein, Schweitzer and Baird focus on developing interactive Java applets tailored for
teaching various ciphers. Their work emphasizes the importance of visualization in
understanding cryptographic concepts by providing tools for encryption/decryption, algorithm
visualization, and cryptanalysis. These applets offer educators and learners alike a hands-on
approach to exploring different ciphers, thereby enhancing comprehension and retention of
cryptographic principles.
Both research papers underscore the significance of visualization and interactivity in
cryptography education. By leveraging these tools, students and professionals can engage with
complex algorithms in a more intuitive manner, leading to deeper understanding and proficiency
in cryptography. Furthermore, the development of such resources contributes to the broader goal
of advancing cryptographic education and promoting the adoption of secure communication
practices in today's digital age.

Department of Information Technology TY Mini-Project -2023 Page 2 of 16


Chapter 3
Implementation
3.1 Methodology
The home page of our website offers a selection of four fundamental cipher algorithms: RSA,
Caesar Cipher, MAC, and Vigenère. Upon choosing a specific algorithm, users are seamlessly
directed to the corresponding algorithm visualizer page, where they can delve into the intricacies
of that particular cryptographic method. Here, users are prompted to input their message and the
relevant encryption key. With this information provided, the visualizer dynamically displays the
encryption process, step by step, offering users a clear and intuitive understanding of how their
message is transformed into ciphertext. Alongside the visualization, the page conveniently
presents the encrypted output, enabling users to grasp the outcome of the encryption process in
real-time. Moreover, users are given the option to decrypt the message, further enhancing their
exploration and comprehension of the algorithm. After interaction with the visualization, users
have the flexibility to either input new values for encryption or decryption or return to the home
page to explore other algorithms. This seamless and interactive experience empowers users to
engage with cipher algorithms in a user-friendly manner, fostering deeper understanding and
proficiency in cryptography.

Figure 1: Overview of Implementation


Department of Information Technology TY Mini-Project -2023 Page 3 of 16
3.2 Algorithms used
SHA-256 (Secure Hash Algorithm 256-bit): SHA-256 is a cryptographic hash function that
generates a fixed-size 256-bit hash value from an input message. It is widely used in various
security applications and protocols.
Modular Inverse Algorithm: The modInverse function calculates the modular inverse of a
number a modulo m. This is used to find the private exponent d, which is the multiplicative
inverse of the public exponent e modulo φ(n).
Modular Exponentiation Algorithm: The modPow function computes modular exponentiation
efficiently. It calculates (base^exponent) mod modulus, which is crucial for both encryption and
decryption in RSA.

Department of Information Technology TY Mini-Project -2023 Page 4 of 16


Chapter 4
Results
4.1 Results
Our system has delivered precise and detailed results across a range of cryptographic methods,
including RSA, Vigenere, Caesar, and MAC visualizations. Specifically, in the context of RSA,
it provides an accurate portrayal of the algorithm's output, ensuring reliability and correctness in
cryptographic operations.

Turning to the Vigenere cipher, our system excels in clarity and precision, offering a vivid
visualization that elucidates the encryption process with precision. It meticulously presents the
encrypted values, ensuring clarity and accuracy in understanding the encrypted text.

In the case of the Caesar cipher, our system not only provides an accurate visualization of the
cipher but also incorporates additional functionalities. This includes a simulation of a brute force
attack, enabling users to comprehend the potential decryption time required for various keys.
This comprehensive approach enhances both understanding and security assessment.

Furthermore, in the domain of MAC (Message Authentication Code), our system demonstrates
robust functionality. The visualization seamlessly matches hash values between sender and
receiver, ensuring integrity and authenticity in message transmission.

These accomplishments underscore the success of our project. By incorporating ongoing


enhancements and gathering feedback from users, we remain committed to refining and
optimizing our system to meet evolving cryptographic needs effectively.

Department of Information Technology TY Mini-Project -2023 Page 5 of 16


Results for RSA

Figure 2: RSA Results

Department of Information Technology TY Mini-Project -2023 Page 6 of 16


Chapter 5
Conclusion and Future scope
5.1 Conclusion
In conclusion, this cryptographic algorithm visualizer facilitates hands-on learning through
intuitive visualizations and interactive demonstrations of encryption, decryption, and
authentication processes. With continuous collaboration, feedback, and improvement, it can
evolve to meet the needs of students, professionals, and cryptography enthusiasts.
Key learnings include effective team coordination, consistent visual representation across
algorithms, high interactivity through intuitive controls, and minimizing keyboard interaction for
better usability.

5.2 Future Scope


The future scope for a user-friendly website dedicated to visualizing cipher algorithms and
addressing the challenges developers encounter in comprehending these abstract constructs is
expansive and dynamic. As technology continues to advance, the demand for robust encryption
solutions grows, driving the need for accessible educational resources in the field of
cryptography. Moving forward, the project can expand its coverage to encompass a wider range
of cipher algorithms, including both classical and modern approaches, to cater to diverse learning
needs and interests. Integration of interactive features such as step-by-step visualizations,
interactive simulations, and customizable parameters can enhance user engagement and facilitate
deeper understanding. Furthermore, the website can evolve into a comprehensive learning
platform by incorporating educational materials, tutorials, and practical examples, tailored to
various skill levels and use cases. Collaborations with cryptography experts, educators, and
industry professionals can enrich the content with real-world insights, case studies, and best
practices, ensuring relevance and accuracy. Moreover, leveraging emerging technologies like
augmented reality (AR) and virtual reality (VR) could provide innovative ways to visualize and
interact with cipher algorithms, offering immersive learning experiences. Finally, the project's
scalability can be extended by fostering a vibrant community of learners, contributors, and
enthusiasts through forums, workshops, and collaborative projects, thereby ensuring its
sustainability and impact in advancing cryptographic literacy worldwide.

Department of Information Technology TY Mini-Project -2023 Page 7 of 16


Chapter 6
Web Application
6.1 Functional and Non-functional requirements
Functional requirements: -
 Data-collection fields: Collection of relevant data.
 Validation: Validation of the user input.
 Visualization: Can visualize the cipher selected by the user.
 Algorithms: RSA, MAC, Vigenère Cipher, Caesar Cipher.
 Result Display: Results of the step by step, guided visualization.
 Other Accessibility: mobile compatible.

Non-functional requirements: -
 Scalability: Expanding the scope to various other subjects such as Linux
commands, and subjects that need visualization for better understanding.
 Compatibility: Compatible on different web browsers and devices.
 Reliability: Ensure the website's stability and availability.

6.2 Technologies used


Frontend: HTML/CSS, JavaScript (with libraries such React for visualization).

Department of Information Technology TY Mini-Project -2023 Page 8 of 16


6.3 Screenshots
Caesar Cipher

Figure 3: Caesar encryption

Figure 4: Caesar decryption

Department of Information Technology TY Mini-Project -2023 Page 9 of 16


Figure 5: Brute force attack

Department of Information Technology TY Mini-Project -2023 Page 10 of


16
MAC

Figure 6: MAC home page

Figure 7: MAC

Department of Information Technology TY Mini-Project -2023 Page 11 of


16
RSA

Figure 8: RSA values-1

Figure 9: RSA values-2

Department of Information Technology TY Mini-Project -2023 Page 12 of


16
Figure 10: RSA output

Department of Information Technology TY Mini-Project -2023 Page 13 of


16
Vigenère Cipher

Figure 11: Vigenere Encryption and Decryption

Figure 12: Vigenere Information page

Department of Information Technology TY Mini-Project -2023 Page 14 of


16
References
 RSAvisual: a visualization tool for the RSA cipher
(https://dl.acm.org/doi/abs/10.1145/2538862.2538891?casa_token=-
QJVOXAWXhIAAAAA:IAIFotwqWtVPwbYvKdjL0bdUeLHgY6aeiL8cfImOO-
192pzSpMr98ctH1wq8yz8wUerWE87QBz1qpw)
 DESvisual: a visualization tool for the DES cipher
(https://www.researchgate.net/profile/Steve-Carr-4/publication/262220654_Teaching_acc
ess_control_with_domain_type_enforcement/links/564dbacd08aeafc2aab00665/
Teaching-access-control-with-domain-type-enforcement.pdf#page=92)
 https://ieeexplore.ieee.org/abstract/document/1652079
 VIGNERE
https://www.researchgate.net/publication/295256333_Vigenere_Cipher_Trends_Review_
and_Possible_Modifications
 RSA https://www.google.com/url?
sa=t&source=web&rct=j&opi=89978449&url=https://ieeexplore.ieee.org/document/
6021216&ved=2ahUKEwiTz7zAivGFAxUKa_UHHf0XBKkQFnoECA8QAQ&usg=AO
vVaw036i3v0TS7IUz9ns1eGDCQ
 https://link.springer.com/chapter/10.1007/978-3-540-24654-1_13
 https://www.google.com/url?sa=t&source=web&rct=j&opi=89978449&url=https://
brilliant.org/wiki/secure-hashing-algorithms/&ved=2ahUKEwiNg-
TfifGFAxXESGcHHU2mBhAQFnoECCEQAQ&usg=AOvVaw0FSFE2LZc99_JxzDx9I
3i_
 https://www.google.com/url?sa=t&source=web&rct=j&opi=89978449&url=https://
ieeexplore.ieee.org/document/9411383/
&ved=2ahUKEwjRwcXKifGFAxVGR2wGHbuaB9EQFnoECBwQAQ&usg=AOvVaw0
61O276fI-9vFbp6_klyg2
 https://www.google.com/url?sa=t&source=web&rct=j&opi=89978449&url=https://
papers.ssrn.com/sol3/Delivery.cfm/SSRN_ID3819524_code3121922.pdf%3Fabstractid
%3D3819524%26mirid%3D1&ved=2ahUKEwiK84-

Department of Information Technology TY Mini-Project -2023 Page 15 of


16
uifGFAxXKamwGHV2VBhcQFnoECDEQAQ&usg=AOvVaw2fnCQm8S7_gQC2cc2_
Koz5

Department of Information Technology TY Mini-Project -2023 Page 16 of


16

You might also like