3.3 CRIBBING USING ISOMORPHS

Two r-grams u = (u0, u1, …, ur − 1) and v = (v0, v1, …, vr − 1) are isomorphs of one another: uv if they satisfy ui = uj if and only if vi = vj for 0 ≤ i, j < r. For example, xyzanya and science are isomorphs of one another.

Cribbing can be used to analyze monoalphabetic ciphertext y by searching for isomorphs of a plaintext crib in the ciphertext. If the plaintext r-gram (v0, v1, …, vr−1) has been enciphered to the ciphertext (u0, u1, …, ur − 1), the isomorph provides parts of the substitution θ. By piecing together several cribs and their isomorphs, most of the ciphertext might be read.

Example 3.1

cipherEx3.1 was monoalphabetically enciphered according to the rules:

  • All characters (in the plaintext) other than uppercase letters have been deleted;
  • The 399 letters in cipherEx3.1, the ciphertext file is written in rows of 50 letters in blocks of 5 separated by a blank space.

The subject of the plaintext is the early paper of Needham–Schroeder on authentication, to be described in Chapter 17.

___________________________________________________________ cipherEx3.1 ___________________________________________________________ qxzit hzoeq zoghq hrrou ozqka ouhqz xstav twazt saroe zoghq snrty ohtaq xzith zoeqz oghqa qfsge taawn vioei tqeig yzvge gjjxh oeqzo hufqs zotac tsoyo tazit orthz ozngy zitgz itsoj fkoeo zohqx zithz oeqzo ghgyq jtaaq utjta aysgj zitat hrtsz gzits tetoc tsoaa gjtoh ygsjq zoghq xziqf fthrt rzggs ohekx rtrvo ziohz itjta aqutt hqwko ...

Get Computer Security and Cryptography now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.