Question
write C or C++ program which is capable of using a public key, a third party public key, and an encrypted session key to create
write C or C++ program which is capable of using a public key, a third party public key, and an encrypted session key to create symmetric-key ciphertext and an asymmetric signature. The plaintext file should include at least the names and Banner IDs of your group members; it may also include any other information as it fit. they are required to use DES mode for the symmetric cipher. The OpenSSL EVP library will be necessary for performing asymmetric (RSA) cryptography. It provides facilities for hashing, signing, encryption, etc. Succinctly, The program must do the following: 1. Take the filenames of the plaintext message, the encrypted session key, the third-party public key, and a private key as command-line parameters. 2. Use the third-party public key to decrypt the session key. 3. Save the plaintext session key to a text file. 4. Use the DES session key to encrypt the plaintext. 5. Use a private key to sign the encrypted message. 6. Save the ciphertext and signature to an output file (or separate output files).
Now, having created encrypted and signed message, it must create another program which is capable of decrypting it and verifying the signature. This program must take a public key, the plaintext session key, the ciphertext file, and the signature file (if it is separate) as parameters. It should decrypt the ciphertext and print the result, as well as state whether or not the signature was determined to be authentic. Again, it should use DES, and use OpenSSL's EVP library to perform RSA and signature validation.
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