Skip to content

Sample implementation of RSA-1024 in Rust, written from the ground up.

Notifications You must be signed in to change notification settings

AriYoung00/Rust-RSA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rust RSA

The goal of this project is to re-implement the RSA hashing algorithm in Rust, separately from the existing crate. We also plan to implement secure (ish) pseudo-random number generation, for use with the hashing algorithm. If time so permits, we would also like to create some visualization of the steps the algorithm takes when operating on the data being hashed.

TODO:

  • Implement pseudo-random number generation using linear congruential method (recursively)
    • Check randomness using frequency test
    • Check randomness using chi squared test?
    • Bitmap visualization of random numbers? (as seen here)
  • Implement prime number generation
    • Using Sieve of Eratosthenes
    • Using Sieve of Atkin (wikipedia, geeksforgeeks)
    • Look at number field sieves?
    • Update: Look at methods specific to cryptography here
  • Implement RSA Encryption algorithm
    • Using our RNG
    • using system RNG (e.g. /dev/urandom)
    • Using Rust rand crate
  • Test RSA Implementation
    • Compare performance (as in speed) with Rust rsa crate
    • Test security of implementation using NIST RSA2VS? (from FIPS 186-4)
  • Make GUI?
  • Make CLI interface ❗
  • File IO stuff ❗
    • Read/write keys from/to file ❗
    • Read/write cipher from/to file ❗
    • Encrypt files?

About

Sample implementation of RSA-1024 in Rust, written from the ground up.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages