RSA-LAB1
RSA-LAB1
INTRODUCTION
This report is based on a laboratory activity performed on communication using public key cryptography
with the RSA cryptosystem. The purpose of these task was to comprehend RSA principles, create pairs of
public and private key, and encipher and decipher messages back and forth between two computers
models, which were designated as PCa and PCb, using RSA key exchange. The exercise was performed
using CrypTool 1 software and a shared folder via a network drive or flash drive to simulate secure file
sharing.
In PCa, I went ahead and set up the folders by creating a PCAB folder that could be used for safe
communication when transferring classified documents.
2. After this, I right clicked the folder, selected Properties and proceeded to click the Sharing tab.
3. If that was not enabled, I enabled sharing option “Just Enable Sharing”.
5. Then I ticked the option for network users to be able to change and file.
On PCb:
1. My teammate (PCb) opened Windows Explorer and mapped the shared folder to a network
drive.
3. Drive Y: was selected, and the folder path \\192.168.1.101\PCAB was entered (IP address
provided by the instructor).
4. PCb was able to access the shared folder (Drive Y:) for file exchange.
1. Opened CrypTool.
3. Selected RSA.
4. Entered my user information (Lisa Rodriguez) and created a short PIN: 7094.
• My public key was displayed, and the private key was securely stored and protected by the PIN.
6. Saved the exported public key file in the shared folder PCAB for my teammate to access.
1. In CrypTool, they created a new text file and typed a secret message:
1. From Crypt/Decrypt → Asymmetric Algorithms → RSA Encryption, they selected my public key.
2. They saved the file as Encrypted_Message_for_Stalon.txt in the shared folder PCAB.
Review Question
I've attempted to decrypt the encrypted message using different public keys-that of my team members-
but unfortunately failed. This failure arises due to the nature of RSA encryption. It asserts that-
• the message encrypted with a particular public key can only be decrypted by that key's matching
private key as decryption.
• For any unrelated public or private key, one lands with gibberish or failure.
This way, one can ensure that only a person having the right private key, which usually the recipient only
has, can decryption.
Here, R.S.A is used to prove the identity of a message sender using this method, that is by my teammate.
The process is:
• My teammate creates a hash of the message (say, "Confidential data for our project") using a hashing
algorithm.
• They encrypt this hash with their private key to obtain a digital signature.
I decrypt the digital signature with the help of my teammate's public key so that the original
message would get yielded from my teammate.
I will generate a new hash using the received message through the same hashing algorithm, and
if that new hash is the same as the decrypted hash from the signature, it will confirm-
Integrity: that the message was not tampered with during transmission.
Authenticity: because only my teammate's private key could have created the valid digital signature that
I was able to decrypt with their public key.
However, the message hashed by the private key of my teammate would enable me to verify his or her
identity by checking the signature against the public key.
This all assures me that my teammate cannot simultaneously deny ever having made the signature, yet
the message stays intact for the duration of the communication.
For example:
If I send a message to my teammate with a digital signature, he/she can check my identity by decrypting
the signature with my public key.
Conclusion
This lab session provided practical exposure to the use of RSA cryptography in secure communication.
Key generation, public/private key pairs, export and import, encryption and decryption were all explored
in an effort to understand possible roles for RSA in the process of confidentiality. Even here, one
discovers the use of digital signatures as an example of how RSA further secures message authenticity
and integrity, which are critical for security in applications such as email encryption and online
transactions.