Week 10 · lesson

Encoding Is Not Encryption

A string can look unreadable and still provide no secrecy at all.

That is why cybersecurity students need to separate three different operations:

  • encoding changes representation
  • encryption protects data using a key or cryptographic process
  • hashing produces a one-way digest for comparison or integrity-related uses

This week focuses on encoding.

Concept flow

Encoding, encryption, and hiding data solve different problems

The same bytes can be represented, protected with a key, or concealed inside another artifact. Those are different mechanisms and should not be confused.

  1. DATAthe original information
    may be
  2. ENCODEDrepresented in another format for storage or transmission
    or
  3. ENCRYPTEDtransformed with a key to protect confidentiality
    or
  4. HIDDENconcealed within another carrier using steganography
    analyze with
  5. EVIDENCEformat, key assumptions, metadata, and extracted content

The visual is intentionally comparative. Encoding, encryption, hashing, and steganography may all transform what a student sees, but they do not provide the same security property or use the same mechanism.

Text needs a representation

Computers need a way to map characters to numeric values.

One familiar example is ASCII.

For example, the character A can be represented by decimal 65, which can also be written as:

Binary: 01000001
Hex:    41

The character did not become secret. It gained a machine-readable representation.

Decode the byte sequence

Return to the sequence from Lesson 2:

52 4F 42 4F 54 4E 49 58

Using a teacher-provided ASCII/UTF-8 reference or approved decoding tool, interpret each byte as text.

The result is:

ROBOTNIX

The important point is the path:

hex representation → byte values → text encoding → readable characters

Base64 looks secret but usually is not

Base64 is an encoding commonly used to represent binary data using text characters.

A synthetic example:

Uk9CT1ROSVg=

Decoding it produces:

ROBOTNIX

No secret key was required.

Therefore Base64 by itself should not be treated as encryption.

Use the real CyberChef workspace

For this lesson, use the official CyberChef web application, not a recreated classroom interface. The link below opens CyberChef with the From Base64 operation selected.

Open CyberChef — From Base64

When CyberChef opens, locate four parts of the real interface before changing anything:

  1. Operations — where tools such as From Base64, From Hex, and To Hex are selected.
  2. Recipe — the ordered transformation steps CyberChef will apply.
  3. Input — the teacher-provided data you are analyzing.
  4. Output — the result after the recipe is applied.

Paste only this synthetic classroom string into Input:

Uk9CT1ROSVg=

With From Base64 in the Recipe, the Output should read:

ROBOTNIX

Do not paste passwords, tokens, student records, private messages, or unknown real-world artifacts into the classroom exercise. CyberChef is the real tool; the dataset remains deliberately synthetic.

Why encoding is useful

Encoding solves compatibility and representation problems.

Examples:

  • represent text using bytes
  • move binary data through text-oriented systems
  • represent bytes as hexadecimal
  • escape characters for structured data

Encoding can be essential without providing confidentiality.

Safe decoding lab

Use only teacher-provided strings.

For each sample, determine the likely representation and convert it to readable form.

Sample A

01010010 01001111 01000010 01001111 01010100

Sample B

43 59 42 45 52

Sample C

U0FGRSBMQUI=

Record:

  • original representation
  • transformation used
  • decoded result
  • whether a secret key was needed
  • whether the operation provides confidentiality

Layered representation challenge

A CTF-style puzzle can use several transformations without using encryption.

Teacher-provided example workflow:

Base64 text → decode → hex bytes → interpret as text

Document every layer.

Do not click unknown links or execute decoded content. Treat decoded output as data unless the lab explicitly says otherwise.

Recognition before transformation

Before decoding, ask what evidence suggests the format.

Possible clues:

  • only 0 and 1 in groups of eight may suggest binary bytes
  • pairs using 0-9 and A-F may suggest hexadecimal
  • Base64 often uses letters, numbers, +, /, and optional = padding

These are clues, not guarantees.

A string can be deliberately designed to resemble another format.

Build the transformation ledger

For every challenge, use:

StepInputRepresentationOperationOutput

The ledger prevents you from losing track of which transformation created which result.

CTF mini-challenge

Your teacher provides three classroom-safe decoding flags.

A flag might look like:

GSC{representation_matters}

For each flag:

  1. identify the outer representation
  2. transform one layer at a time
  3. record each step
  4. stop if the output becomes a URL, command, binary file, or anything outside the lab instructions
  5. explain why the transformation is encoding rather than encryption

Connect back to password storage

Week 2 used hashes.

Compare:

text → Base64 → text again

with:

password → password hash → stored digest

The first is intended to be reversible.

The second is designed for one-way verification.

Later cryptography lessons will add key-based transformations intended to protect confidentiality.

Evidence for Lesson 3

Submit:

  • three-sample decoding table
  • transformation ledger
  • teacher-provided CTF solutions with steps
  • one comparison of encoding, encryption, and hashing

Finish with:

Unreadable does not mean encrypted because ________.

Security analysis gets stronger when you can name the transformation instead of treating every unfamiliar string as hidden data.