Description
Quiz 5 and Discussion 5
This is a timed Quiz.
Do not start it before you have studied module 5 topics and are ready to complete the quiz.
User generated content is uploaded by users for the purposes of learning and should be used following Studypool's honor code & terms of service.
Explanation & Answer
Review
Review
Anonymous
Really helpful material, saved me a great deal of time.
Studypool
4.7
Trustpilot
4.5
Sitejabber
4.4
24/7 Homework Help
Stuck on a homework question? Our verified tutors can answer all questions, from basic math to advanced rocket science!
Most Popular Content
2 pages
The Federal Trade Commission.
The Federal Trade Commission (FTC) requires that organizations should have a written identity theft prevention program tha ...
The Federal Trade Commission.
The Federal Trade Commission (FTC) requires that organizations should have a written identity theft prevention program that is designed to red flags ...
26 pages
Business Plan
The undersigned reader acknowledges that any information provided by _________________________ in this business plan, othe ...
Business Plan
The undersigned reader acknowledges that any information provided by _________________________ in this business plan, other than information that is ...
Exercise 5
Assignment: Exercise 5Windows App: Modified Playfair CipherAssignmentThe objectives of this lab assignment are as follows: ...
Exercise 5
Assignment: Exercise 5Windows App: Modified Playfair CipherAssignmentThe objectives of this lab assignment are as follows:Create a fully functioning desktop applicationConvert plain text to encrypted text using a modified version of the Playfair CipherSkills RequiredTo properly complete this assignment, you will need to apply the following skills:Construct Windows desktop GUI applicationWork with strings as arrays of charactersWork with 2D arraysImplement logic in methodsImplement nested loops (this is a must when working with 2D arrays)Supplementary InformationUnderstanding the Playfair Cipher:You might want to take a look at the following websites to gain a better understanding of this cipher:Wikipedia ArticleRumkin.comPlease note, however, that what you read at the above sites will be the rules for the cipher as it exists, not as we are going to implement it in this assignment. We are going to modify the "rules" of the cipher, making our work a little easier.Understanding 2D-Arrays:Dotnetperls.com (make sure to understand how to define a 2D array with "no initializer." You will need to create the array as an empty 5x5 matrix and then fill it in.)ICT.socialYoutube--Working with 2D arrays and nested loopsAssignment User StoryAs a user, I want a new Windows application that is capable of performing encryption and decryption using a modified Playfair Cipher.
Assignment Requirements"For two thousand years, codemakers have fought to preserve secrets while codebreakers have tried their best to reveal them." - taken from The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography by Simon Singh.The idea for this problem comes from this book. You will encrypt and decrypt some messages using a simplified version of code in the book. The convention in cryptography is to write the plain text in lower case letters and the encrypted text in upper case letters. We will follow this convention for this problem. We will only encrypt/decrypt letters. Any other characters including numbers and punctuation will be left as is (i.e. 1 2 3 . , - etc).From the user, you need only two pieces of information:A keyword (no spaces, no non-letter characters, no punctuation).Text that you wish either to encrypt or decrypt.The Playfair CipherThe Playfair Cipher is a substitution cipher. It is a little more complex than what we are going to attempt, but the lesson here isn't about recreating a cipher that was developed in the mid-19th century. This is all about arrays (both single and 2-dimensional) and treating strings of text as arrays of char characters.The original Playfair uses a digraph substitution method. This means that it encrypts pairs of letters rather than single letters used by simpler substitution methods. Ours will be more like a simple substitution method.The Playfair cipher is not capable of encrypting numbers or punctuation—only alphabetic letters. Therefore, this typically was used for important but not critical information or to relay information about events that were immanent knowing that it would take opposing forces at least a couple of hours to crack the code if they could at all.The Playfair MatrixThe Playfair cipher uses a 5x5 table or matrix into which 25 of the 26 letters of the alphabet are loaded. This means that one letter will have to represent two letters in the alphabet. For example, i and j can be combined as the letter i.The order in which the letters are loaded into the matrix is determined by a keyword that must be known to the sender and the receiver of the message. The non-duplicating letters of the keyword are loaded into the matrix first, from left-to-right, starting at the top row. Then all the remaining unused letters of the alphabet are loaded into the matrix in their normal order. This means that you must drop duplicate letters.The Wikipedia article on the Playfair Cipher shows the matrix with the keyword PLAYFAIR EXAMPLE. This is a long key, but it doesn't matter because we need to get all the letters of the alphabet into the matrix anyway. We must drop the duplicate letters in this keyword and eliminate the space between the two words. Hence, our matrix would look as shown here. If, however, the keyword is WINTER, then the matrix should be loaded as shown to the left.In one further example, if our keyword is FERRET, then the matrix should be loaded as shown to the right. Notice that we drop the duplicate letters R and E, resulting in the first four letters of our keyword being FERT. Then, the remainder of the alphabet is loaded into the matrix ensuring we don't duplicate any letters.Note: While my images show the letters I and J joined together, we basically change the letter J to I when handling our encryption.Encrypting a PhraseNow that we have created the matrix we can both encrypt and decrypt a string of text/phrase. The way we are constructing our matrix is identical with the mechanics of the Playfair Cipher. What we are changing for our assignment is the way a string is encrypted. Here, the rules in the actual cipher are a little more complex than in our assignment.Let's suppose that we wish to encrypt the following phrase: we attack at zero six hundred hours.We move through this phrase one letter/character at a time. First, we start with the letter w and note where in the matrix this letter is found. In this case, using the previous matrix example containing the keyword FERRET, we note the first letter of our phrase is found in row 4 and column 1 [4, 1]. We reverse these values such that we have [1, 4] and the letter at that location is H. Hence, we change the letter w to the letter H.Continuing in such fashion our phrase " we attack at zero six hundred hours. " is translated to:HB VOOVCD VO ZBIT SRN WYXKIBK WTYIS.Additional Technical RulesThe letter j must be treated as though it were the letter i.Any character that cannot be found in the matrix, such as punctuation and numeric values, will simply be passed into the encrypted string unchanged.Following rule #2 above, spaces will be maintained from the original phrase to the encrypted string. In the traditional Playfair Cipher, spaces, punctuation, and numbers would be skipped (dropped from the message).
Technical/Grading RequirementsYou must ensure that the application you submit meets all technical/grading requirements. Your grade will be based on how well your application follows the application requirements plus the following:A Windows Forms (desktop) application will be developed.Both the keyword and phrase text boxes will be validated to ensure they are not empty.In addition to the button to perform the translation you will also have a button to clear the text from the textbox controls and a separate button to end the application.Internally, the matrix must be represented as a 2-Dimensional array in C#.You must break your code into meaningful methods each that performs only one function. For example, you might have a method that loads the matrix with its letters, a separate method that iterates through the phrase, and another to which is passed a letter and returns to the previous method the translated letter. These are only examples, and your implementation will depend on how you decide to tackle this problem.As a final note to the above requirements, because this is a Windows desktop application you must submit a zip of the entire project folder for grading purposes. A desktop application contains multiple files beyond just the code file that must be kept together.How the application looks and how it presents its information to the user is up to you. But it must meet the minimum requirements noted above.Final ThoughtsThis entire exercise is intended to be an exercise in arrays (both single and 2-Dimensional), as well as in handling strings and individual char letters.In addition, we want to begin to think about best programming practices including the use of methods and adherence to two additional principles:DRY: Don't Repeat Yourself.Single Responsibility Pattern.Certainly, get your code working, and then work to refactor it to observe the above two principles.The first principle means that you don't want duplicated code; this is the basis of the DRY principle. If you find yourself repeating the same or very similar code in two or more places in your application, then this might be code that belongs in one or more methods.With respect to your methods, you want to observe the second principle. This actually is a pattern and is one of the bedrocks of object-oriented programming. Any method should have only one reason for change. This generally is interpreted as meaning that any method should have only one purpose. While this isn't technically accurate we aren't at the place in the semester where we can adequately explain what "reason for change" means so we will stick to this pattern meaning "single purpose."Example OutputThe example output provided below is simply an example. You do not need to format your output to look like this example. You simply need to ensure that you have met the technical requirements for this application.Following is example output for this application:In this example, we have taken the output text from above and are using it as the input text demonstrating that the same application and methods can encrypt as well as decrypt messages:
IT 210 Southern New Hampshire Final Project Case Scenario
For guidance on completing the decision matrix, refer to these learning resources:
Decision Matrix: What It Is and Ho ...
IT 210 Southern New Hampshire Final Project Case Scenario
For guidance on completing the decision matrix, refer to these learning resources:
Decision Matrix: What It Is and How to Use It: This article defines the decision matrix and discusses how leaders evaluate and prioritize all of their
options when considering solutions to a difficult task.
Decision Matrix Analysis: This article explains how to use a decision matrix analysis, a useful technique for making a choice when many factors must be
balanced. Captioned version of this resource can be found here.
Decision Matrix Example: Use this resource to view an example of a completed decision matrix.
Prompt: Remember that you have immersed yourself in the role of an IT professional. Imagine that you work for the small brick-and-mortar business described
in the final project case scenario. The owner of your business wants to focus on generating new revenue through e-commerce, but she knows that this change in
operations requires the company to integrate new technology. To gain an understanding of what the business might need for technology, she has asked you to
create a business systems analysis. In this part of your drafted analysis, you will focus on solutions and recommendations based on your research for your first
milestone.
Specifically, the following critical elements must be addressed:
IV. Technology Solutions: In this section, you will discuss how each of the two technologies meets the technology requirements that you identified in
section II. Use your decision matrix to guide your responses.
A. Technology One: Explain how well this technology meets the technology requirements of your business. Be sure to address which technology
requirements the technology meets, and where there are gaps.
B. Technology Two: Explain how well this technology meets the technology requirements of your business. Be sure to address which technology
requirements the technology meets, and where there are gaps.
V. Recommendations: In this section, you will recommend the technology solution that you believe is most appropriate for your business based on how
well each technology meets your business’s technology requirements.
A. Recommend a technology solution for your business, and defend why that solution is appropriate. You could recommend only one technology,
or you could recommend any combination of the two that you investigated.
B. Explain the overall benefit of your recommended technology solution to your business. Consider the following:
i. How will it enhance efficiency?
ii. How will it position your business for future growth as you move online?
Lastly, submit the decision matrix that you used for your research.
Similar Content
Central Georgia Technical College Programming Worksheet
Write a program that asks the user to guess the next roll of a six sided die. Each guess costs $ 1. If they guess correctl...
Python Question
...
MVC Model Command Line Interface C++ Program Project
In this assignment, you will be creating a Command Line Interface for your Course Catalog. You must use the MVC model to d...
Linear Regression Functions Using Two Models Python Coding Project
We have a few data files each of them having a set of
values for two variables (say x & y), one pair per ...
OOPDA Programming Interface Lab Report
import java.io.*;
public class SerialDemo
{
public static void main(String args[]) throws Exception
{
File f1 = new File("...
SEU E Portal Devolpment Worksheet
College of Computing and Informatics
E-Portals Development
IT-405
Assignment 2
Deadline: Sunday 14/11/2021 @ 23:59
[Tota...
Linux Os Memo 2 .edited
In most cases where there is a shift of using one system to another, there are fears of whether the new system would work ...
New Doc 2019 03 01 22.14.00
...
Pareto Principle
The Pareto principle also referred to as the 80/20 rule follows that 20 percent of activities usually accounts for 80 perc...
Related Tags
Book Guides
The Silent Patient
by Alex Michaelides
Fahrenheit 451
by Ray Bradbury
The Life-Changing Magic of Tidying Up
by Marie Kondo
12 Rules for Life
by Jordan Peterson
The Kite Runner
by Khaled Hosseini
Good Kids Bad City
by Kyle Swenson
What Happened
by Hillary Clinton
Orphan Train
by Christina Baker Kline
Get 24/7
Homework help
Our tutors provide high quality explanations & answers.
Post question
Most Popular Content
2 pages
The Federal Trade Commission.
The Federal Trade Commission (FTC) requires that organizations should have a written identity theft prevention program tha ...
The Federal Trade Commission.
The Federal Trade Commission (FTC) requires that organizations should have a written identity theft prevention program that is designed to red flags ...
26 pages
Business Plan
The undersigned reader acknowledges that any information provided by _________________________ in this business plan, othe ...
Business Plan
The undersigned reader acknowledges that any information provided by _________________________ in this business plan, other than information that is ...
Exercise 5
Assignment: Exercise 5Windows App: Modified Playfair CipherAssignmentThe objectives of this lab assignment are as follows: ...
Exercise 5
Assignment: Exercise 5Windows App: Modified Playfair CipherAssignmentThe objectives of this lab assignment are as follows:Create a fully functioning desktop applicationConvert plain text to encrypted text using a modified version of the Playfair CipherSkills RequiredTo properly complete this assignment, you will need to apply the following skills:Construct Windows desktop GUI applicationWork with strings as arrays of charactersWork with 2D arraysImplement logic in methodsImplement nested loops (this is a must when working with 2D arrays)Supplementary InformationUnderstanding the Playfair Cipher:You might want to take a look at the following websites to gain a better understanding of this cipher:Wikipedia ArticleRumkin.comPlease note, however, that what you read at the above sites will be the rules for the cipher as it exists, not as we are going to implement it in this assignment. We are going to modify the "rules" of the cipher, making our work a little easier.Understanding 2D-Arrays:Dotnetperls.com (make sure to understand how to define a 2D array with "no initializer." You will need to create the array as an empty 5x5 matrix and then fill it in.)ICT.socialYoutube--Working with 2D arrays and nested loopsAssignment User StoryAs a user, I want a new Windows application that is capable of performing encryption and decryption using a modified Playfair Cipher.
Assignment Requirements"For two thousand years, codemakers have fought to preserve secrets while codebreakers have tried their best to reveal them." - taken from The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography by Simon Singh.The idea for this problem comes from this book. You will encrypt and decrypt some messages using a simplified version of code in the book. The convention in cryptography is to write the plain text in lower case letters and the encrypted text in upper case letters. We will follow this convention for this problem. We will only encrypt/decrypt letters. Any other characters including numbers and punctuation will be left as is (i.e. 1 2 3 . , - etc).From the user, you need only two pieces of information:A keyword (no spaces, no non-letter characters, no punctuation).Text that you wish either to encrypt or decrypt.The Playfair CipherThe Playfair Cipher is a substitution cipher. It is a little more complex than what we are going to attempt, but the lesson here isn't about recreating a cipher that was developed in the mid-19th century. This is all about arrays (both single and 2-dimensional) and treating strings of text as arrays of char characters.The original Playfair uses a digraph substitution method. This means that it encrypts pairs of letters rather than single letters used by simpler substitution methods. Ours will be more like a simple substitution method.The Playfair cipher is not capable of encrypting numbers or punctuation—only alphabetic letters. Therefore, this typically was used for important but not critical information or to relay information about events that were immanent knowing that it would take opposing forces at least a couple of hours to crack the code if they could at all.The Playfair MatrixThe Playfair cipher uses a 5x5 table or matrix into which 25 of the 26 letters of the alphabet are loaded. This means that one letter will have to represent two letters in the alphabet. For example, i and j can be combined as the letter i.The order in which the letters are loaded into the matrix is determined by a keyword that must be known to the sender and the receiver of the message. The non-duplicating letters of the keyword are loaded into the matrix first, from left-to-right, starting at the top row. Then all the remaining unused letters of the alphabet are loaded into the matrix in their normal order. This means that you must drop duplicate letters.The Wikipedia article on the Playfair Cipher shows the matrix with the keyword PLAYFAIR EXAMPLE. This is a long key, but it doesn't matter because we need to get all the letters of the alphabet into the matrix anyway. We must drop the duplicate letters in this keyword and eliminate the space between the two words. Hence, our matrix would look as shown here. If, however, the keyword is WINTER, then the matrix should be loaded as shown to the left.In one further example, if our keyword is FERRET, then the matrix should be loaded as shown to the right. Notice that we drop the duplicate letters R and E, resulting in the first four letters of our keyword being FERT. Then, the remainder of the alphabet is loaded into the matrix ensuring we don't duplicate any letters.Note: While my images show the letters I and J joined together, we basically change the letter J to I when handling our encryption.Encrypting a PhraseNow that we have created the matrix we can both encrypt and decrypt a string of text/phrase. The way we are constructing our matrix is identical with the mechanics of the Playfair Cipher. What we are changing for our assignment is the way a string is encrypted. Here, the rules in the actual cipher are a little more complex than in our assignment.Let's suppose that we wish to encrypt the following phrase: we attack at zero six hundred hours.We move through this phrase one letter/character at a time. First, we start with the letter w and note where in the matrix this letter is found. In this case, using the previous matrix example containing the keyword FERRET, we note the first letter of our phrase is found in row 4 and column 1 [4, 1]. We reverse these values such that we have [1, 4] and the letter at that location is H. Hence, we change the letter w to the letter H.Continuing in such fashion our phrase " we attack at zero six hundred hours. " is translated to:HB VOOVCD VO ZBIT SRN WYXKIBK WTYIS.Additional Technical RulesThe letter j must be treated as though it were the letter i.Any character that cannot be found in the matrix, such as punctuation and numeric values, will simply be passed into the encrypted string unchanged.Following rule #2 above, spaces will be maintained from the original phrase to the encrypted string. In the traditional Playfair Cipher, spaces, punctuation, and numbers would be skipped (dropped from the message).
Technical/Grading RequirementsYou must ensure that the application you submit meets all technical/grading requirements. Your grade will be based on how well your application follows the application requirements plus the following:A Windows Forms (desktop) application will be developed.Both the keyword and phrase text boxes will be validated to ensure they are not empty.In addition to the button to perform the translation you will also have a button to clear the text from the textbox controls and a separate button to end the application.Internally, the matrix must be represented as a 2-Dimensional array in C#.You must break your code into meaningful methods each that performs only one function. For example, you might have a method that loads the matrix with its letters, a separate method that iterates through the phrase, and another to which is passed a letter and returns to the previous method the translated letter. These are only examples, and your implementation will depend on how you decide to tackle this problem.As a final note to the above requirements, because this is a Windows desktop application you must submit a zip of the entire project folder for grading purposes. A desktop application contains multiple files beyond just the code file that must be kept together.How the application looks and how it presents its information to the user is up to you. But it must meet the minimum requirements noted above.Final ThoughtsThis entire exercise is intended to be an exercise in arrays (both single and 2-Dimensional), as well as in handling strings and individual char letters.In addition, we want to begin to think about best programming practices including the use of methods and adherence to two additional principles:DRY: Don't Repeat Yourself.Single Responsibility Pattern.Certainly, get your code working, and then work to refactor it to observe the above two principles.The first principle means that you don't want duplicated code; this is the basis of the DRY principle. If you find yourself repeating the same or very similar code in two or more places in your application, then this might be code that belongs in one or more methods.With respect to your methods, you want to observe the second principle. This actually is a pattern and is one of the bedrocks of object-oriented programming. Any method should have only one reason for change. This generally is interpreted as meaning that any method should have only one purpose. While this isn't technically accurate we aren't at the place in the semester where we can adequately explain what "reason for change" means so we will stick to this pattern meaning "single purpose."Example OutputThe example output provided below is simply an example. You do not need to format your output to look like this example. You simply need to ensure that you have met the technical requirements for this application.Following is example output for this application:In this example, we have taken the output text from above and are using it as the input text demonstrating that the same application and methods can encrypt as well as decrypt messages:
IT 210 Southern New Hampshire Final Project Case Scenario
For guidance on completing the decision matrix, refer to these learning resources:
Decision Matrix: What It Is and Ho ...
IT 210 Southern New Hampshire Final Project Case Scenario
For guidance on completing the decision matrix, refer to these learning resources:
Decision Matrix: What It Is and How to Use It: This article defines the decision matrix and discusses how leaders evaluate and prioritize all of their
options when considering solutions to a difficult task.
Decision Matrix Analysis: This article explains how to use a decision matrix analysis, a useful technique for making a choice when many factors must be
balanced. Captioned version of this resource can be found here.
Decision Matrix Example: Use this resource to view an example of a completed decision matrix.
Prompt: Remember that you have immersed yourself in the role of an IT professional. Imagine that you work for the small brick-and-mortar business described
in the final project case scenario. The owner of your business wants to focus on generating new revenue through e-commerce, but she knows that this change in
operations requires the company to integrate new technology. To gain an understanding of what the business might need for technology, she has asked you to
create a business systems analysis. In this part of your drafted analysis, you will focus on solutions and recommendations based on your research for your first
milestone.
Specifically, the following critical elements must be addressed:
IV. Technology Solutions: In this section, you will discuss how each of the two technologies meets the technology requirements that you identified in
section II. Use your decision matrix to guide your responses.
A. Technology One: Explain how well this technology meets the technology requirements of your business. Be sure to address which technology
requirements the technology meets, and where there are gaps.
B. Technology Two: Explain how well this technology meets the technology requirements of your business. Be sure to address which technology
requirements the technology meets, and where there are gaps.
V. Recommendations: In this section, you will recommend the technology solution that you believe is most appropriate for your business based on how
well each technology meets your business’s technology requirements.
A. Recommend a technology solution for your business, and defend why that solution is appropriate. You could recommend only one technology,
or you could recommend any combination of the two that you investigated.
B. Explain the overall benefit of your recommended technology solution to your business. Consider the following:
i. How will it enhance efficiency?
ii. How will it position your business for future growth as you move online?
Lastly, submit the decision matrix that you used for your research.
Earn money selling
your Study Documents