A web demo of RSA public key cryptography algorithms
The Rivest-Shamir-Adleman (RSA) algorithm is an asymmetric algorithm that is used in Public-Key Cryptosystems where security is directly proportional to the key size. RSA data keys are generated from factors based on two large prime numbers using the Extended Euclidean algorithm. These prime numbers...
Saved in:
Main Author: | |
---|---|
Other Authors: | |
Format: | Final Year Project |
Language: | English |
Published: |
2019
|
Subjects: | |
Online Access: | http://hdl.handle.net/10356/76983 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Nanyang Technological University |
Language: | English |
id |
sg-ntu-dr.10356-76983 |
---|---|
record_format |
dspace |
spelling |
sg-ntu-dr.10356-769832023-03-03T20:42:55Z A web demo of RSA public key cryptography algorithms Tan, Andy Ying Kun Anwitaman Datta School of Computer Science and Engineering DRNTU::Engineering::Computer science and engineering The Rivest-Shamir-Adleman (RSA) algorithm is an asymmetric algorithm that is used in Public-Key Cryptosystems where security is directly proportional to the key size. RSA data keys are generated from factors based on two large prime numbers using the Extended Euclidean algorithm. These prime numbers are selected at random and undergo a probabilistic primality test such as Miller-Rabin’s to ensure that they are prime. The plaintext undergoes through an encryption algorithm to produce a ciphertext to be transmitted to the receiver. The ciphertext will be decoded through a decryption algorithm to be converted back to its intended plaintext. Consisting of many complex mathematical calculations revolving around prime numbers and exponentials, students studying cryptography usually only learn the algorithm only in theory and formulas with the teaching materials given and have no way of experimenting with the variables involved to get a deeper understanding of each step of the asymmetric algorithm. The purpose of this project is to implement a web-based demonstration for all the steps of encryption and decryption of the RSA algorithm, which can be served as an accompanying learning material for students of cryptography. This includes computation subsystems such as the primality test algorithm, the Extended Euclidean algorithm, and the actual RSA encryption algorithm. The RSA Web Demonstration was developed using HTML Bootstrap and JavaScript. The demonstration collects input from the user and passes those inputs to JavaScript to be used in calculations of the algorithm. The web demonstration will then return the algorithm process and the results to step by step collapsible sections where users can understand what each step entails. In conclusion, the user will be able to use various parameters to generate a step by step visualization of the computation subsystem they wished to experiment or learn more with different variables introduced to the algorithms. For future works, it is recommended that the demonstration can handle calculations more than 8 digits. Bachelor of Engineering (Computer Science) 2019-04-28T14:22:18Z 2019-04-28T14:22:18Z 2019 Final Year Project (FYP) http://hdl.handle.net/10356/76983 en Nanyang Technological University 42 p. application/pdf |
institution |
Nanyang Technological University |
building |
NTU Library |
continent |
Asia |
country |
Singapore Singapore |
content_provider |
NTU Library |
collection |
DR-NTU |
language |
English |
topic |
DRNTU::Engineering::Computer science and engineering |
spellingShingle |
DRNTU::Engineering::Computer science and engineering Tan, Andy Ying Kun A web demo of RSA public key cryptography algorithms |
description |
The Rivest-Shamir-Adleman (RSA) algorithm is an asymmetric algorithm that is used in Public-Key Cryptosystems where security is directly proportional to the key size. RSA data keys are generated from factors based on two large prime numbers using the Extended Euclidean algorithm. These prime numbers are selected at random and undergo a probabilistic primality test such as Miller-Rabin’s to ensure that they are prime. The plaintext undergoes through an encryption algorithm to produce a ciphertext to be transmitted to the receiver. The ciphertext will be decoded through a decryption algorithm to be converted back to its intended plaintext.
Consisting of many complex mathematical calculations revolving around prime numbers and exponentials, students studying cryptography usually only learn the algorithm only in theory and formulas with the teaching materials given and have no way of experimenting with the variables involved to get a deeper understanding of each step of the asymmetric algorithm.
The purpose of this project is to implement a web-based demonstration for all the steps of encryption and decryption of the RSA algorithm, which can be served as an accompanying learning material for students of cryptography. This includes computation subsystems such as the primality test algorithm, the Extended Euclidean algorithm, and the actual RSA encryption algorithm.
The RSA Web Demonstration was developed using HTML Bootstrap and JavaScript. The demonstration collects input from the user and passes those inputs to JavaScript to be used in calculations of the algorithm. The web demonstration will then return the algorithm process and the results to step by step collapsible sections where users can understand what each step entails.
In conclusion, the user will be able to use various parameters to generate a step by step visualization of the computation subsystem they wished to experiment or learn more with different variables introduced to the algorithms. For future works, it is recommended that the demonstration can handle calculations more than 8 digits. |
author2 |
Anwitaman Datta |
author_facet |
Anwitaman Datta Tan, Andy Ying Kun |
format |
Final Year Project |
author |
Tan, Andy Ying Kun |
author_sort |
Tan, Andy Ying Kun |
title |
A web demo of RSA public key cryptography algorithms |
title_short |
A web demo of RSA public key cryptography algorithms |
title_full |
A web demo of RSA public key cryptography algorithms |
title_fullStr |
A web demo of RSA public key cryptography algorithms |
title_full_unstemmed |
A web demo of RSA public key cryptography algorithms |
title_sort |
web demo of rsa public key cryptography algorithms |
publishDate |
2019 |
url |
http://hdl.handle.net/10356/76983 |
_version_ |
1759855709764190208 |