OpenCyber Academy
Rapid course · Lesson 18 · English
Course code: OCA-018Lesson 18: OCA-018-A018

Equality misses a near name

Open, free learning for anyone who wants to protect people and technology. No account is required to read this text or its worked answers.

Lesson map

Lesson 18. Map, example, EX064.

flowchart TD
  E["d in the set of valid values"] --> Q{"Is the string exactly a member?"}
  Q -->|Yes| H["A hit"]
  Q -->|No| N["Not a hit"]
  N --> L["A near name is not in this mail list"]

The test is equality. This fixture does not contain a near-name row to demonstrate the miss.

Logical drawing

test
  exact membership
in this mail list
  news.example, a different name
  no one-character variant
not in the file
  a similarity score

Learning outcomes

After this chapter, you should be able to:

  1. Name the test the hit line uses.
  2. Say what this mail list actually uses as a non-match.
  3. Refuse a variant the fixture does not contain.

18.1 Exact means the same characters. A lookalike would miss, and this list has none.

The hit test is d in a set of the valid strings. Two strings match only when they are the same sequence of characters. news.example fails because it is a different sequence, not because it is a sneaky variant of donate-elmfield.example. The chapter on limits already says exact matching misses lookalikes. That sentence is a limit of the method. This fixture does not include a lookalike row, so the print cannot be quoted as an example of one. Naming a variant the file never stored would add evidence the run did not produce.

There is no similarity function, no edit-distance, and no "close enough" threshold. A one-character change in a real message would miss for that reason. Sam's notes can say the limit exists. They cannot cite a variant this run did not see. Watching for lookalikes is a separate human task, outside the equality test, and this chapter does not turn that task into a scan of live domains.

vol-12 remains the demonstration of a clean miss that the file does contain. Using it as a stand-in for a lookalike would blur two different failures: a wrong name, and a near name. Only the wrong name is in the list.

Lesson table; scroll horizontally to read all columns →

Situation In this fixture?
Exact member Yes, two rows
Different name, news.example Yes, and it misses
A one-character lookalike No row
A similarity score No function

18.2 Worked example

Lesson table; scroll horizontally to read all columns →

Offered example In the file? Decision
"news.example misses by equality." Yes Keep
"A lookalike would also miss, and none is listed." The limit, without a fake row Keep
"The lab caught a one-character variant." Not a stored value Refuse
"The script scores closeness." No such call Refuse

Synthetic case. The miss in the fixture is news.example.

Errors and limits

Do not manufacture a lookalike so the limit has a trophy.

Apply

  • EX064 — Equality. What non-match does this mail list actually contain, and may a note add a lookalike domain the file never stored?
    Show marking criteria
    Rubric: 3 = news.example is the stored non-match; the test is exact membership; a lookalike would miss but this list has no such row; do not invent one;; 2 = the stored miss is news.example and no variant is added;; 1 = one domain;; 0 = none.
Worked answers

EX064. news.example is the stored non-match. The test is exact membership. A lookalike would miss, but this list has no such row. Do not invent one.