Lab 9

This is an individual assignment.

Alright, take your pick of either of the following:


Option 1

Work in Codepen Opens in a new window.

On the page, create two HTML inputs. For the first input, when a user inputs a string, use it to create a keyword cipher.

A keyword cipher maps the letters in the alphabet, and maps them onto a rearranged version of the alphabet. The rearrangement works like this: put the letters from the keyword (without duplication) at the beginning, followed by all remaining letters.

So, for the keyword 'secretcode', the cipher would look like this:

abcdefghijklmnopqrstuvwxyz
secrtodabfghijklmnpquvwzyz

So if you were to encrypt the phrase "the eagle flies at midnight" with this cipher, it would read "qat tsdht ohbtq sq ibrjbdaq".

For the second input, encrypt any letters which the user inputs using the cipher they established through the first input. Output the encrypted string on the page.


Option 2

Write, in plain English, a security plan that describes a website where users have a username, a password, and have their credit card information stored securely.

Include as much detail using what we have learned over the last three weeks about how you would capture, transmit and store this information. Obviously, there are aspects of this that we haven't gone into great detail about. This is just a lab - don't feel like you need to do any outside research for this, just give as much information as you reasonably can based on the last 3 weeks.

This should be about 400-500 words.


Option 3

Choose Your Own Adventure

We talked about some stuff this week that leaves a lot to explore. Pitch me on your own lab work where you explore one of the ideas from the last three weeks. For example, if you want to recreate and document each step from the example of using the web crypto API to hash a password, that could work! I'll ask that you keep your scope small - this is a lab, after all. As such, you are required to get approval from me by the end of our lab time today if you want to choose this option.