0% found this document useful (0 votes)
6 views2 pages

XOR Encryption Using MASM

This document outlines a project for creating a simple XOR encryption and decryption program using MASM in x86 assembly language, due on January 5, 2025. The project involves inputting a plaintext message and a key, then displaying the encrypted and decrypted messages without using stack operations and while employing various addressing modes. Additionally, groups of 2-3 members must submit the code and a video explaining their work, with specific requirements for the video content and duration.

Uploaded by

ahmdthlawy
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views2 pages

XOR Encryption Using MASM

This document outlines a project for creating a simple XOR encryption and decryption program using MASM in x86 assembly language, due on January 5, 2025. The project involves inputting a plaintext message and a key, then displaying the encrypted and decrypted messages without using stack operations and while employing various addressing modes. Additionally, groups of 2-3 members must submit the code and a video explaining their work, with specific requirements for the video content and duration.

Uploaded by

ahmdthlawy
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Task 3

Microcomputer Systems and Assembly language 1301224

Simple XOR Encryption and Decryption Project in MASM

Due to 5 Jan 2025, time: 23:59

The XOR instruction has an interesting property. If an integer A is XORed with B and the resulting
value is XORed with B again, the value produced is A:
((𝑨⨁𝑩) ⨁ 𝑩) = 𝑨
This reversible property of XOR provides an easy way to perform a simple form of data encryption: A
plain text message is transformed into an encrypted string called cipher text by XORing each of its
characters with a character from a third-string called a key. The intended viewer can use the key to
decrypt the cipher text and produce the original plain text.

In this project, we'll create a simple encryption and decryption program using XOR (exclusive OR) in
x86 assembly language using MASM on Microsoft Visual Studio.
This encryption technique you are supposed to input a key consisting of multiple characters. Use this
key to encrypt and decrypt the plaintext by XORing each character of the key against a corresponding
byte in the message. Repeat the key as many times as necessary until all plain text bytes are
translated.
For example, if the key is “ABXmv#7”.
The Plain text is: “This is a plain Text Message”
This is how the key would align with the plain text bytes:

You can get the basic resource by referring to the textbook, chapter 6 section 3.4, which contains the
basic encryption algorithm using a single character.

What Will You Do in This Program?

1- You will input a message from the keyboard


2- Input a Key from the keyboard
3- Display the message after Encryption
4- Display the message after decryption
5- Never use any stack operation
6- Use as much as different addressing modes
7- Comment the lines of your code
8- Work with groups 2-3 maximum
9- After finish
a. Submit the code as .ASM file
b. And create a (single) video recording for your work, explaining how your key works,
the benefits of using certain instructions, highlighting the various addressing modes,
and running and testing the code for various cases.
c. The video should contain all the members speaking, each with a distinct time.
d. Submit the created video recording with no more than 6 minutes.
10- Each group submits a single code and a single video for all members only once (by one
member only.
11- Write the group members' names and IDs at the beginning of your code as a comment.
12- Due to 5 Jan 2025 time 23:59

You might also like