Send More Info
Apply Now
Classroom Login
Call Now
Call Now 855-300-1469

CYB 5678 Cryptography and Information Hiding


Week #1

Module

Your first week of class begins with an outline of the course goals, terms, and scope.

After completing this lesson, you should be able to:

  • Recite the goals of this class
  • Outline basic introduction of terms and scope
  • Define one Time Pad and Vernam (XOR)
  • Define Feistel, DES, and AES
  • Explain RSA, Lehman test for prime numbers

Lecture

View the lecture: Introduction to Cryptography and Information Hiding – A brief introduction to the goals and expectations of the course.

Lecture

View Part 2 of the lecture: Introduction to Cryptography and Information Hiding – A brief introduction to the goals and expectations of the course.

Lecture

View the lecture: Encryption – Start your information hiding with encryption with One Time Pad, Vernam, Feistel, and more.

Lecture

View Part 2 of the lecture: Encryption – Start your information hiding with encryption with One Time Pad, Vernam, Feistel, and more.

Week #2

Module

This week's agenda will cover error correcting codes, including finding bad bit index with parity on bit groups (e.g., bit position) and compression.

After completing this lesson, you should be able to:

  • Explain Hamming Distance
  • Build large codes 
  • Explain steganography with codes
  • Perform Huffman encoding
  • Recognize dictionary-based compression (idea of Lempel-Ziv)
  • Perform run-length compression
  • Discuss the ideas behind GZIP and GZSteg

Lecture

View the lecture: Error Correction – Error correcting codes will utilize Hamming Distance and look at building large codes as well as stenography with codes.

Note that this module is 23 minutes long.

Lecture

View the lecture: Compression – A lesson on why, how, and where to use compression.

Note that this lecture is 30 minutes long.

Week #3

Module

Your lesson this week will outline the .gif and .jpg file format structures.

After completing this lesson, you should be able to:

  • Explain .gif file format, color palettes, tables, descriptors, animations, extensions
  • Define LZW compression
  • Explain .jpg file format, compression methods, quantization, encoding
  • Identify .jpg markers

Lecture

View the lecture: .gif Format – A detailed explanation of the components, uses, colors of .gif files.

Lecture

View Part 2 of the lecture: .gif Format – A detailed explanation of the components, uses, colors of .gif files.

Lecture

View the lecture: .jpg Format – Discussion, application, and examples of .jpg files and their markers.

Note that this lecture is 30 minutes in length.

Week #4

Module

Sync with trees and meet the .png file in this week's lesson.

After completing this lesson, you should be able to: 

  • Identify .png file structure
  • Recognize the main .png file chunks, LZ77 Compression
  • Identify self-synchronizing codes to enable decoding after cropping, and from radio signals
  • Stop prefix inversion and solution with trees of height 2n

Lecture

View the lecture: The .png Format – A study of .png file format's layout and chunks.

Lecture

View the lecture: Synchronization – Get in sync with Huffman Trees!

Week #5

Module

This lesson will outline how to hide information in picture and sound files using various techniques, such as BattleSteg and Hide and Seek.

After completing this lesson, you should be able to:

  • Hide information in .gif, .jpg, and .png
  • Search for the best places to hide data: BattleSteg, inverse JPEG, or Hide and Seek
  • Recognize EzStego for preparing a .gif pallette
  • Hide information in .wav sound files
  • Hide information on a disk
  • Hide information with random walk
  • Break a channel into n parts
  • Recite statistical attacks on steganography with .jpg
  • Identify resistant solutions with: F4, F5

Lecture

View the lecture: Life in the Noise – How to hide information in digital images.

Lecture

View Part 2 of the lecture: Life in the Noise – How to hide information in digital images.

Week #6

Module

This week is filled with spreading out information, jamming, randomness, and more, including Fourier Transforms, wavelets, and hiding of information.

After completing this lesson, you should be able to:

  • Hide information in block averages rather than in individual samples
  • Add randomness to weights in a block to thwart attacks
  • Use blocks that are not contiguous
  • Hide information in block comparison
  • Perform perturbed quantization (use samples close to 128), with OTP
  • Use the Fast Fourier Transform, DCT
  • Use most significant FFT/DCT components
  • Use watermarking DCT components (quantized to represent data)
  • Use wavelets for compression and data hiding

Lecture

View the lecture: Spreading the Information – This lecture is filled with information; hiding, randomness, Quantization, and Fourier Transforms are just the start of this unit.

Lecture

View Part 2 of the lecture: Spreading the Information – This lecture is filled with information; hiding, randomness, Quantization, and Fourier Transforms are just the start of this unit.

Week #7

Module

Discover watermarking techniques and how to identify attacks this week.

After completing this lesson, you should be able to:

  • Identify taxonomy for properties of watermarking techniques
  • Perform watermarking by quantization of important DCT coefficients
  • Discuss weaknesses of attacks by rotation and translation
  • Average watermarks
  • Identify attacks with insertion of rows, columns
  • Perform the Canonical Order of averaging
  • Detect "Birthday Marks"
  • Detect attacks

Lecture

View the lecture: Watermarks – Professor Silaghi gives you directions on basic watermarking, the weaknesses of watermarking, how to read watermarks, and how to retrieve watermarks. 

Week #8

Module

Congratulations on making it to the final week! This final module is content rich in hiding techniques, such as using gaps in data and securing information.

After completing this lesson, you should be able to:

  • Hide information in public databases
  • Secure hashes, passwords, and noise
  • Hide information in the gaps of data structures
  • Use XML and microformats

Lecture

View the lecture: Translucent Databases – What are translucent databases and what are their functions?

Lecture

View the lecture: Hiding in Plain Sight – Dr. Silaghi looks at the hiding of information in gaps as opposed to in the data.