This Python script generates a KTV 1400D DRYAD Cipher Sheet, creating 25 rows of unique, randomly positioned letters (A-Y). Each row is prefixed with a header letter, consecutively from A-Z.
The generated Cipher Sheet is saved to a CSV file in the current working directory. The filename is randomly generated using an MD5 timestamp to avoid conflicts when generating multiple sheets.
- Generates 25 rows of unique, randomly positioned A-Y letters.
- Includes headers for each row, consecutively from A-Y.
- Writes the Cipher Sheet to a CSV file with a unique, randomly generated name.
DRYAD Cipher Sheets are utilized for two main purposes: authentication and rapid encryption. As such, they are essential for validating the identity of another individual, confirming the authenticity of a message, and quickly encoding text in situations such as unencrypted radio transmissions, or written messages suspetable to snooping.
Only individuals who share the same Cipher Sheet can authenticate their identities to eachother or encrypt/decrypt a message. This ensures that you are communicating with the authentic party as they have authenticated.
- Generate a Cipher Sheet.
- Share the Cipher Sheet with your party.
- Choose a letter from the left-hand column of the Cipher Sheet.
- Choose another letter from the same row as the selected letter in the left-hand column.
- During authentication, state the two chosen letters (challenge letters).
- The other individual will look at the Cipher Sheet, find the row of the first letter, and within that row, locate the second challenge letter.
- The other individual will then recite the letter directly BENEATH the second challenge letter.
- This response confirms the authenticity of the other individual.
As an example, if one wanted to validate the identity of another who is calling them, using the above screenshot as an example:
- One states: "Authenticate Charlie Golf (CG)"
- Caller replies: " Authenticating Hotel (H)"
Caller replies with the letter directly BENEATH C, G. (Row C, Letter G.)
Messages can be quickly encrypted, letter by letter, or number by number, using a DRYAD Cipher Sheet by refering to the Letters and Number Groups at the top of a DRYAD Cipher Sheet. This method ensures the concealment of sensitive messages, which can only be decrypted by other parties with the same cipher sheet.
- Generate a Cipher Sheet.
- Share the Cipher Sheet with your party.
- Choose a letter from the left-hand column of the Cipher Sheet.
- From the same row as the chosen letter, select another letter.
- These two letters are your ID Letters.
- Identify the letter directly to the RIGHT of your second ID Letter.
- This is your SET Letter.
- Locate the row corresponding to the SET Letter on the Cipher Sheet.
- Encrypt your message by replacing each letter of the plaintext (Clear Text letters) with the corresponding letter from the SET Letter's Row and the top of the Cipher Sheet.
- Communicate the ID Letters and the resulting ciphertext to the other individual.
- The other individual identifies the SET row using the ID Letters and decrypts the message accordingly.
As an example, if one wanted to encrypt and communicate the word "Hey":
They would state: "SET Alpha Papa. Quebec X-Ray Hotel."
- Go to the "Alpha" row.
- Find the "Papa" letter within the "Alpha" row.
- Choose the letter immediately to the RIGHT of "Papa," which is Bravo in this example.
- Refer to the "Bravo" row in your Cipher sheet.
- Decrypt "Quebec" as "Hotel," "X-Ray" as "Echo," and "Hotel" as "Yankee."