Coding - Encryption

Learning Resource Type

Classroom Resource

Subject Area

Digital Literacy and Computer Science

Grade(s)

9, 10, 11, 12

Overview

Encryption is used to keep data secret. In its simplest form, a file or data transmission is garbled so that only authorized people with a secret "key" can unlock the original text. If you're using digital devices then you'll be using systems based on encryption all the time: when you use online banking, when you access data through WiFi, when you pay for something with a credit card (either by swiping, inserting or tapping), in fact, nearly every activity will involve layers of encryption. Without encryption, your information would be wide open to the world – anyone could pull up outside a house and read all the data going over your WiFi, and stolen laptops, hard disks, and SIM cards would yield all sorts of information about you – so encryption is critical to make computer systems usable.

An encryption system often consists of two computer programs: one to encrypt some data (referred to as plaintext) into a form that looks like nonsense (the ciphertext), and a second program that can decrypt the ciphertext back into the plaintext form. The encryption and decryption are carried out using some very clever math on the text with a chosen key. You will learn more about these concepts shortly.

Of course, we wouldn't need encryption if we lived in a world where everyone was honest and could be trusted, and it was okay for anyone to have access to all your personal information such as health records, online discussions, bank accounts and so on, and if you knew that no one would interfere with things like aircraft control systems and computer controlled weapons. However, information is worth money, people value their privacy, and safety is important, so encryption has become fundamental to the design of computer systems. Even breaking the security on a traffic light system could be used to personal advantage.

Digital Literacy and Computer Science (2018) Grade(s): 09-12

DLCS18.HS.1

Decompose problems into component parts, extract key information, and develop descriptive models to understand the levels of abstractions in complex systems.

UP:DLCS18.HS.1

Vocabulary

  • decompose

Knowledge

Students know:
  • complex problems may be more easily processed when broken into simpler problems.
  • that it is important to highlight key details of a problem.
  • descriptive models can help outline the procedures to solve more complex problems.

Skills

Students are able to:
  • solve a complex problem by decomposing the problem into smaller, simpler problems.
  • extract key details needed in the problem
  • solving process.
  • develop descriptive models to convey the levels of abstraction in complex systems.

Understanding

Students understand that:
  • complex problems may be easier to solve if they are broken into smaller problems first.
  • it is important to identify key details in the problem.
Digital Literacy and Computer Science (2018) Grade(s): 09-12

DLCS18.HS.13

Compare various security measures of a computer system.

UP:DLCS18.HS.13

Vocabulary

Cyber security, computer systems

Knowledge

Students know:
  • how to identify security measures of a computing system.
  • how to evaluate usability, security, portability, or scalability of the security measures of a computing system.

Skills

Students are able to:
  • identify security measures of a computing system.
  • evaluate usability, security, portability, or scalability of the security measures of a computing system.

Understanding

Students understand that:
  • Usability, security, portability, or scalability are important features of computer security measures.

CR Resource Type

Lesson/Unit Plan

Resource Provider

CS Field Guide

License Type

Attribution Non-Commercial Share Alike
ALSDE LOGO