Cybersecurity

In this class, you will learn about cybersecurity principles and ethics. You will also create a plan to improve your security.

Preparation

First, read pages 117-138 and 147-148 from Blown to Bits. These pages are from Chapter 5: “Secret Bits: How Codes Became Unbreakable,” and describe the history of encryption.

Next, read the article “Securing your digital life, part one: The basics,” which describes easy steps you can take to protect your digital security.

Finally, read the article “Apple sues Israeli spyware group NSO,” which describes powerful hacking tools sold by NSO Group Technologies.

Prepare for our class discussion by making notes about what stood out to you, what you particularly agreed or disagreed with, things you had questions about, etc.

Optional: Consider also reading:

In Class

Activity 1: Cybersecurity Discussion

In class, we will start by discussing the readings.

Activity 2: Caesar Cipher Project

Working with a partner, complete pages 1 to 3 from Unit 4’s Lab 2, “Cybersecurity.” It is important to work with a partner, since you will be exchanging encrypted messages.

If you haven’t already, refactor your code into a “caesar cipher” block. Also, test that your block can shift by any amount, and that it only outputs visible ASCII characters. If your code is working properly, it should give these outputs:

Shifting 'Hello World!' by 0 reports 'Hello World!'
Shifting 'Hello World!' by 1 reports 'Ifmmp Xpsme"'
Shifting 'Hello World!' by 1000 reports '&CJJM 5MPJB]'
Shifting 'Hello World!' by 5 and then by -5 reports 'Hello World!'

Note: As described in the reading, the Caesar cipher and other shift and substitution ciphers are trivial for computers to break. So don’t use your program to hide sensitive information!

Note: When creating real-world systems, you should never try to create your own encryption algorithm or write your own cryptography code. It’s extremely difficult for even experts to write secure cryptography code. Instead, you should rely on frameworks that incorporate security by default, such as PyNaCl for public key encryption, or Django for secure web development.

Submit

Create a plan to improve your digital security. First, read about what goes into a security plan. Next, review the advice from Ars Technica:

Write at least 300 words total, answering the questions shown in the template below. Also, share any thoughts on how this activity could be improved in the future.

You can discuss ideas with others, but all the writing for this assignment should be your own, and your plan should be tailored to your needs. Submit your response as a PDF.

Template

Learning Goals

Students will: