New Mexico Supercomputing Challenge

Number Theory Applied to RSA Encryption

Team: 46

School: Los Alamos High

Area of Science: Mathematics

Interim: Team Number: 046
School Name: Los Alamos High School
Area of Science: Mathematics
Project Title: Number Theory Applied to RSA Encryption

Problem Definition:
RSA is currently among, if not the most secure form of encryption currently available. It is used widely to encrypt data sent over the internet making use of public and private keys. It is trusted by the US Government, as well as many civilian websites such as amazon and yahoo. This project is targeted towards the understanding of the RSA algorithm that includes several parts: why and how it works, what makes it secure, and ways to attack it, and a demonstration of these parts. Also I will find a way to hide the encrypted message in an image making it even more secure, through a process called steganography.

To explain the workings of RSA, I will provide a proof that RSA, if decrypted properly, will return the original message. The proof will be based on Fermat’s Little Theorem, which will help me understand why it is so secure, and possible ways to attack RSA.

First I will make the encryption and decryption part of the program, then the attacking algorithm. Finally I will hide the encrypted information in a photograph.

Current Progress:
I have began to prove the RSA algorithm with a number of mathematical properties, and I am beginning to write the decryption part of the program. I am finished with the encryption part. However, I cannot test the encryption algorithm’s correctness until I finish the decryption.I am still undecided over the type of attack I want to perform on my RSA algorithm, weather it be brute force, or a systematic approach. Also, I am not yet sure how I will hide the encrypted data in an image. I will figure that out once I finish the main part of the project.

Expected Results:
I expect to have a completely functional RSA and steganography program by the time
I finish this project. I also expect to have a complete understanding of how RSA works, and why it is secure. Then, I can attempt to crack RSA with an attack I write, and graph the time it takes, starting with an easy key then increasing the difficulty. Finally, with that data, I can predict the time it will take to crack an RSA key used today. The finished project will explain these steps in chronological order of importance to the workings of RSA.

Team Members:
Jovan Zhang

Sponsoring Teacher:
Adam Drew

Team Members:

  Jovan Zhang

Sponsoring Teacher: Adam Drew

Mail the entire Team

For questions about the Supercomputing Challenge, a 501(c)3 organization, contact us at: consult1415 @

New Mexico Supercomputing Challenge, Inc.
Post Office Box 30102
Albuquerque, New Mexico 87190
(505) 667-2864

Supercomputing Challenge Board of Directors
Board page listing meetings and agendas
If you have volunteered for the Challenge, please fill out our In Kind form.
Flag Counter

Tweet #SupercomputingChallenge