Question
The Rivest-Shamir-Adleman (RSA) algorithm is the foundation of cryptographic communications on the Internet. It is an asymmetric public-key algorithm which facilitates two entities communicating without
The Rivest-Shamir-Adleman (RSA) algorithm is the foundation of cryptographic communications on the Internet. It is an asymmetric public-key algorithm which facilitates two entities communicating without first exchanging private keys. Prior to the invention of public- key algorithms, private keys needed to be exchanged either out of band (by physical mail for example) or insecurely online. The basic functionality of RSA algorithm is described below. We use the names Alice and Bob to represent two communicating entities. 1. Alice generates a public key (kpub) and a private key (kpri). The keys are related. The public key can be shared with anyone. The private key must be kept secret. 2. When Alice wishes to receive an encrypted message from Bob, she shares kpub with Bob. 3. Bob encrypts the plain text message P that he wants to send to Alice using an encryption algorithm which results in outputted ciphertext C, such that C=encrypt(P, kpub). 4. Bob transmits ciphertext C to Alice. 5. Alice recovers plaintext P using a decryption algorithm and her private key, such that P=decrypt(C, kpri). For this assignment, you will be writing three programs in C++. These programs will implement the RSA algorithm. Program #1 (called generate.cpp) will create a public and private key. Program #2 (called encrypt.cpp) will take as input a public key and short plaintext program and output cipher text. Program #3 (called decrypt.cpp) will take as input a private key and ciphertext and output plaintext
do not understand this, due today please help asap. need all 3 done
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started