View on GitHub

CyberSecurity

A curriculum for a high school cyber security course.

Steganography

Overview

Students will learn about and engage with steganography techniques and software.

Purpose

Images and other media can be used to hide information “in plain sight”. While the image is visible to anyone on the web, the secret message is only visible to those who know it’s there and how to read it.

Objectives

Students will be able to:

Preparation

Vocabulary

Teaching Guide

Getting Started:

Pixelation - Code.org

Activity:

Manual Steganography Use the pixelation widget at Code.org to make a Favicon.

Create a protocol for your Steganography.

  1. How are the bits modified on the image.

  2. How are the letters embedded in the image?

  3. How do I know when the message is done? Is there a “End of Message” or message length included?

  4. In a 16 x 16 image, what is the maximum message length?

  5. Write your protocol in plain language… how do you deal with the width/height data at the front of your favicon? How many pixels does it take for one letter?

  6. Hide a message in your favicon, post the binary in this file.

Once the image is created, use the least significant bit of each red, green, and blue channel to hide a message.

Activity:

Use several available Steganography tools and compare:

Wrap-up

Discussion:

Assessment Questions

Extended Learning

Read: Blown to Bits - Chapter 3 Ghosts in the Machine

Blog Post:

Programming: Create Steganography in Java using the PictureEdit class or the Picture Lab APCSA

Standards Alignment

License

Cyber Security Curriculum Creative Commons License is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.