Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Objectives Creating threads of executions for a multithreaded program Basic operations on threads Creating a subclass of threading .Thread Exercises 1: Implement a simple encryption

Objectives

  • Creating threads of executions for a multithreaded program
  • Basic operations on threads
  • Creating a subclass of threading .Thread

Exercises 1:

Implement a simple encryption algorithm that works as follows

  • The algorithms uses a numerical private key named key
  • Each character in the original text is encrypted as the character resulting from xoring the ASCII code of that character with private_key. For example to encrypt A

enc_char = chr(ord (A) ^ key)

  1. Write a function named ecrypt_file that takes as argument the file name to be encrypted, the name of the output file (where to store the encrypted text) and the encryption key. The function opens the first file, and encrypted the text according to the logtim above and stores the encrypted text in the second file

  1. Write a multithreaded program that attempts to encrypt the contents of 10 different files concurrently using the function ecrypt_file defined in the previous step. you need to create one thread of execution to process each file. Your program asks the user to input the names of the text files to be encrypted

Exercises 2:

For this question, only consider the usual" alphabet composed of characters in [A-Z]. You can assume that all the input values will be valid.

Implement a SimpleCipher class as a subclass of threading.Thread. The SimpleCipher has has at least

  • a data member called private_key
  • a proper constructor
  • a method called ecrypt_file that takes as argument the file name to be encrypted and the name of the output file (where to store the encrypted text) The method opens the first file, and encrypted the text according to the following algorithm
  • Each letter in the original file is replaced by a letter n positions to the right down the alphabet (if you reach the Z continue from the A); for example, if n is 2, then the letter B is replaced by D, and the letter Y is replaced by A, and so on. n is the private_key. Character not in the range [A-Z] are not encrypted
  • Write a multithreaded program that attempts to encrypt the contents of 10 different files concurrently using the SimpleCipher class defined in the previous step. You need to create one thread of execution to process each file. Your program asks the user to input the names of the text files to be encrypted

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Modern Database Management

Authors: Jeff Hoffer, Ramesh Venkataraman, Heikki Topi

13th Edition Global Edition

1292263350, 978-1292263359

More Books

Students also viewed these Databases questions